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

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

[复制链接]

342

主题

546

回帖

3598

积分

管理员

积分
3598
QQ
发表于 2023-5-18 08:34:20 来自手机 | 显示全部楼层 |阅读模式
您可以使用以下方法来快速在 WordPress 后台增加一个全站公告的功能:
( B* f/ l- P$ T! _$ @$ P* E; p5 x/ W
1. 在 WordPress 插件库中寻找可用的公告插件,例如 WP Notification Bars、Announcements、SSP Elegant Notification Bar 等。
2 o/ Z" }5 o6 p/ ?: x
- e% v  K: D8 _- J2. 安装并激活您选择的插件。您可以在 WordPress 后台的「插件」->「添加新插件」界面中搜索并安装插件,然后在「插件」->「已安装插件」界面中激活它。" U0 X" _; L5 F7 B' A

' V( K5 x! B/ o, t8 @5 C: S3. 在插件的设置页面中配置您的公告内容和样式。不同插件的设置选项和功能可能会有所不同,但通常都允许您定义公告的文本、链接、颜色、位置等。1 ?5 a3 W$ j' {4 G2 ?5 d1 G) t4 ?

* L1 u0 U2 }2 W: \4. 将公告添加到您的网站上。在插件设置页面中完成公告的设置后,您可以通过编辑 WordPress 主题的代码或使用插件提供的方法将公告添加到您的网站中。不同插件可能使用不同的添加方法,具体请查看详细说明或联系插件作者。: m; r7 k! O+ l

% R" G* U. i; i1 Y注意,如果您使用的 WordPress 主题已经包含了公告功能,或使用了其他公告插件,可能会导致冲突或功能重复。如果您遇到了这样的问题,请查看主题文档或联系主题作者以获取解决方案。
回复

使用道具 举报

342

主题

546

回帖

3598

积分

管理员

积分
3598
QQ
 楼主| 发表于 2023-5-18 08:34:51 来自手机 | 显示全部楼层
如果是自己开发的话,具体要怎么做?! _" k# w$ _8 x6 r( o! k, r/ o

0 t7 P) X" S& n如果您自己开发 WordPress 主题或插件,并且需要在后台中增加一个发布全站公告的功能,可以按照以下步骤操作:
+ p" d9 h/ u* G( X9 S5 ^  G5 n2 R5 B) T2 ~
1. 创建一个自定义的 WordPress 后台页面。您可以使用 `add_menu_page()` 或 `add_submenu_page()` 函数来创建一个自定义后台页面,例如:9 ^1 j/ w4 b0 o8 g" ]/ W3 r4 C
& I2 Q8 Y$ f* ^+ }- A0 H5 x: l
   ```
0 X5 E. U0 [0 m' Y$ D5 h5 s   add_menu_page(
, {" S6 {9 D( Y       '全站公告',4 [- Z) _+ T+ N( f
       '全站公告',
) S4 D" M4 S$ ]' h" L1 t# D       'manage_options', //需要的用户权限
, C' o5 ]8 \% I; O       'site-wide-notice', //后台页面的 slug
' k! i& K4 v$ J, k       'render_site_wide_notice_page', //用于渲染后台页面内容的函数
) ?: L' U1 j! ?  B- {  V% m       'dashicons-megaphone', //用于显示在菜单中的图标
( a. W2 Y4 [9 I       30 //菜单项的位置
: ~* V+ v# k2 `; C# h0 t& }( s   );0 }, G9 [. c- _* \
   ```
. ]* V; Z1 M% H0 B  B- K
# A1 Q: D+ S  H+ r: f. @$ `   在该示例中,我们使用 `add_menu_page()` 函数来创建了一个名为“全站公告”的菜单项,并指定需要的用户权限(`manage_options`),在后台页面的 slug 为 `site-wide-notice`,用于渲染后台页面内容的函数为 `render_site_wide_notice_page`,在菜单中显示的图标为 `dashicons-megaphone`,菜单项的位置为 30。
# I/ H  F5 c4 E( {  I: X
# C$ c/ G" U% T( d0 F+ P+ N" T3 M2. 编写用于显示和保存全站公告内容的代码。您可以在自定义后台页面中创建一个表单,让用户输入公告的标题、内容等信息,并将这些信息保存到 WordPress 数据库中的某个表中。例如:8 z) {# o) ^1 y! F

. b: D4 e5 C0 n1 V' x, S   ```9 [" U1 s7 }: P8 B: U$ a0 c
   function render_site_wide_notice_page() {  `) w! O4 W, ~3 I3 c" |! W
      // 渲染后台页面内容+ x3 ^% v+ {" m. x; L% ?2 }3 i4 ^; Z
      echo '<div class="wrap">
# C0 i$ s+ q5 i2 P          <h2>全站公告</h2>
. w! s. h7 U7 Q, L- j! q          <form method="post" action="">
$ c* i, r/ c% N              <label for="title">公告标题:</label>
7 D( y' t5 W0 r! ?- n              <input type="text" name="title" value="'.get_option('site_wide_notice_title').'"><br><br>
/ y4 _4 b1 @- ^: \8 A. `              <label for="content">公告内容:</label>1 W- b- H2 ^& [
              <textarea name="content">'.get_option('site_wide_notice_content').'</textarea><br><br>) u/ L# x8 f4 Q! ?, k
              <input type="submit" name="submit" value="保存设置">& @  E) p% v8 i- H, B+ h
          </form># d. R* @1 P9 S9 F8 Q* m  j* ]
      </div>';
% }9 O  c, x6 [* n8 b5 o
% _$ v1 {: o) u& g      // 处理表单数据" D& q+ y2 D( l9 p" Y
      if (isset($_POST['submit'])) {" C' Y" B8 G6 y) x* w
          update_option('site_wide_notice_title', sanitize_text_field($_POST['title']));
0 `9 \. D, X  Z- Z( a3 `          update_option('site_wide_notice_content', sanitize_text_field($_POST['content']));: x- }* |* o5 Y$ e( q) k
      }
  c/ h! [' p. M8 p   }) v; E* ^" _# u% q
   ```: H: Q6 P' @, w$ p
3 B8 Z3 o8 V/ ^4 O
   在该示例中,我们创建了一个表单,让用户输入公告的标题和内容,并使用 `update_option()` 函数将这些数据保存到名为 `site_wide_notice_title` 和 `site_wide_notice_content` 的 WordPress 配置项中。如果用户点击提交按钮,则将表单数据更新到配置项。7 B- @0 x# I/ A

- i4 R5 \" _! [3. 在 WordPress 主题中显示全站公告。您可以通过在 WordPress 主题的 `header.php` 文件中添加代码,将公告内容显示在网站的顶部或其他位置。例如:# ?4 X, a' W3 `" C$ v. e9 U3 a
: \( ]9 `6 N; \& r9 _: |3 a9 i
   ```4 m6 y  W5 X8 {' L  ~
   <?php
  m/ O' O3 ~' b+ t# n   $site_wide_notice_title = get_option('site_wide_notice_title');
# x3 s. P1 u8 d3 a, X  q1 e   $site_wide_notice_content = get_option('site_wide_notice_content');+ _+ w4 [& B8 m: ^) ^. h
   if (!empty($site_wide_notice_title) || !empty($site_wide_notice_content)) {
* R7 ]) F2 p2 j1 u       echo '<div class="site-wide-notice">';
" O' j8 d2 J  h8 |       if (!empty($site_wide_notice_title)) {/ @* s- M: k9 V( m9 O
           echo '<h3>'.$site_wide_notice_title.'</h3>';
5 @( O/ M5 f( p$ {1 Y  L) _       }& r5 x% E3 a8 k  X5 `
       if (!empty($site_wide_notice_content)) {0 ~; z$ F# O8 E7 V
           echo '<p>'.$site_wide_notice_content.'</p>';
& M& u  {0 |2 q       }4 l$ _  V7 t5 D& Z" x& \
       echo '</div>';9 r  q" b! I* h0 p
   }
4 n3 A3 N, G; B. g  @   ?>
  \/ F4 T( V5 b9 @. k   ```+ p4 I! x. O2 F# ?6 y
! d) W7 B" {$ U
   在该示例中,我们检查 WordPress 配置项中名为 `site_wide_notice_title` 和 `site_wide_notice_content` 的值是否为空,如果不为空,则在 `header.php` 文件中添加一个名为 `site-wide-notice` 的容器,将公告标题和内容显示在其中。
- _# Q6 i! h& B! p5 S* r$ X8 X$ x+ ?) F/ b- I" {1 O2 V$ T7 K! W
请注意,本示例仅提供了一个框架,具体实现可能会根据您的需求和实际情况有所不同,您需要根据自己的需要进行修改和调整。同时,为了确保安全性,您还会需要对用户输入的数据进行适当的验证和过滤,例如使用 `sanitize_text_field()` 函数来过滤表单数据。
回复

使用道具 举报

342

主题

546

回帖

3598

积分

管理员

积分
3598
QQ
 楼主| 发表于 2023-5-18 09:26:50 来自手机 | 显示全部楼层
那如果需要发布多条公告,并进行管理,要如何实现?, y$ q* I7 i# ?8 R& E$ R# J

, m7 h' [. ~" C1 l7 @$ j您可以创建一个自定义的 WordPress文章类型,例如“公告”,并对其进行自定义化,以实现发布多条公告并进行管理的功能。以下是具体步骤:
9 Q% _8 @0 Y+ d6 n6 K8 z+ I( b
9 G( Q+ c6 j) d  J/ v9 {1 \4 b6 p1. 创建一个自定义的文章类型:在你的主题 `functions.php` 文件中,添加以下代码:
$ B9 @) O* |( l- O
1 s3 [  q) z* q2 n```
, K% e6 d/ r/ {2 k0 J/ X; nfunction create_custom_post_type() {( ]6 b/ t1 Z. m5 J+ f7 h! n
    $args = array(
- |8 e4 Z6 ~5 Q) K6 B        'labels' => array(
3 u# J* h5 b/ U- C& a! K            'name' => '公告',* i8 E. G# r; j' z. d( j3 N9 J0 l
            'singular_name' => '公告'( m! g: h% v9 G3 d1 C7 J8 M
        ),
% {& u6 x- p; o        'public' => true,8 W# W( v- r1 \+ }
        'has_archive' => true,) T  K, N$ X* x' K5 |: c! S- i  p
        'supports' => array('title', 'editor', 'thumbnail', 'excerpt', 'custom-fields', 'revisions'),
' a: G% w; D" @0 E$ e        'taxonomies' => array('category', 'post_tag'),
3 o  W) p+ ^$ W7 C* ?  N' i6 ]        'menu_icon' => 'dashicons-megaphone',- P  x$ r0 K4 k% g* m8 i
        'menu_position' => 5,
- H: c% \# p0 j. n7 o( Z" n        'rewrite' => array('slug' => 'site-wide-notices')
1 I1 L$ M& m% f1 P3 G# x& v    );
4 U7 @! \4 H1 r8 V9 |8 l    register_post_type('site-wide-notices', $args);
. J8 Q' ]5 K+ K* y( @( q}
4 J; Z: w  \* Zadd_action('init', 'create_custom_post_type');) S+ z# f! f; ^3 L& A
```
* x0 O' v: U$ i# V. h" l( P' o8 A# u) J7 b7 n# R8 `- P  X
在示例中,我们注册了一个名为 "site-wide-notices" 的新的文章类型,并定义了文章类型名称、缩略名、文章类型支持的功能、分类法、管理菜单图标等设置。) e- K& m0 y7 ?
1 ~4 u. |' G# }! a0 y
2. 在你的 WordPress 后台中创建新文章类型“公告”:现在,你就可以在 WordPress 后台中通过导航到“公告”菜单,来添加、编辑或删除公告了。您可以在编辑公告的页面中添加标题、内容、特色图像或其他自定义的元数据字段。
7 ], Q) t6 Y+ U  I7 y; g( n: j1 ^
3. 在主题中显示公告:在您的 WordPress 主题文件中添加以下代码,以在您的网站上显示公告:4 a1 m  v1 Q6 y: R/ ~+ i, _; E
5 Z/ n6 Y/ _" t6 Z. f( P
```
: ~) p) c! X* z1 Q9 [$args = array(
4 a3 g( D" E7 p. |5 n3 h! @    'posts_per_page' => 3, // 显示的公告数量/ G2 n4 y/ }  Z& e+ g6 I8 a
    'post_type' => 'site-wide-notices', // 公告文章类型7 K8 f, v4 l% A2 u+ K" G
    'post_status' => 'publish', // 公告状态0 D+ d* ^; f6 L0 R
    'order' => 'DESC' // 排序方式
  |4 s7 d/ _& \! p);* d% h! s  }9 Z  ~% Q! z/ M
% f, g8 N9 o; n$ O1 G" r& \9 z; I
$notices = new WP_Query($args);# H0 Q) H% X* K% R8 H% z) Y
if ($notices->have_posts()) :2 m- U$ H* i+ R7 v7 F
    while ($notices->have_posts()) : $notices->the_post(); ?>
+ O4 R$ `+ q. `        <div class="notice">/ v+ ~( Q; _  ?7 D$ N" Z: a9 x
            <h3><?php the_title(); ?></h3>
& h7 Q/ ~8 N3 m+ R+ \1 _; `5 D            <div class="notice-content"><?php the_content(); ?></div>1 u+ q! }  T7 ]" I, Q) A
        </div>& z7 o& p$ O, ]0 B
    <?php endwhile;
  W5 n) D7 S: E2 Oelse :
( u; p1 j% z9 H    echo "暂无公告";
1 d4 `& h4 V/ f# X: Eendif;
8 @: g& N  u3 L5 f! B0 W, h* o9 Fwp_reset_query();
: L7 o6 N- T+ t! ]2 ````
( a# s, V: {/ \7 S1 X6 z
* W) k' \) D* @: s* h5 u+ ^! O0 M0 Y这段代码将使用 WordPress 的 `WP_Query` 类从公告文章类型中获取最新发布的 3 条公告,并在前端页面中循环遍历并显示公告标题和内容等信息。7 j+ x# n- F1 S+ I1 r6 V5 q( T

1 s; o7 I7 \7 H& ~2 E% s& z以上便是实现 Wordpress 后台发布多条全站公告的基本步骤。需要注意的是,自定义文章类型可对应多篇文章,具体根据您的需求进行调整。
回复

使用道具 举报

342

主题

546

回帖

3598

积分

管理员

积分
3598
QQ
 楼主| 发表于 2023-5-18 09:27:55 来自手机 | 显示全部楼层
如果不想修改functions.php,有其他更好的办法吗?8 v3 w: B6 F( P

% |' u* [- y) q, I如果您不想修改主题 `functions.php` 文件,也可以创建一个自定义插件来添加新的文章类型。3 ~6 A& }0 A  |2 ]
% M* K' t( z  U8 v
以下是创建自定义插件的步骤:9 W9 H# T1 r, T& \: K9 j
& `5 M. Y5 M+ o* [
1. 创建新插件:在 WordPress 插件目录中创建一个新的子目录,例如 `site-wide-notices-plugin`,然后在该目录中创建一个新的 PHP 文件,例如 `site-wide-notices-plugin.php`,并在文件头部添加必需的标记,例如:* ^6 `" f' R! E' V' {, R
" M7 l) k- k5 z( |5 y( x
   ```
* A- \% W# T1 k$ R& g   <?php
- Z+ ~" t9 @, Q8 Y2 w! u( O   /*
/ s  s+ ?9 L6 Z   Plugin Name: Site Wide Notices Plugin
* t$ u, x4 Q" ~   Description: Adds a new custom post type for site-wide notices.) e8 s$ G# K  o9 q$ W, Q# @1 z
   Version: 1.0
1 y( p! ^; _) Y" q2 h   Author: Your Name! Y8 g! s# `1 K4 z4 a$ q* i6 K
   Author URI: http://example.com
, m  i$ m3 ^& L# W   */3 z: l& k$ W4 Q* H% |: E$ [0 d5 D+ y

" @2 q/ Z- H% q2 z6 C   // Add plugin code here...
- x0 i. S& h" C5 c3 Y5 g   ```
5 C6 ?% S, i2 E7 _3 B, z) F
; n+ v7 N( G, ^( F; s" V9 Z   在示例中,我们创建了一个名为 `Site Wide Notices Plugin` 的新插件,该插件添加了一个新的自定义文章类型,并指定了版本、作者和作者 URI 等元信息。$ {, Y/ `! x7 r" U( f: g% `4 q
* O' q, u, a; {- {- w
2. 在插件中注册新的文章类型:在 PHP 文件中添加以下代码,用于注册一个名为“site-wide-notices”的自定义文章类型:
* b+ U7 l$ o' q6 {" D( e
0 A& h+ }+ r6 u! b   ```* H* x) o6 M# I; L& f; W
   add_action('init', 'create_custom_post_type');
" q# {# `  A6 L" p% q) `' B" o& k   function create_custom_post_type() {
+ z9 o. r( b2 i5 Z# B# m& A      $labels = array(
8 _# K; G% C! S2 ~7 Q          'name' => 'Site Wide Notices',
# l8 w) d0 B1 \. F' }' E          'singular_name' => 'Site Wide Notice',8 k. h) j: `) q7 F
          'add_new' => 'Add New',2 t8 Y+ Q: Q& ?2 Y) ~, p
          'add_new_item' => 'Add New Site Wide Notice',
0 P1 }8 B( K2 }& f2 p          'edit_item' => 'Edit Site Wide Notice',6 T$ `7 V3 k3 O5 A2 G' |+ P
          'new_item' => 'New Site Wide Notice',
0 ^( b5 j* q6 u+ E+ I          'view_item' => 'View Site Wide Notice',
1 N+ c+ v" p% w- z  }          'search_items' => 'Search Site Wide Notices',
( G& g( v6 Z/ `1 L, T          'not_found' => 'No site-wide notices found',# B/ F0 `& u- F; e
          'not_found_in_trash' => 'No site-wide notices found in trash'! S; j! u8 K3 P6 q
      );- s. D' v: J$ D# m

! b9 p+ ]) V% z- o$ P1 }2 U; B      $args = array(
! |3 d8 L1 R. R+ A, b, {! m! F( e          'labels' => $labels,
$ z  w2 M  v5 p  x1 @2 G3 P          'public' => true,
* o' g* w0 t6 N% x& K- y/ q/ u7 B          'has_archive' => true,
8 Y, S0 s2 m& U+ d" f/ K2 Y: y          'supports' => array('title', 'editor', 'thumbnail', 'excerpt', 'custom-fields', 'revisions'),$ \. x3 a) w: G2 [* v: n/ T) c2 x( v
          'taxonomies' => array('category', 'post_tag'),9 z, i8 [# t5 c3 p) e, k  e
          'menu_icon' => 'dashicons-megaphone',
' O+ ^2 o% C9 W          'menu_position' => 5,3 E% v- I+ T; i  S% K
          'rewrite' => array('slug' => 'site-wide-notices')" t6 e, D: d: z* [5 d
      );
& E: B9 I; B5 K  f8 B
. Z- h' F8 b; U4 H      register_post_type('site-wide-notices', $args);( j4 Q! i5 u2 [% C
   }
2 R& @5 r' A4 ^- O   ```, p; T$ n9 ]8 C- I, p- U1 f0 N
, s5 w% }6 d  t  H* `7 Q6 x
   在示例中,我们使用 `register_post_type()` 函数注册一个新的文章类型,并定义了该文章类型的名称、标签和其他设置。: B0 |% s% T9 U7 I5 w

# l) J5 X7 k+ ?3. 在后台中添加公告编辑页面:您可以使用 `add_meta_box()` 函数在后台中添加公告编辑页面,并自定义字段和元数据,例如:+ [' W% O# Z: Q" V' R
9 d, A) {3 b% I* S+ i
   ```
: v# C% L$ M' [9 M* p7 U   add_action('add_meta_boxes', 'add_site_wide_notices_boxes');
, _1 j8 P5 F, ~% A1 C# e2 _- H9 `" O   function add_site_wide_notices_boxes() {  `/ u4 o: q- `  z$ l
      add_meta_box('notice-details', 'Notice Details', 'notice_details_meta_box', 'site-wide-notices', 'normal', 'high');) ]9 N6 I& E8 J' M1 J
   }
. c6 f) u5 X" j; f* G
/ _2 D3 t! X2 n0 w& I8 K   function notice_details_meta_box($post) {
/ S* j: L  Y8 y      wp_nonce_field(basename(__FILE__), 'notices_nonce');
' \! y# m) T$ g; V  O      $notice_title = get_post_meta($post->ID, 'notice_title', true);0 S" W; E9 I$ w4 d
      $notice_content = get_post_meta($post->ID, 'notice_content', true);
8 q: f$ Q; l" s8 ?/ k      ?>( a# z$ Y8 ~- U$ Z3 m3 v  I/ D
      <p>
$ [1 d8 K* d% z. M          <label for="notice-title">Notice Title</label><br>4 `* j2 w/ M" q+ M2 d
          <input type="text" id="notice-title" name="notice_title" style="width: 100%;" value="<?php echo $notice_title; ?>">
4 a/ ~4 F& B% R! F0 }7 M. u      </p>
, P) f! I8 w. c2 v- o8 m$ s      <p>
/ n' M! k% q. W6 K: @          <label for="notice-content">Notice Content</label><br>
0 t) a4 ^6 ^# f          <?php wp_editor($notice_content, 'notice-content', array('textarea_rows' => 10)); ?>
. z) ~0 ^* [$ V* T4 x- Y0 d      </p>, X, y) p( |& }& @
      <?php6 |5 z# V0 `* P0 i+ T
   }" m/ M7 v: q5 Z) ]& |: V7 U
6 g) ^  V: Q0 F2 G0 v
   add_action('save_post', 'save_site_wide_notice_meta_box');
% Q3 p% q- H6 C9 u   function save_site_wide_notice_meta_box($post_id) {/ g+ W4 V- n, b% n" p7 U
      if (!isset($_POST['notices_nonce']) || !wp_verify_nonce($_POST['notices_nonce'], basename(__FILE__)))
3 @/ e7 W0 p( |, q. L         return;" v* L2 P% S% T1 N, B5 D# Z
      if (defined('DOING_AUTOSAVE') && DOING_AUTOSAVE)
* @5 L! V8 L& t9 H; z- J& j; F4 Y         return;. V8 X* j, @7 L1 I* `" t2 G

1 X) r" @' g8 |- C      if (isset($_POST['notice_title'])) {
$ D, `& Y: Y2 D# N, @' X          update_post_meta($post_id, 'notice_title', sanitize_text_field($_POST['notice_title']));* A' ?% m2 a' T% Z3 J* B% c
      }4 Q2 Y( K( H! }7 i; P
      if (isset($_POST['notice_content'])) {
/ g4 o' S2 n! d. L( M9 j3 V          update_post_meta($post_id, 'notice_content', wp_kses_post($_POST['notice_content']));
! [) i9 S5 X  d3 t5 r3 A      }
: ^; i9 O0 j  s   }* ~/ K) P0 o# B2 y4 F4 t( c  p" k6 B& A
   ```
' F" t8 s$ G# a3 v
+ t: \6 q" X& M& p# ^   在示例中,我们使用 `add_meta_box()` 函数添加了一个名为 `notice-details` 的元框,用于在编辑页面上显示自定义字段和元数据。在 `notice-details_meta_box()` 函数中,我们使用 `wp_editor()` 函数添加了一个可视化编辑器,用于编辑公告内容。在 `save_site_wide_notice_meta_box()` 函数中,我们使用 `update_post_meta()` 函数将公告标题和内容保存到 WordPress 数据库中。
2 j' j0 _- ^* S) b& K' y' X2 q5 A, A7 i1 I& R' C$ _
4. 在前端页面中显示公告:在 WordPress 主题文件中添加以下代码,以在您的网站上显示公告:
' z$ u8 @( i( Q2 R
  @0 ~* R) M( c) P: B' {, G3 e3 H   ```
: Q5 D% n. s1 _   $args = array(* T0 A  r+ a& B' C4 u
      'post_type' => 'site-wide-notices',3 ]8 @& c6 u" G
      'posts_per_page' => 3,
* }' N# |7 I: M/ ]      'order' => 'DESC'," E; J+ v  ]( ~- h! I
      'orderby' => 'date'3 }" f# M4 r# O9 h- P/ N7 ^
   );7 N$ T" ~% k2 b
   $query = new WP_Query($args);
) ~4 X& x3 _7 E  D   if ($query->have_posts()) :
3 B' T5 j9 a  C: ^) q& o' V' u      while ($query->have_posts()) : $query->the_post(); ?>
: ]; W# {6 J* @9 e. h: U4 ?          <div class="notice">8 |6 Y/ V* s8 E; f
              <h3><?php the_title(); ?></h3>; v( |* I7 S+ B2 X
              <div class="notice-content"><?php the_content(); ?></div>
7 F4 v; j. M/ H0 d% q4 r          </div>
, Q5 i( o0 ]9 c6 k, ^- }4 o* N, Z      <?php endwhile;- [5 r7 f" N6 D# Z
      wp_reset_postdata();
: p! K$ K! E6 h   endif;) V7 y" N' ]0 P
   ```0 J  T: @* [9 D! V
( v+ s, i, o: G7 K" D
   在示例中,我们使用 `WP_Query` 类从 `site-wide-notices` 文章类型中获取最近发布的 3 条公告,并在前端页面中循环遍历并显示标题和内容等信息。
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2026-1-28 19:51 , Processed in 0.021207 second(s), 2 queries , Redis On.

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

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