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

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

[复制链接]

347

主题

565

回帖

3685

积分

管理员

积分
3685
QQ
发表于 2023-5-18 08:34:20 来自手机 | 显示全部楼层 |阅读模式
您可以使用以下方法来快速在 WordPress 后台增加一个全站公告的功能:7 q5 J/ m  `4 h, G6 v7 U: b4 y# j
4 @2 G' B( |0 c& }  r' t0 z
1. 在 WordPress 插件库中寻找可用的公告插件,例如 WP Notification Bars、Announcements、SSP Elegant Notification Bar 等。& M7 T( p$ o. F1 A

: A5 _  u! J9 j0 u" s% S2. 安装并激活您选择的插件。您可以在 WordPress 后台的「插件」->「添加新插件」界面中搜索并安装插件,然后在「插件」->「已安装插件」界面中激活它。, F& K5 T1 X0 S

5 z! E: R* X/ y3. 在插件的设置页面中配置您的公告内容和样式。不同插件的设置选项和功能可能会有所不同,但通常都允许您定义公告的文本、链接、颜色、位置等。( B2 H+ J, X# v) U
$ L. R, l4 J  S
4. 将公告添加到您的网站上。在插件设置页面中完成公告的设置后,您可以通过编辑 WordPress 主题的代码或使用插件提供的方法将公告添加到您的网站中。不同插件可能使用不同的添加方法,具体请查看详细说明或联系插件作者。
. b" H( G' t8 H; Q- F" d0 s$ a7 k2 M/ D& y2 Z- Q0 g) d! w
注意,如果您使用的 WordPress 主题已经包含了公告功能,或使用了其他公告插件,可能会导致冲突或功能重复。如果您遇到了这样的问题,请查看主题文档或联系主题作者以获取解决方案。
回复

使用道具 举报

347

主题

565

回帖

3685

积分

管理员

积分
3685
QQ
 楼主| 发表于 2023-5-18 08:34:51 来自手机 | 显示全部楼层
如果是自己开发的话,具体要怎么做?
7 t+ y: _9 K; c" Z. g2 {9 E& D8 u" [/ k) c6 A& F/ d
如果您自己开发 WordPress 主题或插件,并且需要在后台中增加一个发布全站公告的功能,可以按照以下步骤操作:
, Z- Y5 @( ^* Z9 E: L
" t' K: Y$ u; A1. 创建一个自定义的 WordPress 后台页面。您可以使用 `add_menu_page()` 或 `add_submenu_page()` 函数来创建一个自定义后台页面,例如:
, w, z$ ]- l, R/ e+ [# T' [! K$ F- ^! ]4 h
   ```2 W: a7 j3 [7 B+ D  j
   add_menu_page(  H  r' L) X) `  K1 r  D9 U; |
       '全站公告',9 T8 U4 {* \& g
       '全站公告',
: u* ]" W7 T" I7 j4 u+ v5 ]       'manage_options', //需要的用户权限
- y, ^* O2 R7 _8 ?+ J6 z2 N* l       'site-wide-notice', //后台页面的 slug" v) G. c' R. g& L  W! ?' A7 D! _
       'render_site_wide_notice_page', //用于渲染后台页面内容的函数0 d6 @9 V' r8 ]# D" K4 j- a, e2 {
       'dashicons-megaphone', //用于显示在菜单中的图标0 ?3 {9 j: o2 b, j8 f
       30 //菜单项的位置
% r6 c* ~( b+ L- N7 D; }   );4 c$ J3 [" ?% D+ q- ^
   ```
# {) g" L  o) X7 b! U
' f* R! b5 f/ ?5 j' `5 {   在该示例中,我们使用 `add_menu_page()` 函数来创建了一个名为“全站公告”的菜单项,并指定需要的用户权限(`manage_options`),在后台页面的 slug 为 `site-wide-notice`,用于渲染后台页面内容的函数为 `render_site_wide_notice_page`,在菜单中显示的图标为 `dashicons-megaphone`,菜单项的位置为 30。
5 D& s. D! J! K& p6 s6 R/ i, c. n* d+ F
2. 编写用于显示和保存全站公告内容的代码。您可以在自定义后台页面中创建一个表单,让用户输入公告的标题、内容等信息,并将这些信息保存到 WordPress 数据库中的某个表中。例如:
8 R# [1 d( n7 Y4 `2 t0 J  b" ~& R" L2 h  H; Z
   ```
# Y! x+ T8 F: d: {   function render_site_wide_notice_page() {# B9 [& d( ]4 V+ V7 y
      // 渲染后台页面内容
4 B. T- w1 w) O      echo '<div class="wrap">
+ l# _9 z3 j' N' f          <h2>全站公告</h2>
. n. h% Q! V# z( v0 ]/ F  q2 I          <form method="post" action="">0 o1 @7 |7 j' J
              <label for="title">公告标题:</label>2 m; O: H, R9 {, x* j4 b& r8 s
              <input type="text" name="title" value="'.get_option('site_wide_notice_title').'"><br><br>
. R% c* P$ i3 j- E) u0 v( l% _              <label for="content">公告内容:</label>  L" q7 l- u7 ^- U: [+ b* e
              <textarea name="content">'.get_option('site_wide_notice_content').'</textarea><br><br>; J6 s; T1 o( Y! H+ A
              <input type="submit" name="submit" value="保存设置">
& h- k7 _3 P) J          </form>) [. h- B0 a7 L( k1 ~0 e% M! B
      </div>';
( D3 ^# L7 a) F  d& U0 M- O0 f) b/ M* V* ]8 T
      // 处理表单数据3 p  a  y1 ]+ L; d& b  l3 ]8 a
      if (isset($_POST['submit'])) {5 f7 Y' D: ?8 t- e
          update_option('site_wide_notice_title', sanitize_text_field($_POST['title']));8 x/ j& X: H  o. ~0 J
          update_option('site_wide_notice_content', sanitize_text_field($_POST['content']));2 c4 E5 [, M2 n1 I7 w0 A
      }9 I6 a2 }( R9 K7 f! U
   }7 }  Y- }0 ~4 q
   ```5 u$ s5 ], z) v* T) D: e1 v
1 t) Y% A% V% t2 W& W! g) o
   在该示例中,我们创建了一个表单,让用户输入公告的标题和内容,并使用 `update_option()` 函数将这些数据保存到名为 `site_wide_notice_title` 和 `site_wide_notice_content` 的 WordPress 配置项中。如果用户点击提交按钮,则将表单数据更新到配置项。
, u7 Z# z  h+ t" R5 S% g6 \: h% n+ f) L' t4 j
3. 在 WordPress 主题中显示全站公告。您可以通过在 WordPress 主题的 `header.php` 文件中添加代码,将公告内容显示在网站的顶部或其他位置。例如:- ]* M* o/ L7 g9 X

- }! i) L+ R. I* |2 O! u+ P   ```! c+ G0 w2 U& S6 B  ?2 g; x
   <?php$ b9 P# e$ \$ _' p4 p! E
   $site_wide_notice_title = get_option('site_wide_notice_title');$ F5 ^; {& v) g% s  _
   $site_wide_notice_content = get_option('site_wide_notice_content');
4 c( L6 v% e$ p" d2 A3 ^% h   if (!empty($site_wide_notice_title) || !empty($site_wide_notice_content)) {9 g: ]3 {$ c% {" k. h1 ~* e: i
       echo '<div class="site-wide-notice">';
9 a! u" F, n6 y" v4 V! ~1 x- t8 l4 [& P       if (!empty($site_wide_notice_title)) {" b4 ?. i: s+ Z! J; a
           echo '<h3>'.$site_wide_notice_title.'</h3>';+ Q' _$ D1 U& a  ^# P
       }
" R7 u- t  D8 @4 {3 t2 b) P       if (!empty($site_wide_notice_content)) {6 v/ |$ _: m: H8 m8 G- T- S. u. Y
           echo '<p>'.$site_wide_notice_content.'</p>';* k( L8 I1 v0 f& c, u( F3 q
       }9 J) z, q7 I- T2 I. e7 e' m7 Z
       echo '</div>';
3 q6 S+ d' Q" b+ \   }* e9 t, J$ _+ G% z6 y+ o
   ?>
- c% A& ^" Z+ z& S- F, y   ```
$ M; n/ L: a7 z' F1 i* C' I5 w! e$ o0 t0 Z0 [* M
   在该示例中,我们检查 WordPress 配置项中名为 `site_wide_notice_title` 和 `site_wide_notice_content` 的值是否为空,如果不为空,则在 `header.php` 文件中添加一个名为 `site-wide-notice` 的容器,将公告标题和内容显示在其中。& T4 I4 m; G& ]* x# D

( P/ l+ X8 }7 I, [! Y请注意,本示例仅提供了一个框架,具体实现可能会根据您的需求和实际情况有所不同,您需要根据自己的需要进行修改和调整。同时,为了确保安全性,您还会需要对用户输入的数据进行适当的验证和过滤,例如使用 `sanitize_text_field()` 函数来过滤表单数据。
回复

使用道具 举报

347

主题

565

回帖

3685

积分

管理员

积分
3685
QQ
 楼主| 发表于 2023-5-18 09:26:50 来自手机 | 显示全部楼层
那如果需要发布多条公告,并进行管理,要如何实现?
, N1 e, s/ I3 S3 U9 y1 F5 l1 y
: K4 E" Z( e6 Q% X4 d& ~& U  O您可以创建一个自定义的 WordPress文章类型,例如“公告”,并对其进行自定义化,以实现发布多条公告并进行管理的功能。以下是具体步骤:
, ^. }1 v, e  w- }# @
* e# Q% l1 }3 i3 H3 L1. 创建一个自定义的文章类型:在你的主题 `functions.php` 文件中,添加以下代码:" ~% U& R9 C% ~8 @9 ?

2 F# @- s9 G7 ?9 x6 p* ^# D```2 @; w- N  O, I4 Z
function create_custom_post_type() {( }4 M% \: H& t+ y
    $args = array(- n' \9 Q* q! k
        'labels' => array(
: z' P; r2 [7 w. c            'name' => '公告',
' X# w4 W( i$ b% l# Q+ q            'singular_name' => '公告'3 ~' w, @  V& @2 b5 |3 f7 m
        ),
& l; c6 _5 K* z. r, U        'public' => true,
% d8 l: z# ^( ]9 q        'has_archive' => true,
: v! i$ F; s4 y* Q, Q) c0 }8 n        'supports' => array('title', 'editor', 'thumbnail', 'excerpt', 'custom-fields', 'revisions'),. Z/ f& P4 w5 P# ]3 w7 D
        'taxonomies' => array('category', 'post_tag')," ~& @- D$ K) w) T& b
        'menu_icon' => 'dashicons-megaphone',
  Y: Z: G1 N, {' w        'menu_position' => 5,8 A5 F0 S0 r! ?) K6 F
        'rewrite' => array('slug' => 'site-wide-notices')
. |, \* h% ^9 b    );
& j/ b5 U9 B& z# w' ^    register_post_type('site-wide-notices', $args);
& |& ]$ k0 A* [' e& ?9 H}- c2 M6 x4 y! i( `
add_action('init', 'create_custom_post_type');
9 K. ?% R% I. [, ````
3 d# X2 j2 y5 K, Q( e9 C/ s4 L; `; X, F# g- j
在示例中,我们注册了一个名为 "site-wide-notices" 的新的文章类型,并定义了文章类型名称、缩略名、文章类型支持的功能、分类法、管理菜单图标等设置。
) }; e0 m: `4 h' j# I  [: {
& i3 N& X( ?0 y! k2. 在你的 WordPress 后台中创建新文章类型“公告”:现在,你就可以在 WordPress 后台中通过导航到“公告”菜单,来添加、编辑或删除公告了。您可以在编辑公告的页面中添加标题、内容、特色图像或其他自定义的元数据字段。
# D/ G: M1 u! u7 z1 d+ Z- B4 @1 ^6 E4 P* M% L
3. 在主题中显示公告:在您的 WordPress 主题文件中添加以下代码,以在您的网站上显示公告:0 [& }8 P9 I4 d+ w
# m. c7 l$ E; Y5 b! o* p
```
7 V! i. P# D3 v, c4 v; Z+ Z. ^$args = array(
4 R. |' }# G9 A" ~    'posts_per_page' => 3, // 显示的公告数量' m* U+ w. d! P: m' X: S; i
    'post_type' => 'site-wide-notices', // 公告文章类型
9 T0 n$ S8 U# b; y3 H/ }$ A    'post_status' => 'publish', // 公告状态
; T/ j9 ^- G- p* d    'order' => 'DESC' // 排序方式; A$ y; G  A. v* q. e
);
4 n4 }* x7 \. G1 e0 j3 m; Z5 p$ {' ~) }% e$ k8 R
$notices = new WP_Query($args);2 I, w1 a& F2 {. q
if ($notices->have_posts()) :
1 H# [" V9 h, d9 Y$ A6 c. @2 E. K# A" Z    while ($notices->have_posts()) : $notices->the_post(); ?>
4 P8 L2 R! t) [        <div class="notice">
5 V; l9 Q* u9 Y7 X; W- f1 X- y5 @            <h3><?php the_title(); ?></h3>: S! E) ]$ J% O6 o
            <div class="notice-content"><?php the_content(); ?></div>
& d. v7 p5 t7 @        </div>
" ?0 e' G% F4 E+ m* S    <?php endwhile;2 Z$ k, W; ~* {
else :5 k& |# v3 {: n" ?% f
    echo "暂无公告";5 i+ G$ B* i5 X1 j1 ?3 I
endif;7 C: _0 K- c- ~* z6 h
wp_reset_query();
# x5 w8 u$ Q9 z! j5 G```2 [) @3 c' E) |: R& p5 t
4 K4 k3 ]9 K3 S: ]3 T& j- p
这段代码将使用 WordPress 的 `WP_Query` 类从公告文章类型中获取最新发布的 3 条公告,并在前端页面中循环遍历并显示公告标题和内容等信息。
% U! E: t. T2 W! d! _9 V  s( Y6 m7 ^( r6 c6 O6 X5 [
以上便是实现 Wordpress 后台发布多条全站公告的基本步骤。需要注意的是,自定义文章类型可对应多篇文章,具体根据您的需求进行调整。
回复

使用道具 举报

347

主题

565

回帖

3685

积分

管理员

积分
3685
QQ
 楼主| 发表于 2023-5-18 09:27:55 来自手机 | 显示全部楼层
如果不想修改functions.php,有其他更好的办法吗?
: v, @/ ^  n7 {, Y0 b
9 N0 ]( f# p& Q' \7 ~9 N2 f如果您不想修改主题 `functions.php` 文件,也可以创建一个自定义插件来添加新的文章类型。
# J$ w& z+ G6 C2 X" A. Z" [+ }" B8 C: K' L
以下是创建自定义插件的步骤:
5 R; U. y4 _! x. V* X' ~; S1 ^
& E  [5 x  C) l6 `) \1. 创建新插件:在 WordPress 插件目录中创建一个新的子目录,例如 `site-wide-notices-plugin`,然后在该目录中创建一个新的 PHP 文件,例如 `site-wide-notices-plugin.php`,并在文件头部添加必需的标记,例如:+ \. W8 ]+ K' M- s! P* ]

/ j" V5 e) i( K1 n. v9 ~   ```" D' a1 q/ i4 _- D' c
   <?php
. M5 _; W' q  k: t# @' B   /*, p+ r9 E6 s/ D5 b
   Plugin Name: Site Wide Notices Plugin
+ j5 ]" Z0 S; T   Description: Adds a new custom post type for site-wide notices.* a! Q7 D$ _* e+ U5 ^$ U% R9 a
   Version: 1.0' D" i, i1 H5 s
   Author: Your Name( _. n" J+ f# N1 Z, S1 Y. n
   Author URI: http://example.com
( H) z" t4 I& y9 _; N   */$ P8 O% n% F5 F0 [9 K% P7 k

% ?) @4 T) N# N. N* U, Z) m* E* c+ |& A   // Add plugin code here...0 }! h% R. f' |( P* T6 j
   ```  R8 q3 v& a1 r1 x
( _' `6 u& j5 v: z/ f; u
   在示例中,我们创建了一个名为 `Site Wide Notices Plugin` 的新插件,该插件添加了一个新的自定义文章类型,并指定了版本、作者和作者 URI 等元信息。
4 y6 S7 {. R" _, K" C% u0 ~+ b9 S* U# m. X, S) c
2. 在插件中注册新的文章类型:在 PHP 文件中添加以下代码,用于注册一个名为“site-wide-notices”的自定义文章类型:
2 ]3 |+ M5 \- [! l
; b- Y. W! s3 \# }2 O( z   ```
+ g( r( Q1 X* W: A/ F! D( U+ W   add_action('init', 'create_custom_post_type');
5 ~! b2 |8 i+ y* ^: _$ q, d   function create_custom_post_type() {
$ j# r4 }. Q6 Q* W9 v, r! L      $labels = array(
/ K; G; @& }; G) m8 r' s          'name' => 'Site Wide Notices',
) B6 C: U' _) t4 p! R& B" H- H          'singular_name' => 'Site Wide Notice',
/ q3 q8 N. R! a1 X# ?& D9 ]          'add_new' => 'Add New',3 ~  l: [+ B% V/ Y9 t1 s( C: K
          'add_new_item' => 'Add New Site Wide Notice',  U* o( N5 T" C
          'edit_item' => 'Edit Site Wide Notice',3 M5 N0 k: \) \
          'new_item' => 'New Site Wide Notice',) S: x7 B! P' R% S$ x
          'view_item' => 'View Site Wide Notice',
7 O2 b- ?7 b7 ?9 }& a4 V          'search_items' => 'Search Site Wide Notices',2 z; {. y7 ]5 X5 n. W5 a
          'not_found' => 'No site-wide notices found',! b+ ?' s5 ~8 N! Q, V
          'not_found_in_trash' => 'No site-wide notices found in trash') d8 j/ T) v7 ?7 m; Z- }
      );1 [2 l' E$ s! z- p! h

9 F; Y2 h0 q/ {      $args = array(  c' m- X8 B3 f- z
          'labels' => $labels,
/ F% T. n; m5 F# U9 K          'public' => true,
3 O3 k# _, n$ A) b4 J          'has_archive' => true,5 `% h; J3 I/ ^( i' j6 _1 W
          'supports' => array('title', 'editor', 'thumbnail', 'excerpt', 'custom-fields', 'revisions'),1 c' g& u  Z8 X7 ^/ p+ c
          'taxonomies' => array('category', 'post_tag'),
8 u* x5 z/ P  c& j3 ?9 i          'menu_icon' => 'dashicons-megaphone',
4 R7 v8 q% h) e/ U6 L          'menu_position' => 5,! q: a5 t6 G- T8 A2 V
          'rewrite' => array('slug' => 'site-wide-notices')
, x! _3 l" C9 T/ `7 |$ {( t' B      );
1 g3 C+ _% _9 r# _/ I. C4 x5 k  J$ I1 R' E
      register_post_type('site-wide-notices', $args);
! L+ |6 T' G5 }9 O6 L7 u% N& d8 x   }# W/ R" \$ X% W. y6 p$ d% O
   ```
, h! p; Z/ p! N& R) q9 T. R& n& r
, M2 A% G7 q" \   在示例中,我们使用 `register_post_type()` 函数注册一个新的文章类型,并定义了该文章类型的名称、标签和其他设置。' z$ s5 X$ S" e8 J! |, S' ^7 Y

+ _* E) {! G! X9 ^! a$ H3. 在后台中添加公告编辑页面:您可以使用 `add_meta_box()` 函数在后台中添加公告编辑页面,并自定义字段和元数据,例如:
! _0 V2 o' V0 Z2 ]
( [/ `% _5 q4 R5 N: h) U   ```
4 n2 N/ D4 g+ N9 x/ `( l   add_action('add_meta_boxes', 'add_site_wide_notices_boxes');
" Y/ b0 G* M% y# ]   function add_site_wide_notices_boxes() {
0 x) _, j) u$ L% J  ~      add_meta_box('notice-details', 'Notice Details', 'notice_details_meta_box', 'site-wide-notices', 'normal', 'high');& {1 r. i; f$ _3 W: S9 x
   }& A; W/ `. W0 |
2 N" M, X% u( v" g2 O
   function notice_details_meta_box($post) {# I  q+ \7 o$ ~0 ^3 ~- ?. r" B8 c1 O
      wp_nonce_field(basename(__FILE__), 'notices_nonce');
4 h  s) `! T: P- f3 @- C      $notice_title = get_post_meta($post->ID, 'notice_title', true);% x* k* ]. Z4 ]
      $notice_content = get_post_meta($post->ID, 'notice_content', true);% ?( i& j7 `( j" t5 v' z# {- b( G
      ?>$ I* @* V0 ?7 X: ]
      <p>/ _* ~6 Y: x0 E
          <label for="notice-title">Notice Title</label><br>! ~% _1 ?+ f  [/ u  @& |0 }
          <input type="text" id="notice-title" name="notice_title" style="width: 100%;" value="<?php echo $notice_title; ?>">* q  T* q/ l5 T7 N: d3 P
      </p>
6 [! _2 g- M& Y; s  K/ j      <p>
' d1 i7 G! b& U/ ]; k" v          <label for="notice-content">Notice Content</label><br>
4 j" u- o5 @8 o% @4 W) J- G          <?php wp_editor($notice_content, 'notice-content', array('textarea_rows' => 10)); ?>
/ @9 p) `2 x+ s$ G0 R      </p>* M/ I% |9 _" Q# V8 p- [/ u
      <?php
( f$ \8 R+ z, K8 A+ B! C   }0 H: J( @( T) M# x" P

2 p6 _$ {6 L6 i; N! p   add_action('save_post', 'save_site_wide_notice_meta_box');
2 H4 \; h/ x9 ?$ I* k   function save_site_wide_notice_meta_box($post_id) {
% n" P$ c1 V) _! L      if (!isset($_POST['notices_nonce']) || !wp_verify_nonce($_POST['notices_nonce'], basename(__FILE__)))
4 w4 G' o: ]  z( V         return;2 R2 R& q% D7 [
      if (defined('DOING_AUTOSAVE') && DOING_AUTOSAVE)
3 {  G/ ?% j  [6 h& ?1 V. b( f- K         return;: ^% M6 F# A" Q0 E/ _

* W  ^( p4 [' `$ i+ X/ _      if (isset($_POST['notice_title'])) {
8 o  c! _$ B! I. c7 J          update_post_meta($post_id, 'notice_title', sanitize_text_field($_POST['notice_title']));
# G( y6 ]8 J- c' v. O      }& n+ I- u# }3 w6 [5 P4 U
      if (isset($_POST['notice_content'])) {7 E& c" f3 B, j& r, X' O. l9 J
          update_post_meta($post_id, 'notice_content', wp_kses_post($_POST['notice_content']));+ L) x) b( F3 ^$ d
      }( j; p& j7 v' O/ H2 M
   }
0 w1 C  Y: ~9 O9 U7 V- M* i3 V9 `" c) B   ```" T0 h6 M" c4 u+ u6 {6 R6 T1 W
# V2 M' \5 X. y. q
   在示例中,我们使用 `add_meta_box()` 函数添加了一个名为 `notice-details` 的元框,用于在编辑页面上显示自定义字段和元数据。在 `notice-details_meta_box()` 函数中,我们使用 `wp_editor()` 函数添加了一个可视化编辑器,用于编辑公告内容。在 `save_site_wide_notice_meta_box()` 函数中,我们使用 `update_post_meta()` 函数将公告标题和内容保存到 WordPress 数据库中。9 ?- l/ @+ _2 v% C# X# B% a
* _5 M' I- p9 V; T
4. 在前端页面中显示公告:在 WordPress 主题文件中添加以下代码,以在您的网站上显示公告:
9 M( K. a2 _. V+ N) e& D" X
) R, S% @3 X* i- f7 y9 S* R7 ]   ```
; \9 }+ P4 r; c# ^+ M   $args = array() L* }* E2 i8 N5 ?( _
      'post_type' => 'site-wide-notices',' w( g/ j1 _! H: n
      'posts_per_page' => 3,
8 h1 g: c# Z% ], W, ^6 l      'order' => 'DESC',; D6 Q  k! `  g( l, u' C3 e  X
      'orderby' => 'date'% Z# a& k% o! A' S( e
   );2 }' O$ {/ q6 P7 S# {% J. }
   $query = new WP_Query($args);
  p+ r! b& y0 j& f' ]3 V   if ($query->have_posts()) :
- F& H. l1 ]* r% d      while ($query->have_posts()) : $query->the_post(); ?>% f9 Q" A; ^1 R% ?* X
          <div class="notice">- p0 e6 {! F8 o+ D8 n
              <h3><?php the_title(); ?></h3>
. M9 V4 g. }) f" E* F" m              <div class="notice-content"><?php the_content(); ?></div>
; ^' i- ~7 _3 {. j0 w4 H          </div>' J8 G6 b% L! W1 W$ t
      <?php endwhile;
& J/ P' u+ H" ~7 k4 {      wp_reset_postdata();. [3 ]: t% \/ L3 m+ L' W* n
   endif;
2 z. T8 v9 a1 `. q, t   ```
+ a! y0 y9 _% G( e, I2 P
  Q+ a) B& W: ^8 q" Q/ W2 w   在示例中,我们使用 `WP_Query` 类从 `site-wide-notices` 文章类型中获取最近发布的 3 条公告,并在前端页面中循环遍历并显示标题和内容等信息。
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2026-2-18 05:58 , Processed in 0.013598 second(s), 3 queries , Redis On.

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

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