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

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

[复制链接]

340

主题

529

回帖

3534

积分

管理员

积分
3534
QQ
发表于 2023-5-18 08:34:20 来自手机 | 显示全部楼层 |阅读模式
您可以使用以下方法来快速在 WordPress 后台增加一个全站公告的功能:( }# n$ R+ g$ K0 S% b

& B' L7 w2 _, w: E1. 在 WordPress 插件库中寻找可用的公告插件,例如 WP Notification Bars、Announcements、SSP Elegant Notification Bar 等。
% r- T' b9 C$ q7 w1 `
. p0 W0 j; y, N  C2. 安装并激活您选择的插件。您可以在 WordPress 后台的「插件」->「添加新插件」界面中搜索并安装插件,然后在「插件」->「已安装插件」界面中激活它。
  F. y- a) t2 T8 w! q9 W& n. E' l! w
3. 在插件的设置页面中配置您的公告内容和样式。不同插件的设置选项和功能可能会有所不同,但通常都允许您定义公告的文本、链接、颜色、位置等。
4 E' l9 g- [0 t% r5 x0 I$ B4 p' S3 {  Z/ K( Z, W4 R# s
4. 将公告添加到您的网站上。在插件设置页面中完成公告的设置后,您可以通过编辑 WordPress 主题的代码或使用插件提供的方法将公告添加到您的网站中。不同插件可能使用不同的添加方法,具体请查看详细说明或联系插件作者。
; p6 O5 ]6 n# r) _1 ?5 D* s' q) Z
注意,如果您使用的 WordPress 主题已经包含了公告功能,或使用了其他公告插件,可能会导致冲突或功能重复。如果您遇到了这样的问题,请查看主题文档或联系主题作者以获取解决方案。
回复

使用道具 举报

340

主题

529

回帖

3534

积分

管理员

积分
3534
QQ
 楼主| 发表于 2023-5-18 08:34:51 来自手机 | 显示全部楼层
如果是自己开发的话,具体要怎么做?
6 \6 I0 Z5 I' ~5 c' P7 W7 ?2 r# b# _+ R
如果您自己开发 WordPress 主题或插件,并且需要在后台中增加一个发布全站公告的功能,可以按照以下步骤操作:+ O" M# e) L9 x$ y8 ~
0 I7 t& X9 C2 A8 l
1. 创建一个自定义的 WordPress 后台页面。您可以使用 `add_menu_page()` 或 `add_submenu_page()` 函数来创建一个自定义后台页面,例如:$ i8 V+ y! W* U  N" G9 J
  C+ i1 P  w. f4 T! h4 q# I1 |
   ```
# d* p/ i( b4 m) |   add_menu_page(+ Y( X6 [! G; C, r' y: a2 }
       '全站公告',# i5 q% |- O! n" J, |7 U% p" V" c
       '全站公告',
7 p+ h/ h6 [' c       'manage_options', //需要的用户权限* x( o7 G+ m. ]$ ^" ?3 [2 O
       'site-wide-notice', //后台页面的 slug
: W: c" |6 v  @% p1 X7 t2 b       'render_site_wide_notice_page', //用于渲染后台页面内容的函数
. a3 o! s7 d2 }7 T1 h1 Y       'dashicons-megaphone', //用于显示在菜单中的图标+ s* V2 h  T! g- l* v* n% I$ G& F& q- F0 Z/ B
       30 //菜单项的位置; @1 h0 J' t$ t3 j: y* m# P
   );
- f3 V' n% H" u" _# g   ```7 j! {+ l% {' B; z2 M9 Y
5 ]" c- Q, `% r  L. u4 W6 y/ |
   在该示例中,我们使用 `add_menu_page()` 函数来创建了一个名为“全站公告”的菜单项,并指定需要的用户权限(`manage_options`),在后台页面的 slug 为 `site-wide-notice`,用于渲染后台页面内容的函数为 `render_site_wide_notice_page`,在菜单中显示的图标为 `dashicons-megaphone`,菜单项的位置为 30。! G7 b8 c; ~! J' k4 F" g7 z! ^
& B1 O' R/ o( A& z; h2 i. X  o& x
2. 编写用于显示和保存全站公告内容的代码。您可以在自定义后台页面中创建一个表单,让用户输入公告的标题、内容等信息,并将这些信息保存到 WordPress 数据库中的某个表中。例如:% s9 \3 a) m! O

  L+ M! z$ h$ N: |! Y   ```
. A9 d2 s5 s2 y. x$ z   function render_site_wide_notice_page() {0 \/ h+ R! Q' O+ _- D  a
      // 渲染后台页面内容
. D0 p! t. r. k- X: z      echo '<div class="wrap">3 w6 [4 x" E6 u! K$ t
          <h2>全站公告</h2>7 j) I, i" B; P8 b: R: A
          <form method="post" action="">( G# K; ^9 K9 {+ ?' a( r
              <label for="title">公告标题:</label>
/ R& Q9 g3 V" i/ p$ T5 |              <input type="text" name="title" value="'.get_option('site_wide_notice_title').'"><br><br>
& H' _) K7 e; [. |              <label for="content">公告内容:</label>+ y# {( r9 ?. R* T- w
              <textarea name="content">'.get_option('site_wide_notice_content').'</textarea><br><br>
% a+ C7 z* a! I# f3 t* @              <input type="submit" name="submit" value="保存设置">5 |) Z6 ?& A, ?4 p( O" c/ C
          </form>1 x2 M$ l. Z" W( I7 z8 N
      </div>';
4 n& W1 L& W, ~: C1 U( Z
/ y; n1 p* q% z' d, l      // 处理表单数据
6 s, A2 Y; G* Y# q+ z! d) f      if (isset($_POST['submit'])) {$ |3 ]5 N7 |! {5 ~# j+ n# g1 h
          update_option('site_wide_notice_title', sanitize_text_field($_POST['title']));
9 J/ L1 z5 O! V8 X, ?1 c, M% B          update_option('site_wide_notice_content', sanitize_text_field($_POST['content']));. H+ Y$ i. z3 k
      }
1 z$ i) s  q5 X5 X   }0 d8 ^, d7 |* Q5 U
   ```
7 i+ y/ X& A( {& Z: Y! P" B4 J( Z2 f7 a
' A( T) U0 P- Y   在该示例中,我们创建了一个表单,让用户输入公告的标题和内容,并使用 `update_option()` 函数将这些数据保存到名为 `site_wide_notice_title` 和 `site_wide_notice_content` 的 WordPress 配置项中。如果用户点击提交按钮,则将表单数据更新到配置项。% j% P$ D! m. _' J" S, o$ y- M2 H
% a6 q5 _; m. D  {
3. 在 WordPress 主题中显示全站公告。您可以通过在 WordPress 主题的 `header.php` 文件中添加代码,将公告内容显示在网站的顶部或其他位置。例如:
- x- f0 h1 P. g- H0 x9 @4 w* |7 p
7 b8 f# g) e; _( C4 K  ~, Y& k   ```
) {" [8 e* d7 F  }   <?php
, W. Y8 p; Y7 c' v6 w* f5 {$ @# U   $site_wide_notice_title = get_option('site_wide_notice_title');( ]' m( e4 G& P; l
   $site_wide_notice_content = get_option('site_wide_notice_content');
& u0 Y0 _1 ]; v: \, Y" h5 [   if (!empty($site_wide_notice_title) || !empty($site_wide_notice_content)) {/ V* D7 l9 w3 c
       echo '<div class="site-wide-notice">';
, E9 P; R: b$ t/ D       if (!empty($site_wide_notice_title)) {
& [; D& p9 X8 e# [           echo '<h3>'.$site_wide_notice_title.'</h3>';2 `% }/ d2 O3 d; _- N+ @
       }( B  H5 D0 [5 W) w$ k; x
       if (!empty($site_wide_notice_content)) {# \! K; }4 e/ Q2 Y
           echo '<p>'.$site_wide_notice_content.'</p>';
4 F3 Z3 C, \! k# x       }
' s+ `' j% K  V! k, U  w       echo '</div>';
7 ^1 [# @4 H, ~" r   }
" T% ]) i/ L  ~( R! _0 W   ?>
: O6 w: W, p* A6 A1 Y4 G5 h   ```
/ ?- z2 ^: w3 R
5 G5 |; x' J4 M5 _   在该示例中,我们检查 WordPress 配置项中名为 `site_wide_notice_title` 和 `site_wide_notice_content` 的值是否为空,如果不为空,则在 `header.php` 文件中添加一个名为 `site-wide-notice` 的容器,将公告标题和内容显示在其中。
& M1 d9 ^7 i+ ^$ E
# u( o: t0 A4 T. x6 j/ a9 ?- D请注意,本示例仅提供了一个框架,具体实现可能会根据您的需求和实际情况有所不同,您需要根据自己的需要进行修改和调整。同时,为了确保安全性,您还会需要对用户输入的数据进行适当的验证和过滤,例如使用 `sanitize_text_field()` 函数来过滤表单数据。
回复

使用道具 举报

340

主题

529

回帖

3534

积分

管理员

积分
3534
QQ
 楼主| 发表于 2023-5-18 09:26:50 来自手机 | 显示全部楼层
那如果需要发布多条公告,并进行管理,要如何实现?
+ |& Y- \1 L; |- N  Z% p6 r  x# b4 ?) z
您可以创建一个自定义的 WordPress文章类型,例如“公告”,并对其进行自定义化,以实现发布多条公告并进行管理的功能。以下是具体步骤:
7 r8 `2 d0 f$ \  K
2 E9 P, }# H! x$ L& E1. 创建一个自定义的文章类型:在你的主题 `functions.php` 文件中,添加以下代码:' ~/ n- ^' _, M) O# C

. H: R' y. e( b1 W8 y```1 o4 M# a0 D4 |  H& R2 j" ~4 g( l
function create_custom_post_type() {4 _; I9 D+ K7 `) u/ Y
    $args = array(" i& t* M5 o/ N( [0 K" x
        'labels' => array(
, R0 G( ?/ f* I/ M7 }2 {. l% w* {            'name' => '公告',; N" U& a  d4 Z# `; P6 F
            'singular_name' => '公告'
. ^! q7 W+ o0 w9 ^2 q6 K        ),/ i! B. J! W$ ^7 E$ [6 W
        'public' => true,0 H1 q1 L% c, e0 C4 E$ I! W8 g* S
        'has_archive' => true,
; Y- t* n2 l; e: R' a! f: v        'supports' => array('title', 'editor', 'thumbnail', 'excerpt', 'custom-fields', 'revisions'),
3 o3 v, k5 y. q; T, V        'taxonomies' => array('category', 'post_tag'),+ t" J5 y  N' Z( S9 {7 `
        'menu_icon' => 'dashicons-megaphone',- H! k. A$ u) r1 z# P
        'menu_position' => 5,
$ n6 }+ ~8 q# q) e. i; w        'rewrite' => array('slug' => 'site-wide-notices')$ U: \' E2 \% c+ s, `
    );9 A- h8 `" p0 O% k, i0 a
    register_post_type('site-wide-notices', $args);7 n1 O/ @+ l: n. m! p+ {6 t
}; d2 g; [+ z' r
add_action('init', 'create_custom_post_type');
$ z% [7 D/ c  q7 E% f1 J/ B```% ?4 I; i, F, L% f  X: f

# J% w! Y1 k, |( R1 K在示例中,我们注册了一个名为 "site-wide-notices" 的新的文章类型,并定义了文章类型名称、缩略名、文章类型支持的功能、分类法、管理菜单图标等设置。7 {0 s( G3 j2 N4 i  K* v* w
9 x9 }3 n: [8 L- _2 M
2. 在你的 WordPress 后台中创建新文章类型“公告”:现在,你就可以在 WordPress 后台中通过导航到“公告”菜单,来添加、编辑或删除公告了。您可以在编辑公告的页面中添加标题、内容、特色图像或其他自定义的元数据字段。6 m1 E, j/ L- o

2 E& g& H: X% J3. 在主题中显示公告:在您的 WordPress 主题文件中添加以下代码,以在您的网站上显示公告:
5 G8 ]& o- x. F, Y: D1 `  e1 T3 N  B0 g. k% s: l
```6 _7 g9 p* f" E+ r, o4 \
$args = array(
+ q8 C( X8 j' }    'posts_per_page' => 3, // 显示的公告数量
! T" N3 s( T4 ?  s( Q    'post_type' => 'site-wide-notices', // 公告文章类型- |' N2 S/ V+ m/ }& }
    'post_status' => 'publish', // 公告状态, {) ]- A- w. E* [8 O
    'order' => 'DESC' // 排序方式
% t" }4 S- b: \3 m);
" u$ ^/ b3 p7 ?6 s3 o( J) v' b1 X! F; h4 p
$notices = new WP_Query($args);
7 O2 a6 f) i- f* \& Gif ($notices->have_posts()) :
3 |  o- M8 a2 i4 ]$ g& m8 x# K+ {5 c9 ?8 W    while ($notices->have_posts()) : $notices->the_post(); ?>$ b" [* i% @1 V; b8 W
        <div class="notice">  I# `4 M5 P! R3 w! X& ]0 s
            <h3><?php the_title(); ?></h3>2 w2 f: _  v0 f" A0 L
            <div class="notice-content"><?php the_content(); ?></div>( O3 E& J6 a  f  w! Y7 e2 V
        </div>7 v8 l) n  O: A2 k' W: q
    <?php endwhile;
( B$ I$ n" ^" E  M: velse :2 n# a3 v! o1 v* \" M$ n  o
    echo "暂无公告";
' M6 k! J1 H# x9 p, S- ~  Uendif;
$ N0 g, ?: E4 b" ~$ Gwp_reset_query();8 P) d1 h* T) y- W
```
* Q/ h5 i3 ?0 ^" {% f/ g$ ?; n9 r
+ y; d2 ~: k. n; J这段代码将使用 WordPress 的 `WP_Query` 类从公告文章类型中获取最新发布的 3 条公告,并在前端页面中循环遍历并显示公告标题和内容等信息。
( H; ?$ Y% i' U/ M8 ?' j6 F6 [
2 [2 q; k& o  P以上便是实现 Wordpress 后台发布多条全站公告的基本步骤。需要注意的是,自定义文章类型可对应多篇文章,具体根据您的需求进行调整。
回复

使用道具 举报

340

主题

529

回帖

3534

积分

管理员

积分
3534
QQ
 楼主| 发表于 2023-5-18 09:27:55 来自手机 | 显示全部楼层
如果不想修改functions.php,有其他更好的办法吗?6 }/ k5 ?1 _+ _- Y

$ e. G' M, V' H$ z$ H- U如果您不想修改主题 `functions.php` 文件,也可以创建一个自定义插件来添加新的文章类型。
! N, P- I: M: F' J( F4 J& y0 r: U% o
以下是创建自定义插件的步骤:
' [, t& l9 f: D7 [8 H9 h) A( G
1. 创建新插件:在 WordPress 插件目录中创建一个新的子目录,例如 `site-wide-notices-plugin`,然后在该目录中创建一个新的 PHP 文件,例如 `site-wide-notices-plugin.php`,并在文件头部添加必需的标记,例如:! j8 k& e; O$ o5 Y7 o& D7 V
, @* e/ S; _' H) c6 Z. v( s- q: W) A
   ```
5 Y/ s* h" r3 e) F   <?php
* T6 p$ v  N, H: J   /*5 V: [* V4 C! ?+ K
   Plugin Name: Site Wide Notices Plugin
1 M& H9 r# N# u; f4 T( E0 D/ C   Description: Adds a new custom post type for site-wide notices.
( \. o5 e7 z% [   Version: 1.0; A% V2 ]' [" K8 m. h
   Author: Your Name8 c/ [; U8 G) Q- D
   Author URI: http://example.com
0 x$ g+ j, R" d& S( o   */
1 |* w1 z# l2 R3 X/ p7 t" t) E* |$ @! U- X
   // Add plugin code here...9 I2 r( Z/ S! [* f0 S! T, C2 c
   ```
: ]/ @9 e0 U# Y# l" D& i1 y
! }6 _% ^, B' a- \8 @   在示例中,我们创建了一个名为 `Site Wide Notices Plugin` 的新插件,该插件添加了一个新的自定义文章类型,并指定了版本、作者和作者 URI 等元信息。" K1 K$ T8 a0 K3 P( }
) I3 f  I3 w+ D% v- A6 Q) B- ?0 i
2. 在插件中注册新的文章类型:在 PHP 文件中添加以下代码,用于注册一个名为“site-wide-notices”的自定义文章类型:
, n+ ?$ I# `& h+ H! _
. n) ~; E) Y% k8 x+ M1 T2 j   ```! a8 a3 m3 q; T2 A, |9 S2 n" w
   add_action('init', 'create_custom_post_type');
; c9 `% p" f! L1 G! M1 Y   function create_custom_post_type() {3 P0 _0 S: d, q
      $labels = array(
( e4 F/ e% n: v+ Q          'name' => 'Site Wide Notices',
. H7 e) v8 \+ A5 w( C          'singular_name' => 'Site Wide Notice',/ u) d$ l; F- a5 Z3 |
          'add_new' => 'Add New',9 W; z! f9 ^$ g) Q
          'add_new_item' => 'Add New Site Wide Notice',
/ G& h( z% F! J" e  B) P7 A( J, r          'edit_item' => 'Edit Site Wide Notice',
* y1 R! y" a+ M) r6 t0 s+ V2 T8 C          'new_item' => 'New Site Wide Notice',
" |+ x- R- l2 x. [          'view_item' => 'View Site Wide Notice',: ~: E+ [/ V% K3 [
          'search_items' => 'Search Site Wide Notices',3 n' t1 S! U3 p6 C# [' Y8 I
          'not_found' => 'No site-wide notices found',0 d; `, |/ m& J5 N7 f- P
          'not_found_in_trash' => 'No site-wide notices found in trash'9 H8 A/ l; A* ?+ J7 C
      );
" ~8 |% Q9 X' r" p" m, c5 k7 b( N! z4 h/ A5 \: a
      $args = array(4 }: b! s/ X# B1 Q/ Q% C
          'labels' => $labels,/ \/ [% m# F7 {
          'public' => true,
4 \" B8 |7 w) Y; B  r; M  c          'has_archive' => true,9 {. h& P1 R/ t/ Q: d2 ^3 b4 x( g
          'supports' => array('title', 'editor', 'thumbnail', 'excerpt', 'custom-fields', 'revisions'),
# o$ q' s9 C0 H9 @" ?; \, Q: m          'taxonomies' => array('category', 'post_tag'),
' L; b! G) n; F1 |: P8 s, |. y% \* e4 s          'menu_icon' => 'dashicons-megaphone',
- S* Y9 g9 c* h          'menu_position' => 5,
, M# [3 `" ?$ O0 i5 K          'rewrite' => array('slug' => 'site-wide-notices')* Z7 x2 s" m. d' c& v
      );
! G! o& N. l; \# p( Q: ~1 B0 \0 i3 R
      register_post_type('site-wide-notices', $args);
0 f8 Z+ M: H) o2 P6 B: S& B' x/ J   }
7 h9 {4 V5 Z/ ?& t" s, r/ D   ```
' {$ x% u' T8 b# s& B& t7 [# P6 Y1 o* z! ]  u# `
   在示例中,我们使用 `register_post_type()` 函数注册一个新的文章类型,并定义了该文章类型的名称、标签和其他设置。  {6 P9 L4 p6 ]1 \
# ^9 }! `, J/ n8 s: ^
3. 在后台中添加公告编辑页面:您可以使用 `add_meta_box()` 函数在后台中添加公告编辑页面,并自定义字段和元数据,例如:
$ p* ]  B4 P% w( L5 `9 s5 u1 c6 G/ o8 i% N
   ```
$ ~4 f: c  c: k7 P( p7 Y   add_action('add_meta_boxes', 'add_site_wide_notices_boxes');
3 E$ W9 U9 ^. G2 Q: h+ }4 u- i   function add_site_wide_notices_boxes() {5 R' N0 ~( ]- E7 y
      add_meta_box('notice-details', 'Notice Details', 'notice_details_meta_box', 'site-wide-notices', 'normal', 'high');
0 i( Q) [- N, {   }
5 S' ]7 G7 p; u0 v  U: R
' U: \. o: t- t; L   function notice_details_meta_box($post) {2 p0 B7 f* A! c; G* w
      wp_nonce_field(basename(__FILE__), 'notices_nonce');
& H; v1 @  |2 `5 ^/ D1 v+ \      $notice_title = get_post_meta($post->ID, 'notice_title', true);# u+ U$ e8 T8 y2 T; X& u3 j0 a9 E
      $notice_content = get_post_meta($post->ID, 'notice_content', true);
' j8 L* y- v$ S: ?5 C9 Z      ?>8 Z, C# E* G& y/ d/ E; ~
      <p>) l: m; I- R& Q9 x& G" X' D* a+ J! w
          <label for="notice-title">Notice Title</label><br>
$ `: S$ o6 C( m, V          <input type="text" id="notice-title" name="notice_title" style="width: 100%;" value="<?php echo $notice_title; ?>">
" Z; R  j" W% L4 I  w      </p>- v. s- i3 Z9 m* h6 _* s8 p
      <p>4 }0 W6 [7 N! c+ }
          <label for="notice-content">Notice Content</label><br>1 v! W6 w/ r( p, }) ]  V5 S2 E
          <?php wp_editor($notice_content, 'notice-content', array('textarea_rows' => 10)); ?>. T. d& B: h+ h2 r: i
      </p>
" J) E2 O+ B0 K6 ~' ]) G      <?php
8 x+ T$ g, I) q8 u  Y. G   }+ A& a1 f! U3 m

3 ^+ C+ e( F' L! U) t1 X  w/ D   add_action('save_post', 'save_site_wide_notice_meta_box');  H* G3 O" M, ^# J
   function save_site_wide_notice_meta_box($post_id) {5 N* Z# Q2 s( Z' U4 K" Q
      if (!isset($_POST['notices_nonce']) || !wp_verify_nonce($_POST['notices_nonce'], basename(__FILE__)))
( u+ Y$ m* S# w% T9 d- x. {9 Z2 _         return;
: C: g& O7 [0 N5 c      if (defined('DOING_AUTOSAVE') && DOING_AUTOSAVE)- q% M* J) S0 a9 l- B
         return;
6 [; Z$ }" t1 Q5 C! S6 L- T# a+ b$ W$ x4 _" K; \
      if (isset($_POST['notice_title'])) {
6 x3 ^# t9 Y; N0 J7 E          update_post_meta($post_id, 'notice_title', sanitize_text_field($_POST['notice_title']));8 m1 c5 u( X5 Z* \' l' U
      }: r$ p" Z5 `; w3 ~& _5 f( G
      if (isset($_POST['notice_content'])) {
, p* `% E! x$ I) N/ i! J          update_post_meta($post_id, 'notice_content', wp_kses_post($_POST['notice_content']));
0 @% D8 q. r* ?% _- _      }
% |( J# L: G: {; t3 ?( c4 K/ u   }( X( k( @4 m7 ^9 p, G
   ```
4 J! x' x, Z) b! \1 z) x: d
. X' X. K3 v$ v8 ?$ D   在示例中,我们使用 `add_meta_box()` 函数添加了一个名为 `notice-details` 的元框,用于在编辑页面上显示自定义字段和元数据。在 `notice-details_meta_box()` 函数中,我们使用 `wp_editor()` 函数添加了一个可视化编辑器,用于编辑公告内容。在 `save_site_wide_notice_meta_box()` 函数中,我们使用 `update_post_meta()` 函数将公告标题和内容保存到 WordPress 数据库中。
* n1 j4 J; h6 X0 N& O9 E% O
, x2 c) d2 f/ g3 V6 `# D4. 在前端页面中显示公告:在 WordPress 主题文件中添加以下代码,以在您的网站上显示公告:( O. v2 v& M/ c! v. P7 K1 I# {7 q# j
8 @! w" K: h8 b. ]
   ```
. `+ T2 f- ^- T: J2 |# m   $args = array(2 q* @, C; N0 n) j( I# d" S
      'post_type' => 'site-wide-notices',$ D( y$ U8 w" p0 V) r  _
      'posts_per_page' => 3,% p9 P4 N  y/ S2 W. J, i" P
      'order' => 'DESC',
1 \5 O$ W+ A3 _3 I" Z6 z      'orderby' => 'date'
2 [  n; c' F% p/ \   );7 k6 u% y+ g' u) \% e" h
   $query = new WP_Query($args);
- k+ c; ?5 a/ b6 i! z   if ($query->have_posts()) :
: W/ ]% J& [2 w) X      while ($query->have_posts()) : $query->the_post(); ?>
$ Q/ R! {8 }1 T0 _          <div class="notice">
$ l' ~* n+ f+ K: c/ Y% a7 C: O1 }              <h3><?php the_title(); ?></h3>
. K+ }$ [* `0 j6 p( Z2 W0 j              <div class="notice-content"><?php the_content(); ?></div>
. Q# Q" ~' h, n* V2 y4 V! N          </div>/ K0 k& E. `/ U" z; F
      <?php endwhile;
' l# F( ~( I& }      wp_reset_postdata();
( Q! N4 U3 w2 c' r, k   endif;
4 O( c$ _' [% `. I   ```. _! k0 b" o/ ?% W  H0 E2 u9 f- |

/ g9 M) t, {; D' P3 z   在示例中,我们使用 `WP_Query` 类从 `site-wide-notices` 文章类型中获取最近发布的 3 条公告,并在前端页面中循环遍历并显示标题和内容等信息。
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2026-1-21 07:45 , Processed in 0.027509 second(s), 2 queries , Redis On.

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

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