找回密码
 立即注册
查看: 4284|回复: 3

如何快速在wordpress后台中增加一个发布全站公告的功能?

[复制链接]

347

主题

563

回帖

3675

积分

管理员

积分
3675
QQ
发表于 2023-5-18 08:34:20 来自手机 | 显示全部楼层 |阅读模式
您可以使用以下方法来快速在 WordPress 后台增加一个全站公告的功能:
" U; ~# c3 Y" a( J8 i
: M  |' Q3 L6 U2 p1. 在 WordPress 插件库中寻找可用的公告插件,例如 WP Notification Bars、Announcements、SSP Elegant Notification Bar 等。
- G& s/ a9 x3 h; G. Y7 t) X' k
8 _& s1 y6 s1 y2. 安装并激活您选择的插件。您可以在 WordPress 后台的「插件」->「添加新插件」界面中搜索并安装插件,然后在「插件」->「已安装插件」界面中激活它。( N! i, h1 G2 l! j% ?

' [' \/ B$ S: S  t3. 在插件的设置页面中配置您的公告内容和样式。不同插件的设置选项和功能可能会有所不同,但通常都允许您定义公告的文本、链接、颜色、位置等。; y1 G; p" |) J( `, r4 A
6 P$ `! y. g7 [" |2 ~, M
4. 将公告添加到您的网站上。在插件设置页面中完成公告的设置后,您可以通过编辑 WordPress 主题的代码或使用插件提供的方法将公告添加到您的网站中。不同插件可能使用不同的添加方法,具体请查看详细说明或联系插件作者。
0 e" |+ H  O7 Q- k( R8 m- E
; W1 q% N; P) M! l2 U8 e注意,如果您使用的 WordPress 主题已经包含了公告功能,或使用了其他公告插件,可能会导致冲突或功能重复。如果您遇到了这样的问题,请查看主题文档或联系主题作者以获取解决方案。
回复

使用道具 举报

347

主题

563

回帖

3675

积分

管理员

积分
3675
QQ
 楼主| 发表于 2023-5-18 08:34:51 来自手机 | 显示全部楼层
如果是自己开发的话,具体要怎么做?
  n2 g+ j0 t* G5 w  @- u. q
) \1 ~+ v1 T6 v* V; }5 H' A如果您自己开发 WordPress 主题或插件,并且需要在后台中增加一个发布全站公告的功能,可以按照以下步骤操作:
, x- g& h: V+ [3 h* G1 G- J# m/ @; P, \4 c- T/ L8 N' V
1. 创建一个自定义的 WordPress 后台页面。您可以使用 `add_menu_page()` 或 `add_submenu_page()` 函数来创建一个自定义后台页面,例如:# G( ^, ?4 }# P
* n% ?( M( P3 T, l7 o
   ```
  V0 h  Y% Q3 O   add_menu_page(
# w+ d! M0 V1 B- [& ]  q) _  P: n       '全站公告',
8 N) X1 U, j5 h       '全站公告',$ ?+ n4 k6 c( A" W
       'manage_options', //需要的用户权限; d% g1 U. s# G' u4 i5 T
       'site-wide-notice', //后台页面的 slug: \4 ^3 V7 o& G8 m/ x5 P8 E
       'render_site_wide_notice_page', //用于渲染后台页面内容的函数
# V, F  h; l% \; e$ [4 K5 i       'dashicons-megaphone', //用于显示在菜单中的图标
1 \, k' y8 M  d) C: _6 r9 I       30 //菜单项的位置8 k9 t- |6 O. d' k: a# D
   );
& ~* o! }( U/ x# r* r, q" s   ```7 W( `- Y7 ]9 Y& y4 ^/ q
# ]2 E4 D+ P3 T
   在该示例中,我们使用 `add_menu_page()` 函数来创建了一个名为“全站公告”的菜单项,并指定需要的用户权限(`manage_options`),在后台页面的 slug 为 `site-wide-notice`,用于渲染后台页面内容的函数为 `render_site_wide_notice_page`,在菜单中显示的图标为 `dashicons-megaphone`,菜单项的位置为 30。# m5 @' r& i5 Q( N, @

+ i8 a9 G8 u5 F$ S$ P6 C2. 编写用于显示和保存全站公告内容的代码。您可以在自定义后台页面中创建一个表单,让用户输入公告的标题、内容等信息,并将这些信息保存到 WordPress 数据库中的某个表中。例如:0 M. s5 V+ E; x) E# L9 L# A4 ?# e, |! n

. K% N; d1 w0 i; n   ```8 G+ M% R2 {  F
   function render_site_wide_notice_page() {4 K- r2 j5 |, n1 |
      // 渲染后台页面内容) m& `6 L7 j( D; U
      echo '<div class="wrap">
0 r0 S9 ]& \6 o% K( q- I+ C- j6 p* t          <h2>全站公告</h2>
6 p& ^3 o6 o% H: G          <form method="post" action="">
4 `" x3 u3 I- `( c) Q/ r4 Q/ T9 S              <label for="title">公告标题:</label>4 c3 o- |7 _9 `/ n  C
              <input type="text" name="title" value="'.get_option('site_wide_notice_title').'"><br><br>: {" D2 ?) [( ^, Z/ B
              <label for="content">公告内容:</label>: ~- q1 G  v. A( i* u
              <textarea name="content">'.get_option('site_wide_notice_content').'</textarea><br><br>/ ^- f0 k* }9 M8 s( r5 O
              <input type="submit" name="submit" value="保存设置">& P0 M5 ^/ p% F
          </form>
. ]2 M6 R( b$ Y/ k5 p1 S% A      </div>';
: K" L4 Y" W" T3 r, Y: F8 V$ s5 ^" }/ p& q2 _; U7 |) P8 w
      // 处理表单数据2 J; `5 ~6 h# i0 h0 D* a9 o
      if (isset($_POST['submit'])) {
& @# s' C' b5 B) S          update_option('site_wide_notice_title', sanitize_text_field($_POST['title']));6 D+ G( k3 N; x  I
          update_option('site_wide_notice_content', sanitize_text_field($_POST['content']));6 N1 t& i$ {# n% I0 a: f! j, }( ^
      }# T/ r- C, g8 i' Z* V3 D
   }
" y' K( n" A2 K8 f   ```- e3 i. Q0 Z" s/ @

% y2 d( o& N4 C5 Y. U. }7 V/ e) a4 w   在该示例中,我们创建了一个表单,让用户输入公告的标题和内容,并使用 `update_option()` 函数将这些数据保存到名为 `site_wide_notice_title` 和 `site_wide_notice_content` 的 WordPress 配置项中。如果用户点击提交按钮,则将表单数据更新到配置项。3 x5 g0 N4 R" \( J, y

0 w7 g% G/ h/ @6 ^" C; b3. 在 WordPress 主题中显示全站公告。您可以通过在 WordPress 主题的 `header.php` 文件中添加代码,将公告内容显示在网站的顶部或其他位置。例如:
  n" H9 B3 |0 U
, J1 b/ k; L$ |, P   ```
/ W6 M  B( X& y7 [   <?php
/ v, O( t* z. R6 W$ C   $site_wide_notice_title = get_option('site_wide_notice_title');4 f* C$ t2 j4 M& Z8 J* [% e; I
   $site_wide_notice_content = get_option('site_wide_notice_content');$ {# t; H+ T" r# w8 k
   if (!empty($site_wide_notice_title) || !empty($site_wide_notice_content)) {1 F/ H" Z$ D' @7 b
       echo '<div class="site-wide-notice">';
/ A6 z/ k( b" W$ w       if (!empty($site_wide_notice_title)) {0 _% P% p' R& S! s) C
           echo '<h3>'.$site_wide_notice_title.'</h3>';7 z& y. S& c+ ~/ Y  G. _
       }4 o0 [! l% n4 a1 R
       if (!empty($site_wide_notice_content)) {
* {' p! K# m! f) v8 y           echo '<p>'.$site_wide_notice_content.'</p>';' k. F* r4 l7 J. R* t  \
       }
8 K" a) S0 e" ^! O5 m2 s6 i& F       echo '</div>';1 _7 d6 s$ C, {5 p* m  H
   }
2 |5 D1 g7 N8 c/ p% b+ T4 b# U   ?>
4 \/ M7 f5 S0 |& L" _4 x& j# h   ```& t# v4 [& J! P: F9 T

7 E  w: w9 Y7 I% f& c. t   在该示例中,我们检查 WordPress 配置项中名为 `site_wide_notice_title` 和 `site_wide_notice_content` 的值是否为空,如果不为空,则在 `header.php` 文件中添加一个名为 `site-wide-notice` 的容器,将公告标题和内容显示在其中。$ Y) d8 l5 r1 O& m9 \+ Q. e# ~

( |: @$ m1 Q: P1 _& A' E请注意,本示例仅提供了一个框架,具体实现可能会根据您的需求和实际情况有所不同,您需要根据自己的需要进行修改和调整。同时,为了确保安全性,您还会需要对用户输入的数据进行适当的验证和过滤,例如使用 `sanitize_text_field()` 函数来过滤表单数据。
回复

使用道具 举报

347

主题

563

回帖

3675

积分

管理员

积分
3675
QQ
 楼主| 发表于 2023-5-18 09:26:50 来自手机 | 显示全部楼层
那如果需要发布多条公告,并进行管理,要如何实现?, R0 T  o0 ~3 G& T- c! P9 Z1 m6 F
/ i7 x. C; w% o# Y8 A
您可以创建一个自定义的 WordPress文章类型,例如“公告”,并对其进行自定义化,以实现发布多条公告并进行管理的功能。以下是具体步骤:
3 L$ a; w, K. I: Y' a2 t* e+ y6 ]* W
3 Q3 M9 T; |9 x# g& x/ p1. 创建一个自定义的文章类型:在你的主题 `functions.php` 文件中,添加以下代码:
7 P1 d- Y6 N2 D4 [6 `, w6 f+ J7 e% H
```
5 C" b/ c+ I# t/ A) efunction create_custom_post_type() {' I0 t. R' a4 j1 }+ y
    $args = array(5 t, a# U4 c+ S3 `+ J# g' {! n, p
        'labels' => array(
5 M# f/ T! p, ^/ O" Z' k4 V' U            'name' => '公告',1 o5 V# J/ {1 d' p, o/ |1 S
            'singular_name' => '公告'
, a0 J6 y6 h3 G; z8 w        ),9 N( r2 y6 r0 X0 T6 t) X, h9 ~# k
        'public' => true,
( R- R% R  v( u  u5 @2 e$ X0 [        'has_archive' => true,- ]' Y6 u# O' j; A; R1 m; M
        'supports' => array('title', 'editor', 'thumbnail', 'excerpt', 'custom-fields', 'revisions'),
+ n: h3 R" @( |, S        'taxonomies' => array('category', 'post_tag'),+ @. V& N( A! p% x0 ?% ]% y
        'menu_icon' => 'dashicons-megaphone',
' A- q6 C) v" N. f        'menu_position' => 5,
4 @1 A4 p% \0 Q$ T3 {! }        'rewrite' => array('slug' => 'site-wide-notices')) n8 _2 T. d$ a( I
    );
1 s( X7 M6 n7 p, ^1 X7 L# \    register_post_type('site-wide-notices', $args);8 p9 G) c: W$ p# E2 S8 I; x8 E1 r! x
}
  ~) |5 \# u6 ?- r" aadd_action('init', 'create_custom_post_type');
9 _" R2 [5 G0 P```
1 ^9 v9 O3 E1 ?% Z' D: D' n/ B4 m! E( g
在示例中,我们注册了一个名为 "site-wide-notices" 的新的文章类型,并定义了文章类型名称、缩略名、文章类型支持的功能、分类法、管理菜单图标等设置。, ?4 t9 o$ V5 H# }$ A3 p

: m: ?% P: q/ F" U  S( g2. 在你的 WordPress 后台中创建新文章类型“公告”:现在,你就可以在 WordPress 后台中通过导航到“公告”菜单,来添加、编辑或删除公告了。您可以在编辑公告的页面中添加标题、内容、特色图像或其他自定义的元数据字段。( C0 _6 z# B1 B; F5 T5 O

/ ]) o5 E; ]) E+ J. w3. 在主题中显示公告:在您的 WordPress 主题文件中添加以下代码,以在您的网站上显示公告:
3 O  e0 a. c. x% H8 ]; m& [! x  p/ A1 Z' _! p* h4 R6 U4 l9 s- q4 R
```
, n$ Y7 I1 q' t  j0 g. S9 O( j$args = array(! I. p# W% C- k: d( h
    'posts_per_page' => 3, // 显示的公告数量" D) R. b* s: q0 _' w" q7 d
    'post_type' => 'site-wide-notices', // 公告文章类型
9 K; P. Y' S& m; |4 u7 R    'post_status' => 'publish', // 公告状态
7 q- e* Y) @! Y  b7 K    'order' => 'DESC' // 排序方式
- e' `! t* M+ t1 K9 p1 ^9 Y);& h) }# m/ e  \# N* `
+ R/ s4 E- B7 Y5 t! i
$notices = new WP_Query($args);" T' U7 b# `6 P
if ($notices->have_posts()) :7 y' {+ W3 Z! \0 W& k) L  _
    while ($notices->have_posts()) : $notices->the_post(); ?>
% Y% }1 S9 |) g& Q6 q: W        <div class="notice">
" b. P. G2 v1 D9 G: f" s2 h            <h3><?php the_title(); ?></h3>/ H2 O. P3 m; Q5 g! J- u0 A
            <div class="notice-content"><?php the_content(); ?></div>" S; b9 B+ @0 S
        </div>$ j  ^/ ~# P! [
    <?php endwhile;
( b; q0 l7 S+ u# \else :" z: j% O3 k5 _: G8 P: }
    echo "暂无公告";
5 m( s6 x% w0 L8 }endif;3 U4 \/ n. s; h5 g5 [
wp_reset_query();
2 k+ l7 e+ W" K```1 M2 n, R, k% h" |# Z- R) j9 S
8 r- E1 V1 }7 @$ ^$ ~& d
这段代码将使用 WordPress 的 `WP_Query` 类从公告文章类型中获取最新发布的 3 条公告,并在前端页面中循环遍历并显示公告标题和内容等信息。! }2 J1 Q- u4 B3 y$ f
. D1 I( g% Z: X0 x* w  m. t7 F- ?& B
以上便是实现 Wordpress 后台发布多条全站公告的基本步骤。需要注意的是,自定义文章类型可对应多篇文章,具体根据您的需求进行调整。
回复

使用道具 举报

347

主题

563

回帖

3675

积分

管理员

积分
3675
QQ
 楼主| 发表于 2023-5-18 09:27:55 来自手机 | 显示全部楼层
如果不想修改functions.php,有其他更好的办法吗?
- _% x/ _/ [& `& s: a8 |# i1 x7 v: N6 k! G6 z+ Z1 i4 O+ R
如果您不想修改主题 `functions.php` 文件,也可以创建一个自定义插件来添加新的文章类型。8 R; Q0 B4 ?: [& o+ S

4 [) n0 G- }1 W4 d% I/ |以下是创建自定义插件的步骤:
4 I. L" I; j2 e" O' L2 q8 J; E4 z6 Z: c
1. 创建新插件:在 WordPress 插件目录中创建一个新的子目录,例如 `site-wide-notices-plugin`,然后在该目录中创建一个新的 PHP 文件,例如 `site-wide-notices-plugin.php`,并在文件头部添加必需的标记,例如:
/ E& q' c7 }7 h, v# V9 ]) Y
: k4 K& p) n& Y% m# }+ ?   ```% S4 u$ H! V5 `; o2 W, h  k/ i
   <?php8 e. v1 d1 ~1 L- L  _& j- b# R
   /*
' A4 M7 C1 `! Z0 Y   Plugin Name: Site Wide Notices Plugin
2 l, }' A2 }' T' |0 K, C# G3 y   Description: Adds a new custom post type for site-wide notices.+ o6 G# z  B  z9 z& ]0 T
   Version: 1.0$ m4 |) n( {* d( `8 t6 X4 Z) t
   Author: Your Name
1 T, N' \: U7 ~! e8 n; Z0 z; H% W3 k   Author URI: http://example.com
8 K% K$ m5 [1 d2 m   */
2 v* M. ?4 m6 ^  l; F! D) p0 Z& c: a" l1 @
   // Add plugin code here...# W' |4 B7 e0 A* k" Y
   ```" `2 o9 d% `: ^$ D
. K6 N2 _' R9 }+ Z5 `
   在示例中,我们创建了一个名为 `Site Wide Notices Plugin` 的新插件,该插件添加了一个新的自定义文章类型,并指定了版本、作者和作者 URI 等元信息。- Z: B3 p  {$ G' M) r

1 I) \& G" t# ~4 C1 W  Y2 d* O2. 在插件中注册新的文章类型:在 PHP 文件中添加以下代码,用于注册一个名为“site-wide-notices”的自定义文章类型:! Y3 ?$ b4 V, q9 \

5 z6 t* m* M: M! ~- ?, p2 O   ```
5 t9 F# E# D5 u   add_action('init', 'create_custom_post_type');3 X& P9 {9 J% u# m0 x
   function create_custom_post_type() {
7 \6 R7 [& S+ A      $labels = array(0 {( |' y9 @* r$ P
          'name' => 'Site Wide Notices',' k* }( n! w2 I# p  O* p) `
          'singular_name' => 'Site Wide Notice',8 K8 s: g) |0 t
          'add_new' => 'Add New',; a9 b, x; l- N9 c$ x  p
          'add_new_item' => 'Add New Site Wide Notice',) F6 x& j5 Q% E. s4 N
          'edit_item' => 'Edit Site Wide Notice',' W, u4 ~* R8 o8 m
          'new_item' => 'New Site Wide Notice',: G4 w/ r8 R& ?3 E3 L& g5 p$ [- n0 m
          'view_item' => 'View Site Wide Notice',  l! s, y8 h2 M! F
          'search_items' => 'Search Site Wide Notices',
. z* E% K3 G; b* t; t, I          'not_found' => 'No site-wide notices found',
  y0 m9 H+ G7 C  x( w          'not_found_in_trash' => 'No site-wide notices found in trash'
8 O# h/ a+ e4 D      );/ P5 C) K& q' o4 g/ u4 w* W

8 s1 Y, i  v2 x      $args = array(! ]( ?( x* x8 j' G, L
          'labels' => $labels,+ |( v: I4 b6 M1 V( _; {
          'public' => true,
$ a1 K5 T+ M7 b6 i, i9 b( L" G          'has_archive' => true,+ w7 b9 k0 u+ c( W
          'supports' => array('title', 'editor', 'thumbnail', 'excerpt', 'custom-fields', 'revisions'),1 N% W, J1 U9 {% }7 m. i% V
          'taxonomies' => array('category', 'post_tag'),! ^2 Y$ d) r* S% f
          'menu_icon' => 'dashicons-megaphone',1 @6 J7 \0 N/ O* d* T; @
          'menu_position' => 5,, Q3 m( g5 T, P) E7 @1 h2 I
          'rewrite' => array('slug' => 'site-wide-notices')2 B1 G1 Y5 t( ?1 o0 m
      );* }2 ^! I, H# k- P/ j, d

. ^' _  \6 Z2 L' e      register_post_type('site-wide-notices', $args);
! N  g( x/ ^$ i4 n" u9 ^. v   }
. f% h7 P7 @$ |9 F+ {7 w# D: A   ```
- N; y% B8 t4 k' m! z' I7 Y5 ]& d  V% v4 u
   在示例中,我们使用 `register_post_type()` 函数注册一个新的文章类型,并定义了该文章类型的名称、标签和其他设置。
- L) f8 A  m) ^, o* R3 e0 H+ g$ \3 W& z0 c7 {3 s2 ]
3. 在后台中添加公告编辑页面:您可以使用 `add_meta_box()` 函数在后台中添加公告编辑页面,并自定义字段和元数据,例如:
9 V& I  a( G4 B; W# q
; F7 l, v, t* D" T   ```& R; j# D' P. m; D, F* V. _
   add_action('add_meta_boxes', 'add_site_wide_notices_boxes');8 W- M3 a2 F" j% m/ c1 ^
   function add_site_wide_notices_boxes() {3 v7 |7 R. G0 }+ [9 W+ B
      add_meta_box('notice-details', 'Notice Details', 'notice_details_meta_box', 'site-wide-notices', 'normal', 'high');
; u7 @1 I* q5 B( v1 y/ z   }) N0 Z; h2 {5 j. d7 T6 U6 o& t
! _4 Z2 N0 P3 U, M9 h- ~; O% p/ @
   function notice_details_meta_box($post) {+ |% n' [5 N1 @, D
      wp_nonce_field(basename(__FILE__), 'notices_nonce');  X/ i! P+ }4 H3 k2 z0 J9 W1 b1 H
      $notice_title = get_post_meta($post->ID, 'notice_title', true);
0 r! `& l! u2 l& E% J) l; ]      $notice_content = get_post_meta($post->ID, 'notice_content', true);1 W; M) x, v3 |3 V' s5 h  A
      ?>. w' W; N- ]8 q( V
      <p>/ O+ N5 P+ d" _9 h
          <label for="notice-title">Notice Title</label><br>1 m9 G3 _) u$ M& l/ p
          <input type="text" id="notice-title" name="notice_title" style="width: 100%;" value="<?php echo $notice_title; ?>">
  ]6 |& `  G# a. n      </p>
8 i) Z% A, U+ W( R) e+ k( ?      <p>
) s) i  E0 u$ W! _          <label for="notice-content">Notice Content</label><br>
7 Y& p7 {* G5 ?* V) y          <?php wp_editor($notice_content, 'notice-content', array('textarea_rows' => 10)); ?>
- V' ~; t" h4 A( V  L      </p>0 j. y( i/ b6 N" Q; Q# |. L% D7 s6 N$ y
      <?php
2 H  H4 P3 u5 q" H2 E  o   }: l* c* C* W% U9 K7 ?, A

5 o: i- }( u5 H% _3 g8 O: y   add_action('save_post', 'save_site_wide_notice_meta_box');
7 W8 c9 \# X( m7 Y   function save_site_wide_notice_meta_box($post_id) {8 n- n- {3 l) ^: P2 y
      if (!isset($_POST['notices_nonce']) || !wp_verify_nonce($_POST['notices_nonce'], basename(__FILE__)))7 @$ r/ T) X0 }0 s; {
         return;
- k# L& w3 ?. F1 ~& i+ B      if (defined('DOING_AUTOSAVE') && DOING_AUTOSAVE)) W+ G+ z" ?1 F$ i( l
         return;9 o  ]9 ]3 \* J+ y: i

  U& h0 \. q+ t& e( n. d9 d      if (isset($_POST['notice_title'])) {0 O1 c- w7 x7 H2 c' \  N- M
          update_post_meta($post_id, 'notice_title', sanitize_text_field($_POST['notice_title']));  I5 S( F% w6 K+ c( `# ], R
      }
6 e# b' a- L5 y      if (isset($_POST['notice_content'])) {0 a4 T5 F$ m  \0 N+ ?1 G+ n" A! S. I
          update_post_meta($post_id, 'notice_content', wp_kses_post($_POST['notice_content']));
: F- N2 t" Q6 w1 V      }' A7 S/ H% ?! r5 t* y( ?9 y& t4 P
   }
: g1 C4 d1 o& L. m   ```  i" s& \. ?0 B- Y7 ]7 v9 J
! V& ]9 e! C& L, j
   在示例中,我们使用 `add_meta_box()` 函数添加了一个名为 `notice-details` 的元框,用于在编辑页面上显示自定义字段和元数据。在 `notice-details_meta_box()` 函数中,我们使用 `wp_editor()` 函数添加了一个可视化编辑器,用于编辑公告内容。在 `save_site_wide_notice_meta_box()` 函数中,我们使用 `update_post_meta()` 函数将公告标题和内容保存到 WordPress 数据库中。
% `/ T. j, \' z4 `* a
& K( N" P0 C) O4. 在前端页面中显示公告:在 WordPress 主题文件中添加以下代码,以在您的网站上显示公告:' C4 J$ s; G+ t6 J

; ~6 X8 |* F3 Y7 N) e- V   ```
* S# D/ J, x+ Q2 K( o* K   $args = array(6 n- a6 G* w* l9 p; k" ]! z
      'post_type' => 'site-wide-notices',7 ^5 Q) [& Q" O0 H
      'posts_per_page' => 3,+ q: D3 ~6 V* o2 |& z& [2 x
      'order' => 'DESC',0 y/ |3 O3 V% H" |9 q! D
      'orderby' => 'date'
! n/ I- z' g0 R* f- v: w* M0 a   );
3 j1 U$ k+ _& t* X' U6 B   $query = new WP_Query($args);
: e$ q7 A8 Q0 }  q8 ^) f   if ($query->have_posts()) :
0 Y* W7 k/ v, V9 b/ H& H      while ($query->have_posts()) : $query->the_post(); ?>- j. ~% U0 A$ N1 T
          <div class="notice">$ s, h/ @" L- [: ?% K9 w; Q
              <h3><?php the_title(); ?></h3>6 ]$ E( p: k4 |) L+ O" ?
              <div class="notice-content"><?php the_content(); ?></div>
- D/ \1 z* r* N1 i# x          </div>
! h, Q% Q8 R% P& w2 y8 s/ i      <?php endwhile;
& D* t& K, z7 w9 d6 S3 ]" z      wp_reset_postdata();
1 E: \' s0 @; b   endif;3 Q! g( s& g6 h) |% u# I+ N+ p- k2 |
   ```
. L( n3 r6 v5 H3 u$ @( q
: G7 |, t2 y* e3 Q   在示例中,我们使用 `WP_Query` 类从 `site-wide-notices` 文章类型中获取最近发布的 3 条公告,并在前端页面中循环遍历并显示标题和内容等信息。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|小黑屋|通达创业无忧 ( 粤ICP备2023021749号|粤公网安备 44030402006137号 )

GMT+8, 2026-2-7 11:44 , Processed in 0.012315 second(s), 2 queries , Redis On.

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表