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

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

[复制链接]

347

主题

563

回帖

3675

积分

管理员

积分
3675
QQ
发表于 2023-5-18 08:34:20 来自手机 | 显示全部楼层 |阅读模式
您可以使用以下方法来快速在 WordPress 后台增加一个全站公告的功能:
6 ?) D: d. K2 W* i" r/ T* s
2 r# H' q5 R, f( L, J1. 在 WordPress 插件库中寻找可用的公告插件,例如 WP Notification Bars、Announcements、SSP Elegant Notification Bar 等。" y) G( p( G' V8 J: I, N/ W

6 ]) o" e( B& x2. 安装并激活您选择的插件。您可以在 WordPress 后台的「插件」->「添加新插件」界面中搜索并安装插件,然后在「插件」->「已安装插件」界面中激活它。
% x* E9 |7 S- Y' b8 B% N
1 u2 S( G/ L2 Y" R% z& n# H+ D3. 在插件的设置页面中配置您的公告内容和样式。不同插件的设置选项和功能可能会有所不同,但通常都允许您定义公告的文本、链接、颜色、位置等。+ X( q8 \( i% u# D: T+ h- ^
/ p8 z3 a& A  Y
4. 将公告添加到您的网站上。在插件设置页面中完成公告的设置后,您可以通过编辑 WordPress 主题的代码或使用插件提供的方法将公告添加到您的网站中。不同插件可能使用不同的添加方法,具体请查看详细说明或联系插件作者。
. @% _' E; L% `/ {* l) m  Y# E2 |* e% r% |5 c  d  l
注意,如果您使用的 WordPress 主题已经包含了公告功能,或使用了其他公告插件,可能会导致冲突或功能重复。如果您遇到了这样的问题,请查看主题文档或联系主题作者以获取解决方案。
回复

使用道具 举报

347

主题

563

回帖

3675

积分

管理员

积分
3675
QQ
 楼主| 发表于 2023-5-18 08:34:51 来自手机 | 显示全部楼层
如果是自己开发的话,具体要怎么做?0 p' Y4 p6 ]. \* \% p
& D8 J+ o7 h% m+ E
如果您自己开发 WordPress 主题或插件,并且需要在后台中增加一个发布全站公告的功能,可以按照以下步骤操作:
8 z4 {. i* s  u7 Y( b
3 O; g4 L# O& A0 V; {& N/ t1. 创建一个自定义的 WordPress 后台页面。您可以使用 `add_menu_page()` 或 `add_submenu_page()` 函数来创建一个自定义后台页面,例如:
6 i  m, m3 L3 s# z
* k% q+ G; b  i7 `, u/ t' q) h- D5 e   ```
* ^& ]4 ^7 @3 o  _8 Y4 ^% Q! Q$ L   add_menu_page(# s& b1 r* U8 H  c7 `4 S# m
       '全站公告',
3 W: d# S& w1 \& M4 h( t- H       '全站公告',
' z9 q% \0 Q3 m, ^$ [" K       'manage_options', //需要的用户权限
1 z6 u1 g7 u* [7 o! D       'site-wide-notice', //后台页面的 slug6 X9 C' O0 a" ~2 C1 {
       'render_site_wide_notice_page', //用于渲染后台页面内容的函数/ j; X$ Z) P: L) ]
       'dashicons-megaphone', //用于显示在菜单中的图标0 D3 d8 r$ F' N, g* I( `
       30 //菜单项的位置+ H# A  b( N' V+ |4 k' v
   );' [% b6 ]6 Z' I( E  e- ~8 C( m
   ```  a+ u4 K; _# ]7 u

3 F/ E6 ?: O* J- }* x   在该示例中,我们使用 `add_menu_page()` 函数来创建了一个名为“全站公告”的菜单项,并指定需要的用户权限(`manage_options`),在后台页面的 slug 为 `site-wide-notice`,用于渲染后台页面内容的函数为 `render_site_wide_notice_page`,在菜单中显示的图标为 `dashicons-megaphone`,菜单项的位置为 30。% ^( S0 ~% D  Y" N

# h0 _9 Z! S; C6 z/ j% C3 E2. 编写用于显示和保存全站公告内容的代码。您可以在自定义后台页面中创建一个表单,让用户输入公告的标题、内容等信息,并将这些信息保存到 WordPress 数据库中的某个表中。例如:
- C5 w3 Z$ `# }/ d3 C4 w7 }: s) k" N9 @% E: ~  u/ ?- B, K: _
   ```
- [9 v4 T) X/ Z& O0 _) M2 B   function render_site_wide_notice_page() {: T2 a$ E4 O; M+ d, V
      // 渲染后台页面内容3 Q) R+ J) ^/ z0 ?
      echo '<div class="wrap">
: B9 q3 d7 \5 U, h          <h2>全站公告</h2># N* p: y9 p. G5 t
          <form method="post" action="">, D( q& P: W4 B7 r8 d) U0 `9 p7 y& F
              <label for="title">公告标题:</label>
+ h4 G; e, S: A% P/ X, h3 r              <input type="text" name="title" value="'.get_option('site_wide_notice_title').'"><br><br>* n9 W; m  ]. D7 A3 V, Q/ x
              <label for="content">公告内容:</label>' f! F8 ~; @4 B/ l- o
              <textarea name="content">'.get_option('site_wide_notice_content').'</textarea><br><br>  `, G2 ?$ D/ N4 ~2 ~; J
              <input type="submit" name="submit" value="保存设置">
0 K$ `& t( Q) Y, h1 y          </form>
4 Z3 P+ u7 V2 r# I# m; V% [      </div>';8 }1 b1 V1 ^, V/ ~1 ~
3 `( M& H5 A7 z2 l8 o0 l
      // 处理表单数据
8 H1 p3 v7 }5 v; _( t1 U      if (isset($_POST['submit'])) {
) p4 o& _6 S  {/ w0 {# q  i          update_option('site_wide_notice_title', sanitize_text_field($_POST['title']));
& {7 g9 b$ U. _% Z0 i5 L          update_option('site_wide_notice_content', sanitize_text_field($_POST['content']));$ E9 @% _! ?" P4 {/ B4 i' J
      }$ @: c: u" r! Y$ d
   }
6 Y& B; W& K2 E8 p   ```( c+ Y& y6 o( {& i# g
# q  O) N0 F3 ^6 s2 W& y
   在该示例中,我们创建了一个表单,让用户输入公告的标题和内容,并使用 `update_option()` 函数将这些数据保存到名为 `site_wide_notice_title` 和 `site_wide_notice_content` 的 WordPress 配置项中。如果用户点击提交按钮,则将表单数据更新到配置项。
% L! `9 A8 l) ]1 x' i3 k( S( j. h5 ?0 _: }, Y' y
3. 在 WordPress 主题中显示全站公告。您可以通过在 WordPress 主题的 `header.php` 文件中添加代码,将公告内容显示在网站的顶部或其他位置。例如:! m& ~8 ^4 d, W* Z# @6 g# V4 x

4 h7 [1 Y1 U. e: p6 m( H0 Y   ```' @. T* I  l! r8 G' w) E
   <?php
7 j3 ?5 R0 Y. |/ ~3 |, r   $site_wide_notice_title = get_option('site_wide_notice_title');
" V% d7 n3 Y: @. a/ r   $site_wide_notice_content = get_option('site_wide_notice_content');, `/ C6 ?+ w: w- ~4 B
   if (!empty($site_wide_notice_title) || !empty($site_wide_notice_content)) {
! B2 m6 {3 }  ^  _) s       echo '<div class="site-wide-notice">';
3 r2 r3 w" c/ P$ a) Z       if (!empty($site_wide_notice_title)) {
2 V. i/ g% I7 R' _" a7 t" L6 {, v# p$ n           echo '<h3>'.$site_wide_notice_title.'</h3>';, t/ q+ t* ~6 [( L* E
       }6 X' J& O. q6 |" k0 F7 d8 u
       if (!empty($site_wide_notice_content)) {6 W' R9 {0 s7 \- C) L4 r
           echo '<p>'.$site_wide_notice_content.'</p>';
& r$ Q7 w, B4 e6 x) O9 E       }0 k! q2 _+ c6 H: L$ \: p% E: w; F
       echo '</div>';  O1 v2 V( x6 t, D1 {3 m- P
   }
( y6 d- p  b4 {   ?>, `) t5 c% w5 Y7 E+ ~, r/ O5 J5 f5 R
   ```7 v7 S* z% @7 j/ K5 C5 g

" V0 P3 o% B; d3 n9 c   在该示例中,我们检查 WordPress 配置项中名为 `site_wide_notice_title` 和 `site_wide_notice_content` 的值是否为空,如果不为空,则在 `header.php` 文件中添加一个名为 `site-wide-notice` 的容器,将公告标题和内容显示在其中。) g0 N& Z% T" o" J
4 ?7 e( l6 W- P$ k' S' a
请注意,本示例仅提供了一个框架,具体实现可能会根据您的需求和实际情况有所不同,您需要根据自己的需要进行修改和调整。同时,为了确保安全性,您还会需要对用户输入的数据进行适当的验证和过滤,例如使用 `sanitize_text_field()` 函数来过滤表单数据。
回复

使用道具 举报

347

主题

563

回帖

3675

积分

管理员

积分
3675
QQ
 楼主| 发表于 2023-5-18 09:26:50 来自手机 | 显示全部楼层
那如果需要发布多条公告,并进行管理,要如何实现?
) c0 T7 J! f7 p# Z6 I! e: _2 Y, [6 r4 [
您可以创建一个自定义的 WordPress文章类型,例如“公告”,并对其进行自定义化,以实现发布多条公告并进行管理的功能。以下是具体步骤:5 {0 Q% Y9 m4 h- a$ K/ K
. e& H) g. H! ]
1. 创建一个自定义的文章类型:在你的主题 `functions.php` 文件中,添加以下代码:: ^1 Q* C) \; y- X! f$ P* Y% }
* I  u2 f; K$ s: l
```) H$ B/ u; y! G' B
function create_custom_post_type() {' B0 G! A/ A4 o- q7 o$ D- Z
    $args = array(0 G8 Z2 {7 u2 w
        'labels' => array(
  z; C$ I$ K7 ?7 _5 Q) u' z2 q            'name' => '公告',
6 l0 L  K5 m7 T4 A( h            'singular_name' => '公告'
: n6 p1 Y2 R- P2 w- ^        ),6 w! _- I& ~/ R, H- N) a
        'public' => true,
6 s* }! A8 ~2 a& j0 `7 i8 I5 F        'has_archive' => true,
; z$ ?, u6 V6 S5 U. O        'supports' => array('title', 'editor', 'thumbnail', 'excerpt', 'custom-fields', 'revisions'),
6 c. A1 c  S) b5 V        'taxonomies' => array('category', 'post_tag'),
& Y( t) R+ r# G1 n/ P; j        'menu_icon' => 'dashicons-megaphone',
; X5 I6 g1 o3 L8 M        'menu_position' => 5,
- R) M0 {) F8 J  ?        'rewrite' => array('slug' => 'site-wide-notices')
6 x9 n6 x" I- }; C% V5 {    );+ `. B9 x5 o3 a3 [9 j
    register_post_type('site-wide-notices', $args);) c$ Y  Q' J% x
}8 K4 d. b8 Q% g7 {6 Q
add_action('init', 'create_custom_post_type');
9 b, o0 f/ p5 ?; X$ F/ F  k# q```% V5 ]  s( A+ |0 V$ E
' \; l" M* b3 B! B
在示例中,我们注册了一个名为 "site-wide-notices" 的新的文章类型,并定义了文章类型名称、缩略名、文章类型支持的功能、分类法、管理菜单图标等设置。
/ c& U9 N! G( I
7 ]% k0 c! o; `4 v* G, R2. 在你的 WordPress 后台中创建新文章类型“公告”:现在,你就可以在 WordPress 后台中通过导航到“公告”菜单,来添加、编辑或删除公告了。您可以在编辑公告的页面中添加标题、内容、特色图像或其他自定义的元数据字段。! l, C/ \$ `( a- j

6 S" T" r5 [6 I) `& d6 D  g3. 在主题中显示公告:在您的 WordPress 主题文件中添加以下代码,以在您的网站上显示公告:+ C0 L. B( C, h

. {. B, e$ G! w% Z0 y* v```
# R$ h, U( q! k2 J- f6 X. o$args = array(
; B, A- W+ N  v    'posts_per_page' => 3, // 显示的公告数量0 s( u9 i: C( W: J: P) }) y' ], ]
    'post_type' => 'site-wide-notices', // 公告文章类型
+ Z' {2 C8 {; T, {    'post_status' => 'publish', // 公告状态$ H( r& S: t7 M) A9 j$ T' B" O" f
    'order' => 'DESC' // 排序方式# o! O' p/ N+ P9 l  v2 `
);
1 U4 i- \; ?% O, K* q
0 {7 p- Q' \& C5 Y8 y$notices = new WP_Query($args);0 I% {) U$ F% F5 h* d* ~
if ($notices->have_posts()) :
8 W: b. w. w+ }5 H    while ($notices->have_posts()) : $notices->the_post(); ?>
. q) H" W( w+ d        <div class="notice">* S/ M. B0 O' U& G+ G1 n0 ]
            <h3><?php the_title(); ?></h3>. j0 F- C7 |2 s/ R$ V9 M
            <div class="notice-content"><?php the_content(); ?></div>
* x% z8 O# R1 V- n+ H        </div># D* s& f6 I# Q) A3 X
    <?php endwhile;
* C! C# T2 U  _) B& Uelse :
7 u- g0 l& s, o) @5 X7 q9 v/ A    echo "暂无公告";
0 z( j' |  f! W% O: |endif;$ Z4 V% H9 S# h6 ?  I
wp_reset_query();
9 o& d5 i( i/ [1 a```
1 }9 o% |5 R/ Y, f" C, ^" Z& s0 z- {2 q
这段代码将使用 WordPress 的 `WP_Query` 类从公告文章类型中获取最新发布的 3 条公告,并在前端页面中循环遍历并显示公告标题和内容等信息。
! u2 o/ r  ~4 [$ `. t/ m  W& d2 B0 b
以上便是实现 Wordpress 后台发布多条全站公告的基本步骤。需要注意的是,自定义文章类型可对应多篇文章,具体根据您的需求进行调整。
回复

使用道具 举报

347

主题

563

回帖

3675

积分

管理员

积分
3675
QQ
 楼主| 发表于 2023-5-18 09:27:55 来自手机 | 显示全部楼层
如果不想修改functions.php,有其他更好的办法吗?' {% Z& S/ V4 Y' G: y  ^
% N, k. O9 ]- X3 o
如果您不想修改主题 `functions.php` 文件,也可以创建一个自定义插件来添加新的文章类型。# o' q. G3 a0 S' g# d- Q

. Y  D! G/ o2 `" S5 J" P- L以下是创建自定义插件的步骤:6 }0 j" \4 ^9 [- e
0 z" F1 l. r3 u6 Z5 H, j, v9 O
1. 创建新插件:在 WordPress 插件目录中创建一个新的子目录,例如 `site-wide-notices-plugin`,然后在该目录中创建一个新的 PHP 文件,例如 `site-wide-notices-plugin.php`,并在文件头部添加必需的标记,例如:
3 @: h9 N( i; k& e/ P+ D$ t3 O& U$ _; f+ i
   ```
2 n0 d! z+ s( _8 L$ ^( M4 p   <?php
# `( e; g7 e, w6 a6 x   /*
+ V+ j8 Z! ~* r   Plugin Name: Site Wide Notices Plugin) s* e; R) m" {- G
   Description: Adds a new custom post type for site-wide notices.
. N! o4 R8 B# p* ~   Version: 1.0
1 z* t; y8 o, r# w9 X* c   Author: Your Name6 n# J3 N2 i# h; b# K. ^
   Author URI: http://example.com
/ l& ?$ {& ]: y3 _   */, `) _! T& m3 }' ^  {
$ L+ ~* W+ K! O8 W
   // Add plugin code here...( k  D5 V- h5 [" u4 Z6 f! F
   ```
2 Q0 s% g9 n7 d3 R" F7 k4 f7 b) p- X% h* s2 @6 n; v7 q/ Q5 R
   在示例中,我们创建了一个名为 `Site Wide Notices Plugin` 的新插件,该插件添加了一个新的自定义文章类型,并指定了版本、作者和作者 URI 等元信息。
; e7 u  }/ I$ J5 F$ a0 H
( h  Y, ~0 q# u+ v5 b( j3 ~$ f% S2. 在插件中注册新的文章类型:在 PHP 文件中添加以下代码,用于注册一个名为“site-wide-notices”的自定义文章类型:
& a9 A" G* K* Q$ [  K
' I' g& k. [2 F+ y3 Q6 H; r   ```: x, e" O6 |' C' y% d$ N! n2 b
   add_action('init', 'create_custom_post_type');
# F0 I# t3 w, x   function create_custom_post_type() {
5 E, ]* Y/ e' \6 E- [9 \( X7 H* m      $labels = array(
5 {: \9 X' H/ E% t4 ~) p- V          'name' => 'Site Wide Notices',& [" E" w$ u4 \- z5 ]
          'singular_name' => 'Site Wide Notice',  ]6 X" b, u/ @2 C" V
          'add_new' => 'Add New',6 h2 U% E5 Q9 `+ k1 F7 z8 W. e
          'add_new_item' => 'Add New Site Wide Notice',3 q  f# W7 x5 H3 l
          'edit_item' => 'Edit Site Wide Notice',3 V$ p1 @# `( c' C4 `
          'new_item' => 'New Site Wide Notice',0 Z; s2 r5 D% r5 S, x; R0 b
          'view_item' => 'View Site Wide Notice',% `  i# G2 U  N# g. K9 N
          'search_items' => 'Search Site Wide Notices',* X" A# s$ w* U. I% ~( j: _
          'not_found' => 'No site-wide notices found',; u; A8 z( K7 \4 n4 c
          'not_found_in_trash' => 'No site-wide notices found in trash'1 w4 n  F- A2 U0 `/ X3 V+ M- a" u: j
      );! Q' Z2 D3 g, \, J' v  ?9 H6 c' c

. w: A6 Z% p% t! S' C& ~3 s      $args = array(* K9 [" V. K1 D. @+ N
          'labels' => $labels,1 {) Y5 l- v2 k# I$ l8 c
          'public' => true,
  \: y9 g& Y1 v0 S* Q          'has_archive' => true,
; F, \- U1 R! P5 F          'supports' => array('title', 'editor', 'thumbnail', 'excerpt', 'custom-fields', 'revisions'),) q2 J% d; }7 j( d/ n
          'taxonomies' => array('category', 'post_tag'),
# J, C3 Z* R2 Z          'menu_icon' => 'dashicons-megaphone',
4 o) ]# w9 e  H3 a+ f# x0 w          'menu_position' => 5,
! }' B9 G0 U9 K8 K" p          'rewrite' => array('slug' => 'site-wide-notices')
! I' ^, e9 x3 e$ v+ r. {      );% K# \  \# o' m# g

' X0 d1 r) `( G* Z      register_post_type('site-wide-notices', $args);4 A# _8 y9 w) O& k& j! P
   }0 C- u* v* Y+ P! ^( {; |
   ```
' q* b* l( A  R: ?8 V+ z: |: i# n5 D: x
   在示例中,我们使用 `register_post_type()` 函数注册一个新的文章类型,并定义了该文章类型的名称、标签和其他设置。1 i# s3 K/ z7 Z9 T, H8 x( S; q

! R* S5 y% }5 w* a3. 在后台中添加公告编辑页面:您可以使用 `add_meta_box()` 函数在后台中添加公告编辑页面,并自定义字段和元数据,例如:
7 T. o+ C: q: Z2 \# \- I
5 N2 j: Z* u5 U. Z* W5 I& F2 u   ```& Q4 J* R3 T) y  d, T1 s5 P& e6 @
   add_action('add_meta_boxes', 'add_site_wide_notices_boxes');0 n- f- p4 y0 K+ p) n. Z0 W+ ~/ g: q
   function add_site_wide_notices_boxes() {9 m8 H) C# ^$ v  i
      add_meta_box('notice-details', 'Notice Details', 'notice_details_meta_box', 'site-wide-notices', 'normal', 'high');
9 J; ^9 J+ F+ I1 O4 f% c   }5 _$ Q8 p! T0 P7 T9 _: ?* a
6 x! l4 o/ l& z9 W0 V; K3 `. N
   function notice_details_meta_box($post) {
2 C9 ]" K- c* e( b, T  W: W2 I" f7 X, P      wp_nonce_field(basename(__FILE__), 'notices_nonce');
" C' s. ^4 M8 F% O. E      $notice_title = get_post_meta($post->ID, 'notice_title', true);, L2 b8 P2 K. d% `, S$ d9 [
      $notice_content = get_post_meta($post->ID, 'notice_content', true);" S; S* `: L3 T. A& A4 _) g- q
      ?>
& a, C5 f8 c, P% g0 S1 o; k! o      <p>
' G( b' ^$ G2 a1 K          <label for="notice-title">Notice Title</label><br>
& J2 v2 n( J' w          <input type="text" id="notice-title" name="notice_title" style="width: 100%;" value="<?php echo $notice_title; ?>">  W# M3 i9 l! }
      </p>
% v4 _* G. J+ i      <p>- W% h3 f! ^7 S# C
          <label for="notice-content">Notice Content</label><br>
% U) F, v4 P) W          <?php wp_editor($notice_content, 'notice-content', array('textarea_rows' => 10)); ?>
5 e  l0 W! z/ K6 i      </p>: t' l* O. _) p
      <?php  `0 }$ @8 B8 W% n
   }
1 X4 H3 ]" h7 ^: q# K
+ u4 _2 @3 v2 ~0 k. V, o8 N  D   add_action('save_post', 'save_site_wide_notice_meta_box');, M. Y2 `$ `  y
   function save_site_wide_notice_meta_box($post_id) {
3 x8 t1 C+ m% G. @. f7 a) `7 W      if (!isset($_POST['notices_nonce']) || !wp_verify_nonce($_POST['notices_nonce'], basename(__FILE__)))
: J% s& @! O6 J/ d9 i         return;' s. R0 y! ^3 g1 J& Y. i% H
      if (defined('DOING_AUTOSAVE') && DOING_AUTOSAVE)
; a& r: s/ X+ l; H. K: B         return;
4 }( A: U7 m6 p: n  S! w( u
& v' G0 S4 s1 ~- S/ X      if (isset($_POST['notice_title'])) {
  A" s3 o6 R( O9 m6 }$ R- A5 n          update_post_meta($post_id, 'notice_title', sanitize_text_field($_POST['notice_title']));7 H5 q7 X6 q& G  B# k
      }
* G; H/ c9 r* d% w$ x, ]  u7 C1 U0 J      if (isset($_POST['notice_content'])) {
4 q# K0 n: w' t( o          update_post_meta($post_id, 'notice_content', wp_kses_post($_POST['notice_content']));% H$ O7 X8 i- M9 R0 R) z
      }7 a/ V2 i9 `6 S
   }% U( @; _$ `) {- t
   ```! P+ c$ ^6 m5 K7 p3 T! P6 k

1 ^1 n% _& l" o   在示例中,我们使用 `add_meta_box()` 函数添加了一个名为 `notice-details` 的元框,用于在编辑页面上显示自定义字段和元数据。在 `notice-details_meta_box()` 函数中,我们使用 `wp_editor()` 函数添加了一个可视化编辑器,用于编辑公告内容。在 `save_site_wide_notice_meta_box()` 函数中,我们使用 `update_post_meta()` 函数将公告标题和内容保存到 WordPress 数据库中。
3 u+ W5 n. d" @2 C$ P) \& V' H) w: g& l6 @6 u
4. 在前端页面中显示公告:在 WordPress 主题文件中添加以下代码,以在您的网站上显示公告:: N2 x  M4 f) r
9 J" ?) A& h2 }& f. n# T& w
   ```
- e' s& [" `! _   $args = array(
$ s: c& q2 X  X: ~8 e      'post_type' => 'site-wide-notices',
/ E6 X4 D& y5 G8 h" X2 X6 q      'posts_per_page' => 3,# J, D! Z% M+ ]. k% d
      'order' => 'DESC',! a. H  w6 |- y0 p- ^7 L
      'orderby' => 'date'
3 F; g8 n7 h1 N' m   );
% r# o. q6 B0 O7 n  I   $query = new WP_Query($args);
& F* H- T3 w1 }& d; R   if ($query->have_posts()) :
9 Q% W/ E* Z# A+ M% w      while ($query->have_posts()) : $query->the_post(); ?>: i2 l: S5 E( ]7 F2 ^' F, J2 ^
          <div class="notice">% X) K( L" b8 `0 N- {+ ?! [9 B4 X7 ^
              <h3><?php the_title(); ?></h3>  a) b# u' G6 g2 l4 `: A, S+ t
              <div class="notice-content"><?php the_content(); ?></div>) f- d2 f% O2 g- g
          </div>
) ~' }( E1 |, I' o      <?php endwhile;
! P) F; l% a1 c" o      wp_reset_postdata();5 W& b. F2 L- m" E$ B! k6 U
   endif;
# x1 Q' \. E8 Y8 [, h7 y& Z   ```
" s9 F# N. E4 R, s7 m& \0 M9 R
   在示例中,我们使用 `WP_Query` 类从 `site-wide-notices` 文章类型中获取最近发布的 3 条公告,并在前端页面中循环遍历并显示标题和内容等信息。
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2026-2-7 10:47 , Processed in 0.011894 second(s), 2 queries , Redis On.

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

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