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

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

[复制链接]

342

主题

545

回帖

3594

积分

管理员

积分
3594
QQ
发表于 2023-5-18 08:34:20 来自手机 | 显示全部楼层 |阅读模式
您可以使用以下方法来快速在 WordPress 后台增加一个全站公告的功能:( E8 U. {& {' `* T

2 Y% O) Y6 a' i; W1 `1. 在 WordPress 插件库中寻找可用的公告插件,例如 WP Notification Bars、Announcements、SSP Elegant Notification Bar 等。
" R  `$ R/ f9 `* M! ?3 t  n& |! ?! h0 ^
2. 安装并激活您选择的插件。您可以在 WordPress 后台的「插件」->「添加新插件」界面中搜索并安装插件,然后在「插件」->「已安装插件」界面中激活它。
* Y9 t1 X! a' X- [; y; }+ m/ b! C: c. G5 `7 ?
3. 在插件的设置页面中配置您的公告内容和样式。不同插件的设置选项和功能可能会有所不同,但通常都允许您定义公告的文本、链接、颜色、位置等。
. z3 ~/ h6 R3 T4 X  C1 f7 r) B1 R
4. 将公告添加到您的网站上。在插件设置页面中完成公告的设置后,您可以通过编辑 WordPress 主题的代码或使用插件提供的方法将公告添加到您的网站中。不同插件可能使用不同的添加方法,具体请查看详细说明或联系插件作者。
. d0 R# r+ k- D( Z8 f' `
) p) \+ {, H. A' q# D9 D注意,如果您使用的 WordPress 主题已经包含了公告功能,或使用了其他公告插件,可能会导致冲突或功能重复。如果您遇到了这样的问题,请查看主题文档或联系主题作者以获取解决方案。
回复

使用道具 举报

342

主题

545

回帖

3594

积分

管理员

积分
3594
QQ
 楼主| 发表于 2023-5-18 08:34:51 来自手机 | 显示全部楼层
如果是自己开发的话,具体要怎么做?1 D) w/ a$ Q. l; m

3 P8 {. ^0 q9 s5 x9 v如果您自己开发 WordPress 主题或插件,并且需要在后台中增加一个发布全站公告的功能,可以按照以下步骤操作:
& i& E. J, F2 x  j5 _1 O( O; u% F2 b
- W; i/ K( I0 j! o* i+ o: ?1. 创建一个自定义的 WordPress 后台页面。您可以使用 `add_menu_page()` 或 `add_submenu_page()` 函数来创建一个自定义后台页面,例如:
8 v! h; Y" n/ O  @  F# a9 Y: h0 K. e' m& R- k; J
   ```  @- B0 e  L3 p
   add_menu_page(
+ x8 W% O' W, t7 v% [       '全站公告',
* i: y4 U+ ?/ w) G5 `* A( I       '全站公告',
8 v9 ?& z6 A0 _& D+ c       'manage_options', //需要的用户权限* Z* M1 p' U3 e/ q
       'site-wide-notice', //后台页面的 slug3 _4 Z& I+ i: `9 k: N
       'render_site_wide_notice_page', //用于渲染后台页面内容的函数( ?/ \( v+ G+ a- Q/ p" g5 D
       'dashicons-megaphone', //用于显示在菜单中的图标% y, ]- B; {8 g4 J1 u; S" V4 ~
       30 //菜单项的位置
1 n  y- U- C3 o& n, D1 F   );/ h" B+ m  c  R3 S7 l" d
   ```7 Q3 V0 H! U: D9 _7 D9 v- r- |

5 H# a  X9 {' f   在该示例中,我们使用 `add_menu_page()` 函数来创建了一个名为“全站公告”的菜单项,并指定需要的用户权限(`manage_options`),在后台页面的 slug 为 `site-wide-notice`,用于渲染后台页面内容的函数为 `render_site_wide_notice_page`,在菜单中显示的图标为 `dashicons-megaphone`,菜单项的位置为 30。' V1 ?8 K) S2 Q: {- q% m4 ]# T

. U" n! {* X  f2. 编写用于显示和保存全站公告内容的代码。您可以在自定义后台页面中创建一个表单,让用户输入公告的标题、内容等信息,并将这些信息保存到 WordPress 数据库中的某个表中。例如:
7 ?! y" G& `# H, H0 R- E& c. f" j6 o, M" W  ?: I  y
   ```3 @% h! E( ~$ D1 [2 q% H% M& p
   function render_site_wide_notice_page() {+ L( \! t  `/ U2 }1 f
      // 渲染后台页面内容
' I& [3 C. s9 M      echo '<div class="wrap">. Z* v7 v  [( Q8 w7 c
          <h2>全站公告</h2>
: L1 m* F# m  I& c3 C/ p          <form method="post" action="">: H9 V7 g( T: O6 m. o$ T
              <label for="title">公告标题:</label>
5 P" P0 a$ r  S              <input type="text" name="title" value="'.get_option('site_wide_notice_title').'"><br><br>% ]% @, _/ s7 f6 }8 H6 b" h
              <label for="content">公告内容:</label>
3 C* K" V8 w1 K2 l" B              <textarea name="content">'.get_option('site_wide_notice_content').'</textarea><br><br>8 z( ]& I6 u" e/ T# D4 h
              <input type="submit" name="submit" value="保存设置">
  Y8 ]1 ~* a+ F          </form>
) e; |: e2 p# B      </div>';
0 D8 {7 Y  w9 j( ~. [- N% D2 e. z
      // 处理表单数据
& M* q$ W/ C' f& ^( m" \      if (isset($_POST['submit'])) {
, }! O) D% F( R9 Z; z1 Z          update_option('site_wide_notice_title', sanitize_text_field($_POST['title']));7 M$ h) k% W9 ^; \* {! b0 e
          update_option('site_wide_notice_content', sanitize_text_field($_POST['content']));- z$ a, T* i( a; @' M& E) t
      }6 r- A9 q, v1 R3 |7 R3 L% d5 j
   }
% a6 }% Y; `: s7 v# v8 @" _2 T   ```) j: ~, W6 b. m9 C8 P. G, W
8 d4 H* ?% ]+ c3 n/ p5 e$ z
   在该示例中,我们创建了一个表单,让用户输入公告的标题和内容,并使用 `update_option()` 函数将这些数据保存到名为 `site_wide_notice_title` 和 `site_wide_notice_content` 的 WordPress 配置项中。如果用户点击提交按钮,则将表单数据更新到配置项。
7 D* H1 g+ p  Z" ^: H. ~! O8 l
1 O0 r9 Y. ]* Q5 ]; S3. 在 WordPress 主题中显示全站公告。您可以通过在 WordPress 主题的 `header.php` 文件中添加代码,将公告内容显示在网站的顶部或其他位置。例如:! d: K; t, ]/ ~& c+ |% K# J: G

  c9 V$ v, y+ S. s) B   ```. Q) }! Z# ~! `9 J$ Z9 x; O
   <?php
  W% f: I2 B* r# c: k! ^# Z   $site_wide_notice_title = get_option('site_wide_notice_title');7 l& d6 E  M' j* c$ [
   $site_wide_notice_content = get_option('site_wide_notice_content');& P: f+ m- |2 `; \
   if (!empty($site_wide_notice_title) || !empty($site_wide_notice_content)) {7 Y& h! [5 a* y& ^4 K" d" y
       echo '<div class="site-wide-notice">';  r5 D% L+ ?/ o& {' S9 O. P( j
       if (!empty($site_wide_notice_title)) {) V6 \; n* P- ?, I+ M4 r
           echo '<h3>'.$site_wide_notice_title.'</h3>';
! ?) Z8 Y! d. \       }3 D/ ?' b- J1 Q  p# Y% J+ {
       if (!empty($site_wide_notice_content)) {
, Y) \+ v, i1 T; R  v           echo '<p>'.$site_wide_notice_content.'</p>';
" Z' B! y3 L! j4 c! I) m       }3 X7 k6 ~7 S5 q
       echo '</div>';9 a1 [+ D5 G0 D* c6 X& `* c7 d6 M
   }; I4 T" M1 N& f& ^
   ?>2 @4 C& ?# k' M4 w! Y
   ```
" Y# {+ i: s: C2 p: c/ d
' b, x6 s: n5 \* s1 r) F; n" F$ x   在该示例中,我们检查 WordPress 配置项中名为 `site_wide_notice_title` 和 `site_wide_notice_content` 的值是否为空,如果不为空,则在 `header.php` 文件中添加一个名为 `site-wide-notice` 的容器,将公告标题和内容显示在其中。6 l; A' ]; z5 K& H+ K; B  z

+ ?8 }- P' m# K4 k) f2 o/ s+ \$ j2 X0 t请注意,本示例仅提供了一个框架,具体实现可能会根据您的需求和实际情况有所不同,您需要根据自己的需要进行修改和调整。同时,为了确保安全性,您还会需要对用户输入的数据进行适当的验证和过滤,例如使用 `sanitize_text_field()` 函数来过滤表单数据。
回复

使用道具 举报

342

主题

545

回帖

3594

积分

管理员

积分
3594
QQ
 楼主| 发表于 2023-5-18 09:26:50 来自手机 | 显示全部楼层
那如果需要发布多条公告,并进行管理,要如何实现?
: j) A! l3 z7 W/ Z, n# F' E7 ^
2 W0 V9 U+ T0 @# \2 Z* D" U您可以创建一个自定义的 WordPress文章类型,例如“公告”,并对其进行自定义化,以实现发布多条公告并进行管理的功能。以下是具体步骤:
4 O: s8 t  x, `
& o( ~  P6 `! Z. D% @9 |$ ]1. 创建一个自定义的文章类型:在你的主题 `functions.php` 文件中,添加以下代码:
$ J  X0 {# n3 A9 u3 ?& M1 z7 a- z6 M& ?) E0 V
```# |- H# m$ z4 h* `1 @% l
function create_custom_post_type() {+ ?0 P4 ]- {$ Y8 o
    $args = array(
$ \) C0 J3 @7 y        'labels' => array(
9 v# P2 U- k$ W4 O$ r            'name' => '公告',
6 Z$ }6 M% i. B8 N& [1 ?            'singular_name' => '公告'3 N5 N6 t0 @# o9 Z& O7 Z
        ),
$ }2 C' |' q; ?; @        'public' => true,9 j5 @/ t( K- H0 F
        'has_archive' => true,
: T" s* ^4 r1 @) w6 r  B% A        'supports' => array('title', 'editor', 'thumbnail', 'excerpt', 'custom-fields', 'revisions'),* [! w6 U* d' {+ Q
        'taxonomies' => array('category', 'post_tag')," v9 ]1 |4 W/ H$ \
        'menu_icon' => 'dashicons-megaphone',: y0 `6 V2 f. I# p" l
        'menu_position' => 5,9 V' W0 T5 x* D4 w" Z: a/ s: f
        'rewrite' => array('slug' => 'site-wide-notices')  V( [9 @# n7 q: U" ~
    );
' ]% d: a, m  k# V" K    register_post_type('site-wide-notices', $args);+ J3 y2 S1 _# m- [
}% A6 H. N2 s0 J4 s: a; q
add_action('init', 'create_custom_post_type');
1 b. T  ~! K% d! n/ R```$ t+ c) _: Z! j

. S% Y1 c2 S0 n' j# s) U3 V在示例中,我们注册了一个名为 "site-wide-notices" 的新的文章类型,并定义了文章类型名称、缩略名、文章类型支持的功能、分类法、管理菜单图标等设置。
; G. b$ c; A8 t
/ \1 L' _$ ^$ x2 g2. 在你的 WordPress 后台中创建新文章类型“公告”:现在,你就可以在 WordPress 后台中通过导航到“公告”菜单,来添加、编辑或删除公告了。您可以在编辑公告的页面中添加标题、内容、特色图像或其他自定义的元数据字段。& B: i5 O) O" w8 i
5 z% L; n5 g, P( @
3. 在主题中显示公告:在您的 WordPress 主题文件中添加以下代码,以在您的网站上显示公告:
' }6 C" t+ z* j( J. o: C1 K) @( }1 X4 O7 P" k2 F" Y9 \6 ]9 [1 v) _
```/ s5 e) L, {- }1 m5 M
$args = array(! L# e; T& t$ i1 A# d6 z3 X
    'posts_per_page' => 3, // 显示的公告数量
7 I8 h& @  k3 Q: E    'post_type' => 'site-wide-notices', // 公告文章类型
' F3 @4 H" B, b1 m. c' f    'post_status' => 'publish', // 公告状态
( F4 ~2 V# r/ O, f; `    'order' => 'DESC' // 排序方式& f! M2 e5 m6 n, M) D
);
. A/ G% ]& o! G/ C! n1 f
" Z' U3 j0 R) g5 t$notices = new WP_Query($args);" a* r% z$ z. Z( o
if ($notices->have_posts()) :9 m3 M. H# S1 L! o0 [& u8 T. K
    while ($notices->have_posts()) : $notices->the_post(); ?>
# I6 {% H3 z- x1 i' ?1 x$ I        <div class="notice">
5 K/ G9 `4 E' J; S6 r            <h3><?php the_title(); ?></h3>
, G: ~8 E* a  v) T( W! r            <div class="notice-content"><?php the_content(); ?></div>9 R; o% u8 @( k  b) c9 }! {
        </div>, a5 }  r3 O$ d7 a# X
    <?php endwhile;
, k# d" Q' O5 t7 ~else :
9 Q. }+ _4 x" S, v2 x! B$ F    echo "暂无公告";: f2 I2 T+ ]7 ^' B$ ~$ t
endif;
7 s) L& f+ U1 A& n0 v! z2 qwp_reset_query();
( _1 z( z  ?* D```
2 q3 H7 f) B/ M# w& c8 @. k: \) x6 |6 Y
6 Q' f9 `% q3 Y这段代码将使用 WordPress 的 `WP_Query` 类从公告文章类型中获取最新发布的 3 条公告,并在前端页面中循环遍历并显示公告标题和内容等信息。
0 w7 |7 \( D5 x0 z! E* j- E6 z  Y
4 `& O5 v6 j) h" M. v以上便是实现 Wordpress 后台发布多条全站公告的基本步骤。需要注意的是,自定义文章类型可对应多篇文章,具体根据您的需求进行调整。
回复

使用道具 举报

342

主题

545

回帖

3594

积分

管理员

积分
3594
QQ
 楼主| 发表于 2023-5-18 09:27:55 来自手机 | 显示全部楼层
如果不想修改functions.php,有其他更好的办法吗?
  G7 d3 ?- O; i
: N7 R) _3 o5 b5 h如果您不想修改主题 `functions.php` 文件,也可以创建一个自定义插件来添加新的文章类型。
5 U- n$ V! E5 N+ w& Z: R/ j$ D# \4 l2 T6 r/ r& _
以下是创建自定义插件的步骤:* b8 J, n' T, j

7 |* u4 k( t" _( c1. 创建新插件:在 WordPress 插件目录中创建一个新的子目录,例如 `site-wide-notices-plugin`,然后在该目录中创建一个新的 PHP 文件,例如 `site-wide-notices-plugin.php`,并在文件头部添加必需的标记,例如:
( h% h1 _' h: R* P% |9 k2 o2 D3 t1 Z& n/ e
   ```; j6 y5 @- y% {! I% Z
   <?php/ D2 Q+ w7 u; r: |0 Z: n, _
   /*1 X0 ^$ B9 `6 t2 ^$ }$ M5 Z# Y" _
   Plugin Name: Site Wide Notices Plugin3 C" b' T* n* e, M6 g( w! x) S
   Description: Adds a new custom post type for site-wide notices.
# i9 n" W) s' w1 k- O% k   Version: 1.0
2 a3 L" k- |( ]0 X3 |/ e3 m   Author: Your Name
8 F* g- t6 n# D   Author URI: http://example.com  a0 l; o3 O  f
   */
# u, N) E. S% K+ ?& y( Z. F
( |" _/ z+ r4 F6 Z' ]2 I" Y3 O; Z   // Add plugin code here...( e6 I5 k3 `' I2 V1 c
   ```, H7 v7 k8 C6 y; x3 R/ G" q

# h6 J6 _8 ]5 P8 [4 G   在示例中,我们创建了一个名为 `Site Wide Notices Plugin` 的新插件,该插件添加了一个新的自定义文章类型,并指定了版本、作者和作者 URI 等元信息。; k! G* p  _% I$ W+ [) H
2 S6 a2 j- I9 t8 P, m6 F+ W
2. 在插件中注册新的文章类型:在 PHP 文件中添加以下代码,用于注册一个名为“site-wide-notices”的自定义文章类型:
" U8 G# Y1 T* [3 i* P3 s% N9 T) u* g4 ~  \
   ```
7 e  M$ Y" B, d: P8 O   add_action('init', 'create_custom_post_type');
- T" M" V0 ~( a; i  d   function create_custom_post_type() {
0 B7 ]8 q" O. n7 I7 z      $labels = array(+ P2 \+ `/ ]+ D; a0 [2 S
          'name' => 'Site Wide Notices',
9 o% }; H8 d2 A          'singular_name' => 'Site Wide Notice',: A( Y0 q& d5 A
          'add_new' => 'Add New',
8 q( u7 A, X' K; }7 j$ W          'add_new_item' => 'Add New Site Wide Notice',
% Y. M8 B* y5 @5 |! M' E6 i          'edit_item' => 'Edit Site Wide Notice',, R! j# P1 ^/ n& r& m, Y
          'new_item' => 'New Site Wide Notice',
* X/ @# y& f3 ~* F8 E4 j          'view_item' => 'View Site Wide Notice',8 N0 W4 g7 c  c$ D, i% q
          'search_items' => 'Search Site Wide Notices',
! @8 A0 D$ c# w! C          'not_found' => 'No site-wide notices found',
: ^6 s" Q2 [" o* l; o& D" k          'not_found_in_trash' => 'No site-wide notices found in trash'
, p5 E. @; C" Y3 u* M3 W) O+ {      );
( q- N# {+ p! d9 {$ z% _: S3 T+ {4 C- c
      $args = array(
1 \; s2 M" A" ]' `% [) U: P! ^6 \/ E& g          'labels' => $labels,. E% w- j9 p% K: n" Z: q
          'public' => true,
1 \. U8 B. Y# }          'has_archive' => true,* K9 z9 B; \  F, ~6 m6 e! N
          'supports' => array('title', 'editor', 'thumbnail', 'excerpt', 'custom-fields', 'revisions'),  n* _" d0 u4 a
          'taxonomies' => array('category', 'post_tag'),
; [* t7 ^( E, D' K0 T! V; q          'menu_icon' => 'dashicons-megaphone',  ~" f, M/ q) [1 _: ^3 G: v
          'menu_position' => 5,6 G5 g( F2 g+ ^, O3 p$ H
          'rewrite' => array('slug' => 'site-wide-notices')
- b! h# c- G8 y# K      );0 I4 `3 }: N3 @( |; b# U
  T( r9 E4 q' Q9 z4 g! C1 [5 b. `. L
      register_post_type('site-wide-notices', $args);3 W8 W$ y$ p$ C, b  c
   }; O, @- {- a  R# o- v
   ```
3 T7 j$ v+ s% K; F! V, s% J) V& V7 u. |# i# a  w8 [
   在示例中,我们使用 `register_post_type()` 函数注册一个新的文章类型,并定义了该文章类型的名称、标签和其他设置。
& U  z5 r4 M5 J, l) R5 [! }% {9 n" f7 ]
3. 在后台中添加公告编辑页面:您可以使用 `add_meta_box()` 函数在后台中添加公告编辑页面,并自定义字段和元数据,例如:" V8 a1 i2 U& A; c. i2 ]; T! S. W2 |

2 b# l/ k5 g, E2 P   ```9 ?2 H, d& ]5 F$ K8 E: Q
   add_action('add_meta_boxes', 'add_site_wide_notices_boxes');
) E9 d; }1 K1 G0 p* f5 S   function add_site_wide_notices_boxes() {  J; S# D. W! F) B9 S0 w3 j0 |: Y. @& Z
      add_meta_box('notice-details', 'Notice Details', 'notice_details_meta_box', 'site-wide-notices', 'normal', 'high');6 |2 u- p0 H& N  I0 r
   }
: r* e& v8 Q6 R% K) M# |0 v
; ?! Y9 i  R! z   function notice_details_meta_box($post) {) i8 h3 ~- s* a1 `; a
      wp_nonce_field(basename(__FILE__), 'notices_nonce');
2 W9 u* d- I& j* C      $notice_title = get_post_meta($post->ID, 'notice_title', true);) ^: I* |* c, R7 i& Q: z, l; B  h' p
      $notice_content = get_post_meta($post->ID, 'notice_content', true);
) {$ m! i3 }9 G& z; ?1 m      ?>
! f  g, o! H* ~2 M! T  J      <p>
0 i' D# ~3 g: r8 F8 O          <label for="notice-title">Notice Title</label><br>3 z9 d0 c* {6 C! l9 P& r
          <input type="text" id="notice-title" name="notice_title" style="width: 100%;" value="<?php echo $notice_title; ?>">; _* J& U$ N5 ]- |) y' L$ p1 N
      </p>
9 J7 P+ h! P( [. S' }      <p>- v2 \) `& U% x' P6 l5 h0 @% y
          <label for="notice-content">Notice Content</label><br>
. H9 I% n5 {( Y+ g6 q          <?php wp_editor($notice_content, 'notice-content', array('textarea_rows' => 10)); ?>3 O, K5 F) T6 h, S
      </p>- V  }8 N& w! F3 ]
      <?php$ v  b8 a8 A$ F! ~: r  C
   }7 u/ r0 K7 n  @+ Q' {& Y
4 M8 _8 G7 F% u3 U- {$ P3 y+ U
   add_action('save_post', 'save_site_wide_notice_meta_box');7 y" t! A' m0 t- b9 U% U1 c, @0 n
   function save_site_wide_notice_meta_box($post_id) {+ J: k/ m$ K% l5 _9 c& j0 h
      if (!isset($_POST['notices_nonce']) || !wp_verify_nonce($_POST['notices_nonce'], basename(__FILE__))), m8 H+ l" Q. e; a8 x; ~* y; R  d
         return;
' [, I7 s# S# s. s, H* B0 F      if (defined('DOING_AUTOSAVE') && DOING_AUTOSAVE)3 O( i  i4 C8 O/ U4 i5 \# ^- {& n5 B
         return;; U( u8 Z6 ]0 f4 A
0 Z  B2 Y" ]% o; x  }
      if (isset($_POST['notice_title'])) {
7 \$ {- ^! Y6 p0 |& v2 g# E. Y# n          update_post_meta($post_id, 'notice_title', sanitize_text_field($_POST['notice_title']));) T7 W6 ?" c& z2 X/ l" D
      }
2 F8 D2 u7 i3 l! |# H+ a! m      if (isset($_POST['notice_content'])) {
# c6 W( e7 e3 r* s; C          update_post_meta($post_id, 'notice_content', wp_kses_post($_POST['notice_content']));8 W5 q, Z$ Z7 M+ b3 M" s
      }
- }: J& [/ b: W   }
' j' O0 j' r" l1 `: C& }   ```
' P  T, x/ G2 O* c/ D) Z! t& T# F" n& V6 b0 W
   在示例中,我们使用 `add_meta_box()` 函数添加了一个名为 `notice-details` 的元框,用于在编辑页面上显示自定义字段和元数据。在 `notice-details_meta_box()` 函数中,我们使用 `wp_editor()` 函数添加了一个可视化编辑器,用于编辑公告内容。在 `save_site_wide_notice_meta_box()` 函数中,我们使用 `update_post_meta()` 函数将公告标题和内容保存到 WordPress 数据库中。
7 J" o' O+ s! u% `& `' [6 j. S  Y- b; ^
4. 在前端页面中显示公告:在 WordPress 主题文件中添加以下代码,以在您的网站上显示公告:8 z3 B( f. o2 e$ X

" R8 j3 Y8 b6 A* k2 R   ```
  J/ V' o7 y' U' J  s! K   $args = array(
" d. R) b2 R0 r/ f5 M      'post_type' => 'site-wide-notices',
7 L" g; W. W; H2 \+ K# B; i' `      'posts_per_page' => 3,$ a  e4 y6 G$ `7 w6 e8 b3 o
      'order' => 'DESC',/ u& ]; ]/ _  ]
      'orderby' => 'date'
! w( e8 Z# J  a) i   );0 C/ O3 A# G( j: D! p
   $query = new WP_Query($args);. N3 t  B( W+ d4 g" |
   if ($query->have_posts()) :. J& d8 V5 W" R0 j
      while ($query->have_posts()) : $query->the_post(); ?>
' i/ N8 ^- e" L' L2 y          <div class="notice">
* E' J4 }9 U' v  a& j6 f+ i$ l* T' N& w              <h3><?php the_title(); ?></h3>" c/ ^& r* b8 `2 E6 I, P0 ]  \+ t
              <div class="notice-content"><?php the_content(); ?></div>
4 \$ ]+ x: \4 H7 E          </div>
+ S- H3 p- H9 [  w3 c' L      <?php endwhile;+ C6 D) H6 E, m) F
      wp_reset_postdata();
( W/ S" l7 ?) ]3 N   endif;- i0 R" D$ x2 q$ B$ e
   ```3 P$ P- D' ~2 z3 H: j: L) u0 ^6 t* t
9 T" Y4 y% X. b1 B, |1 K3 R% ?  b4 r
   在示例中,我们使用 `WP_Query` 类从 `site-wide-notices` 文章类型中获取最近发布的 3 条公告,并在前端页面中循环遍历并显示标题和内容等信息。
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2026-1-28 05:53 , Processed in 0.020151 second(s), 3 queries , Redis On.

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

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