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

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

[复制链接]

338

主题

520

回帖

3456

积分

管理员

积分
3456
QQ
发表于 2023-5-18 08:34:20 来自手机 | 显示全部楼层 |阅读模式
您可以使用以下方法来快速在 WordPress 后台增加一个全站公告的功能:! d* _# |/ q! m7 g2 Y
9 I- C% i/ W% A( q4 z2 p. k
1. 在 WordPress 插件库中寻找可用的公告插件,例如 WP Notification Bars、Announcements、SSP Elegant Notification Bar 等。
/ m, u4 u. w. z+ `6 f
6 n# T5 O& i4 u, ^5 H+ k$ S( ^/ S2. 安装并激活您选择的插件。您可以在 WordPress 后台的「插件」->「添加新插件」界面中搜索并安装插件,然后在「插件」->「已安装插件」界面中激活它。& `! q" T9 q; H/ j1 z
' y1 K' h+ K: ^* k
3. 在插件的设置页面中配置您的公告内容和样式。不同插件的设置选项和功能可能会有所不同,但通常都允许您定义公告的文本、链接、颜色、位置等。% D7 u: U6 x2 M

3 j4 Q( q& K$ n- q; I# W/ ^4. 将公告添加到您的网站上。在插件设置页面中完成公告的设置后,您可以通过编辑 WordPress 主题的代码或使用插件提供的方法将公告添加到您的网站中。不同插件可能使用不同的添加方法,具体请查看详细说明或联系插件作者。) E- F" Q1 S& X% q! Y8 \
" s! J0 E2 Q: @
注意,如果您使用的 WordPress 主题已经包含了公告功能,或使用了其他公告插件,可能会导致冲突或功能重复。如果您遇到了这样的问题,请查看主题文档或联系主题作者以获取解决方案。
回复

使用道具 举报

338

主题

520

回帖

3456

积分

管理员

积分
3456
QQ
 楼主| 发表于 2023-5-18 08:34:51 来自手机 | 显示全部楼层
如果是自己开发的话,具体要怎么做?
) c$ [+ t6 U' s  ^2 e/ p9 C( g+ a# Z7 m  c; K( ~
如果您自己开发 WordPress 主题或插件,并且需要在后台中增加一个发布全站公告的功能,可以按照以下步骤操作:
, M1 O# {* l. n/ J, H! c
' s1 P% o* U- ~" [1. 创建一个自定义的 WordPress 后台页面。您可以使用 `add_menu_page()` 或 `add_submenu_page()` 函数来创建一个自定义后台页面,例如:
- i2 z8 T/ _  n9 l  r& m% O/ _7 h5 ~
   ```
6 L/ ?9 |; c% O7 d( B' p   add_menu_page(3 V, Z# o& |* M# `" W3 h2 a
       '全站公告',0 J9 C. I; c4 ?* R7 a7 W8 m
       '全站公告',1 r: X; A3 m% Q3 s
       'manage_options', //需要的用户权限1 P9 ?2 M" m7 e
       'site-wide-notice', //后台页面的 slug7 H# i2 b6 z+ i& t
       'render_site_wide_notice_page', //用于渲染后台页面内容的函数
$ D9 Z3 ~3 t8 W' l4 P0 M       'dashicons-megaphone', //用于显示在菜单中的图标9 L6 D' u6 G- `& j
       30 //菜单项的位置
3 y" n5 B# F0 r3 C   );
& F" v" c' `+ s8 I5 _: S   ```
- S4 C% [6 c" x' X# D; C  A# V# w9 D- x2 [
   在该示例中,我们使用 `add_menu_page()` 函数来创建了一个名为“全站公告”的菜单项,并指定需要的用户权限(`manage_options`),在后台页面的 slug 为 `site-wide-notice`,用于渲染后台页面内容的函数为 `render_site_wide_notice_page`,在菜单中显示的图标为 `dashicons-megaphone`,菜单项的位置为 30。5 O0 j0 A/ e1 x0 B% }! ^% o

0 {0 }  f# b7 g5 Q' p8 u  ^. p: h2. 编写用于显示和保存全站公告内容的代码。您可以在自定义后台页面中创建一个表单,让用户输入公告的标题、内容等信息,并将这些信息保存到 WordPress 数据库中的某个表中。例如:
% z7 L5 h  z# S- d( X: U( L0 [
. M1 K# X  t: c* n. W/ ~; s   ```# ^' P3 U2 I) L' l" B
   function render_site_wide_notice_page() {
4 J( ], \* `7 F6 k- \      // 渲染后台页面内容9 Y' G3 k* j; O  o* c2 ?; P1 I
      echo '<div class="wrap">$ d: a# f) Z( }
          <h2>全站公告</h2>0 |8 g1 N* J4 l6 y" `& q8 U
          <form method="post" action="">
5 `: `( K* P8 V& s; u              <label for="title">公告标题:</label>- d3 @2 B% N" Z( u" ]
              <input type="text" name="title" value="'.get_option('site_wide_notice_title').'"><br><br>' e$ s% Z* P3 }) V" D6 s% V
              <label for="content">公告内容:</label>4 }/ e4 _: Q) K* s3 c
              <textarea name="content">'.get_option('site_wide_notice_content').'</textarea><br><br>& C/ U! N& G* p8 ~4 p
              <input type="submit" name="submit" value="保存设置">" f8 M- e* ]  A9 q
          </form>) Z! q' [( B( }- i* S; B
      </div>';
0 k# r/ x* K3 w& M
. Y/ K* o/ _9 [! ]7 c9 i; p* ^! Y      // 处理表单数据. N8 l! I( W+ [# T) \' _5 S: U
      if (isset($_POST['submit'])) {
4 N& H2 G+ S3 l  t+ g6 O  g- [          update_option('site_wide_notice_title', sanitize_text_field($_POST['title']));9 N, G: k0 E5 f3 x3 o0 a+ Y
          update_option('site_wide_notice_content', sanitize_text_field($_POST['content']));8 u( w$ W3 E/ @3 K
      }
/ H! v& C9 h/ I* n! `   }
  x7 J4 n& f0 h. Z   ```
# ~! e8 h2 y4 N2 u7 t6 D: M5 T& \
: k4 b( s# Y* R/ o" |   在该示例中,我们创建了一个表单,让用户输入公告的标题和内容,并使用 `update_option()` 函数将这些数据保存到名为 `site_wide_notice_title` 和 `site_wide_notice_content` 的 WordPress 配置项中。如果用户点击提交按钮,则将表单数据更新到配置项。7 b& r+ c) x0 h% ~+ O6 J9 R. z
! g+ C0 p* S8 y( q$ `. s, l
3. 在 WordPress 主题中显示全站公告。您可以通过在 WordPress 主题的 `header.php` 文件中添加代码,将公告内容显示在网站的顶部或其他位置。例如:# A  }8 N. N& @

- v. O8 ?. J  _9 I+ J, K   ```6 L3 i0 }$ f# o1 x' v' |& W
   <?php3 e' J2 F7 X) @* f( r. f
   $site_wide_notice_title = get_option('site_wide_notice_title');$ a& d. |( p$ U* Q- {
   $site_wide_notice_content = get_option('site_wide_notice_content');! |- |5 ~, b2 L2 V  i4 I
   if (!empty($site_wide_notice_title) || !empty($site_wide_notice_content)) {, ^+ B; {7 y; \, Y7 h9 W% G
       echo '<div class="site-wide-notice">';
; U) l% l$ C  b( g) U0 W* a# \       if (!empty($site_wide_notice_title)) {
+ Z; K, q8 D, Y5 T' `$ k7 F6 R           echo '<h3>'.$site_wide_notice_title.'</h3>';
. c2 b* e( X. q$ J6 R       }. p/ v$ b, S* F. @3 u0 G$ V7 ?
       if (!empty($site_wide_notice_content)) {" \- o+ f! B- g3 b6 z. W- P
           echo '<p>'.$site_wide_notice_content.'</p>';# H9 n! F" ^: C
       }
: ~& k4 M+ M) X6 y       echo '</div>';5 ~* j8 ]4 [/ v9 l
   }
$ A. @( q8 C2 x: k   ?>
/ F! p1 F3 j, ^  i+ I7 _7 ^   ```4 f7 M. I" d" t
' }- a- G9 m3 r  d2 ?
   在该示例中,我们检查 WordPress 配置项中名为 `site_wide_notice_title` 和 `site_wide_notice_content` 的值是否为空,如果不为空,则在 `header.php` 文件中添加一个名为 `site-wide-notice` 的容器,将公告标题和内容显示在其中。
3 {' @  V5 j( T. |$ T% y2 i  k* `9 G( [& T% \4 {
请注意,本示例仅提供了一个框架,具体实现可能会根据您的需求和实际情况有所不同,您需要根据自己的需要进行修改和调整。同时,为了确保安全性,您还会需要对用户输入的数据进行适当的验证和过滤,例如使用 `sanitize_text_field()` 函数来过滤表单数据。
回复

使用道具 举报

338

主题

520

回帖

3456

积分

管理员

积分
3456
QQ
 楼主| 发表于 2023-5-18 09:26:50 来自手机 | 显示全部楼层
那如果需要发布多条公告,并进行管理,要如何实现?( q0 Y& s$ s4 v' w" e& ^% g4 n

$ v3 T5 _. m; _1 [( j您可以创建一个自定义的 WordPress文章类型,例如“公告”,并对其进行自定义化,以实现发布多条公告并进行管理的功能。以下是具体步骤:2 ?9 t# j6 e* f& e5 b' z" l

1 S1 n2 ?8 m& P) `1. 创建一个自定义的文章类型:在你的主题 `functions.php` 文件中,添加以下代码:
6 i4 [6 F3 t: }  f% I1 H! a  Z9 w# _' ?6 z  l) G3 Z! |
```5 G. C: L- }$ y/ H+ D- L$ r
function create_custom_post_type() {
' S5 n6 \2 i1 o9 c    $args = array(  D5 i6 B2 J9 j0 S
        'labels' => array(
& D7 i' C3 ]! n) o  U- c; P            'name' => '公告',
; Q& v: x; ?; U6 q            'singular_name' => '公告'
9 i6 D% W9 }0 S        ),: M! h6 r) ?" t; v% J" z$ A
        'public' => true,  x3 A2 o' l8 ^2 k$ a# W; I* }
        'has_archive' => true,
9 a. e4 W" {# ~! P& h* ^        'supports' => array('title', 'editor', 'thumbnail', 'excerpt', 'custom-fields', 'revisions'),
, W3 A2 K/ @1 ]0 V1 K- U/ {# G. X        'taxonomies' => array('category', 'post_tag'),
$ F% c5 O$ [. m6 L+ s) {        'menu_icon' => 'dashicons-megaphone',# c/ U& y* k" S" N/ _
        'menu_position' => 5,
- q. ]/ O2 u$ @" m3 O        'rewrite' => array('slug' => 'site-wide-notices')
) |0 b# F% f( c0 s    );
) x/ F- P- ^" N+ {7 P" T    register_post_type('site-wide-notices', $args);" b1 P: _& F$ j* J% v7 B
}
/ L! m  v# S% L9 q0 u' badd_action('init', 'create_custom_post_type');8 K. _, F9 f( A- S
```
2 w* E) W" `$ S  u$ n; q! u' @. i8 q
在示例中,我们注册了一个名为 "site-wide-notices" 的新的文章类型,并定义了文章类型名称、缩略名、文章类型支持的功能、分类法、管理菜单图标等设置。, x: @5 l, t1 y
" p- {0 g( B* Z5 F: R
2. 在你的 WordPress 后台中创建新文章类型“公告”:现在,你就可以在 WordPress 后台中通过导航到“公告”菜单,来添加、编辑或删除公告了。您可以在编辑公告的页面中添加标题、内容、特色图像或其他自定义的元数据字段。3 C& K; m! K& Y( o+ Z1 F$ i

% s4 R0 T4 }" Z! d! K* ~3 `( z' v, `3. 在主题中显示公告:在您的 WordPress 主题文件中添加以下代码,以在您的网站上显示公告:' J! d; Y- j6 S% x* F# q8 w2 ^
5 a( N- f+ D1 l8 }/ A0 S7 ~! Q
```
0 [, {+ W# ]$ ^! j3 u3 z6 j; {$args = array(3 X, M, G0 R6 K) p' a0 T
    'posts_per_page' => 3, // 显示的公告数量$ Z# c% S; Z+ ~7 `. E7 F; d; q$ j
    'post_type' => 'site-wide-notices', // 公告文章类型
  Q) g# Z, _6 \5 d3 w! U2 ~/ R    'post_status' => 'publish', // 公告状态+ p! h& v+ g# t5 g7 N
    'order' => 'DESC' // 排序方式6 P5 @6 c  l5 f( G5 f: f
);, ]7 L0 N7 o9 m
- C% y/ t' B8 i4 U
$notices = new WP_Query($args);; V5 e8 l, I5 N# Q% q
if ($notices->have_posts()) :
/ `; U* w1 `- v    while ($notices->have_posts()) : $notices->the_post(); ?>5 {' ~# n" C/ ?/ a9 @
        <div class="notice">$ s6 H+ t$ |  X# `" Z$ w" i
            <h3><?php the_title(); ?></h3>" v+ p- z$ ~# g+ s6 L8 q3 m
            <div class="notice-content"><?php the_content(); ?></div>( `* e5 h; f+ Y0 B  m/ _5 p
        </div>2 a4 _7 u' b: A  [: i$ @1 l
    <?php endwhile;8 R& U) C$ p+ F1 S4 |
else :
/ B. B, i# g. C# m; @    echo "暂无公告";
2 y% }. |" h* H6 l" zendif;/ j+ y5 |+ \# \5 R! G1 j+ z( h+ c
wp_reset_query();
: t$ A& O1 M4 D```2 Q9 i4 z2 r: D. c  m' E
2 I4 F4 M7 Z, S8 n# B: I
这段代码将使用 WordPress 的 `WP_Query` 类从公告文章类型中获取最新发布的 3 条公告,并在前端页面中循环遍历并显示公告标题和内容等信息。( V. e/ X, r3 g5 h4 p# L% f- u
& X" i) k9 x- \2 \) C2 `
以上便是实现 Wordpress 后台发布多条全站公告的基本步骤。需要注意的是,自定义文章类型可对应多篇文章,具体根据您的需求进行调整。
回复

使用道具 举报

338

主题

520

回帖

3456

积分

管理员

积分
3456
QQ
 楼主| 发表于 2023-5-18 09:27:55 来自手机 | 显示全部楼层
如果不想修改functions.php,有其他更好的办法吗?
: {( z% s# t3 U, H
& Y3 t) a2 C, [6 g" R7 P/ v" f如果您不想修改主题 `functions.php` 文件,也可以创建一个自定义插件来添加新的文章类型。
" c: U  T  p! ]: e. Q, u1 Q+ N2 y1 a! ]
以下是创建自定义插件的步骤:) i8 `4 K, V9 }
9 o' Z+ k; C0 x6 r9 x
1. 创建新插件:在 WordPress 插件目录中创建一个新的子目录,例如 `site-wide-notices-plugin`,然后在该目录中创建一个新的 PHP 文件,例如 `site-wide-notices-plugin.php`,并在文件头部添加必需的标记,例如:4 H, c2 a/ v+ N9 F2 Q/ g5 M, |) _
+ r; U5 ^/ g7 p' u4 q3 R6 I
   ```4 _8 \" b; e: G/ V5 n+ t8 A
   <?php6 I3 b& v) E) U3 \/ Q
   /*: ?2 }7 W" }7 e5 w  i
   Plugin Name: Site Wide Notices Plugin6 T, a( O' ~6 _* S6 x
   Description: Adds a new custom post type for site-wide notices.+ ]6 M5 Y6 t. k/ u7 C3 m7 _* N
   Version: 1.0
$ y5 ~2 U- d8 r   Author: Your Name( x! e' ?6 F  i& m9 b( ]
   Author URI: http://example.com
7 R7 L; }5 G1 B# B. G' V. k2 {   */
1 u  M. L: @! t/ B" v2 ^8 v
" M1 R9 i* Q  B0 ~   // Add plugin code here...
$ j5 C0 m* w- a& U" n2 X   ```" l% {5 x; W+ x9 z7 Y

( K# k% Q. g! T! F2 z' C   在示例中,我们创建了一个名为 `Site Wide Notices Plugin` 的新插件,该插件添加了一个新的自定义文章类型,并指定了版本、作者和作者 URI 等元信息。6 f8 g$ A; g& p; c6 H# G9 j
: j7 B7 [+ r3 D7 P: N
2. 在插件中注册新的文章类型:在 PHP 文件中添加以下代码,用于注册一个名为“site-wide-notices”的自定义文章类型:% @+ O: M) S5 O- H# k- n

5 c8 M0 ~$ L6 p  n   ```7 m& D" A! f, F  Z
   add_action('init', 'create_custom_post_type');
: w/ [# M/ a* \8 g  m, ~# _% `   function create_custom_post_type() {
  H* ]& d# ]0 u# y& n6 U      $labels = array(  K& @4 I2 R6 K7 B8 }
          'name' => 'Site Wide Notices',
- H; I  N3 U* {3 A; F8 v          'singular_name' => 'Site Wide Notice',0 Q) U) [4 I  ^: a
          'add_new' => 'Add New',
' T5 q# I" g% v' O! c/ }/ {          'add_new_item' => 'Add New Site Wide Notice',
8 O9 l0 Q* O4 y" t6 g2 b          'edit_item' => 'Edit Site Wide Notice',; j' ^8 _4 S8 l  b- K/ L: z& [
          'new_item' => 'New Site Wide Notice',1 {5 |8 l& L/ e# F5 k9 |
          'view_item' => 'View Site Wide Notice',0 @, g  }0 f" ?) K  u) Z* i
          'search_items' => 'Search Site Wide Notices',
. J7 T4 G" O3 u1 |+ l          'not_found' => 'No site-wide notices found',5 k; D0 H1 X; T; Z
          'not_found_in_trash' => 'No site-wide notices found in trash'
" m2 Y, a/ p+ \0 g0 o/ F9 ^      );( Y% l! j9 s' `: i6 P$ C" E

# T: W& t/ u4 V      $args = array(
" B! H- w5 H6 }# i          'labels' => $labels,5 h8 M- f0 S* r8 R
          'public' => true,6 l5 X; Z* h" W/ N5 R4 w+ c
          'has_archive' => true,
5 ~$ J$ e& S& |$ P          'supports' => array('title', 'editor', 'thumbnail', 'excerpt', 'custom-fields', 'revisions'),$ C  S! g/ ^; F9 c
          'taxonomies' => array('category', 'post_tag'),8 |' R3 _% U8 G6 J9 v) F
          'menu_icon' => 'dashicons-megaphone',& T9 R3 P% e, q1 D. {) y' m
          'menu_position' => 5,  ^% b2 T7 t0 h
          'rewrite' => array('slug' => 'site-wide-notices')$ z8 ]  L0 ]( c: q+ |2 k
      );
7 Y* K  O& K) B) y) `
, X& x/ m0 Y, ], b! C/ X      register_post_type('site-wide-notices', $args);+ o& u5 l3 Y6 D: ]* f, {
   }7 R8 L  Y8 Z. F* @
   ```! S& v4 B, E7 [& K+ J: }

8 Z" V" t6 B( x# A- u   在示例中,我们使用 `register_post_type()` 函数注册一个新的文章类型,并定义了该文章类型的名称、标签和其他设置。( g7 {& l6 i& m" i* Q

+ R+ P4 A0 [6 a3. 在后台中添加公告编辑页面:您可以使用 `add_meta_box()` 函数在后台中添加公告编辑页面,并自定义字段和元数据,例如:
! W! p- L! _) U: _; R) f6 `7 K) j% m
" \' m* `( V# |) P6 B( b- Y  K   ```1 A8 D" P! N, h. l
   add_action('add_meta_boxes', 'add_site_wide_notices_boxes');
; w2 F/ o1 X2 w   function add_site_wide_notices_boxes() {
1 t$ Y, h% e: J4 \; e1 d3 P      add_meta_box('notice-details', 'Notice Details', 'notice_details_meta_box', 'site-wide-notices', 'normal', 'high');% j* [# ]! v* W. X7 `, J
   }
! i& I: U$ F' Z% Y, [$ o! A4 @% s) _" C
   function notice_details_meta_box($post) {
) B3 J4 k/ u" K+ D$ ?8 s      wp_nonce_field(basename(__FILE__), 'notices_nonce');
' ^: X! B% y& W      $notice_title = get_post_meta($post->ID, 'notice_title', true);
& Y3 r  J9 [3 ]      $notice_content = get_post_meta($post->ID, 'notice_content', true);
( |+ p  t- V4 H  a' _7 n      ?>+ R( I/ q8 h4 S
      <p>  V" r8 m$ R% C  ?- H
          <label for="notice-title">Notice Title</label><br>9 M+ v. i: B! q' D; C" r
          <input type="text" id="notice-title" name="notice_title" style="width: 100%;" value="<?php echo $notice_title; ?>">
( p% k& _: u1 R3 |      </p>
3 b) o. W+ X9 u8 M  A  H      <p>
. _1 r+ r% i, B/ n& f/ S. H0 q          <label for="notice-content">Notice Content</label><br>& f1 }  O1 _1 \) h, ?' h2 S
          <?php wp_editor($notice_content, 'notice-content', array('textarea_rows' => 10)); ?>* E- @( L8 g; S$ }! l0 X
      </p>$ I  P9 S4 T9 I! `) a" _% R; D
      <?php
3 @6 J: y7 K* t5 B   }
; H7 u  W* a5 W! U( p
, N8 u0 x1 K4 a* a   add_action('save_post', 'save_site_wide_notice_meta_box');
) O/ B, A# u* v% Z! g   function save_site_wide_notice_meta_box($post_id) {
; K$ g6 n8 p" g% P      if (!isset($_POST['notices_nonce']) || !wp_verify_nonce($_POST['notices_nonce'], basename(__FILE__)))
4 f% Z& `' C# Z2 X: {         return;
2 |1 ?8 g5 |( [+ v( [8 Q% r      if (defined('DOING_AUTOSAVE') && DOING_AUTOSAVE)
8 ^/ v) F# }0 c6 R, z+ V         return;
3 {1 ]/ |0 I/ _! [  r/ ^: R9 j! Y1 m
      if (isset($_POST['notice_title'])) {
8 k7 a/ e/ b0 f. J) p          update_post_meta($post_id, 'notice_title', sanitize_text_field($_POST['notice_title']));% u+ y! \; S$ p9 E5 m* |
      }' ]" q: a7 p7 I) G  |
      if (isset($_POST['notice_content'])) {
" h! T. \; l, Y- Z          update_post_meta($post_id, 'notice_content', wp_kses_post($_POST['notice_content']));
7 R) J# e2 e. K- p" c  |1 b8 [# Z      }
' Q7 Y0 n1 X4 `2 e   }6 B( w) x1 V& l5 a5 V9 g& n
   ```/ w" r$ D2 y& t) e
0 ?3 v" O3 D, D1 ^5 W
   在示例中,我们使用 `add_meta_box()` 函数添加了一个名为 `notice-details` 的元框,用于在编辑页面上显示自定义字段和元数据。在 `notice-details_meta_box()` 函数中,我们使用 `wp_editor()` 函数添加了一个可视化编辑器,用于编辑公告内容。在 `save_site_wide_notice_meta_box()` 函数中,我们使用 `update_post_meta()` 函数将公告标题和内容保存到 WordPress 数据库中。9 l9 ~, {$ d1 G5 U. S4 z
: n6 g* [3 |1 y; l
4. 在前端页面中显示公告:在 WordPress 主题文件中添加以下代码,以在您的网站上显示公告:  C, F# ~2 e' b" C9 _
4 i: Y( i% m% b$ e  g! M
   ```
) b; J( X; l8 C: s   $args = array(
  D' R* J& A. z1 _9 M- y      'post_type' => 'site-wide-notices',
6 l$ O+ b- y2 n1 v$ X% }      'posts_per_page' => 3,3 a: e% g0 D- ?# P6 M; F
      'order' => 'DESC',
3 ^1 v$ D( r! ^3 v      'orderby' => 'date'
4 m: ~; ^& X5 b0 R* L. ~   );8 m6 w; J) q* e, Q, g4 p
   $query = new WP_Query($args);3 e' G& i9 p7 ^# D( A: _# }3 Y# Z
   if ($query->have_posts()) :' a# F+ N7 r: a" @6 n. V6 R
      while ($query->have_posts()) : $query->the_post(); ?>3 x% v# _9 ^. _0 C$ Z
          <div class="notice">; S* C! W9 J; |- g) p3 ^
              <h3><?php the_title(); ?></h3>
& N+ X2 p# r( W! P              <div class="notice-content"><?php the_content(); ?></div>
: D; Y/ y- v8 D' X) i2 y          </div>
3 ^' m1 @4 I, X  `      <?php endwhile;2 e. u' H# x5 k# c3 v) i
      wp_reset_postdata();
) \3 Y% \6 e, l* Y1 w2 k( Z0 }& V   endif;  r/ C: G& g+ W- e) f$ S6 l8 p, I' m
   ```
4 y5 H3 E. j* ~1 o) k
7 ^" k" E# }4 j2 ^   在示例中,我们使用 `WP_Query` 类从 `site-wide-notices` 文章类型中获取最近发布的 3 条公告,并在前端页面中循环遍历并显示标题和内容等信息。
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-12-28 13:00 , Processed in 0.039104 second(s), 8 queries , Redis On.

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

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