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

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

[复制链接]

334

主题

517

回帖

3396

积分

管理员

积分
3396
QQ
发表于 2023-5-18 08:34:20 来自手机 | 显示全部楼层 |阅读模式
您可以使用以下方法来快速在 WordPress 后台增加一个全站公告的功能:
/ K( L7 E; Q/ n+ S  F2 z' m$ ~  Z8 f
1. 在 WordPress 插件库中寻找可用的公告插件,例如 WP Notification Bars、Announcements、SSP Elegant Notification Bar 等。/ Q6 x& f3 L' G8 C+ B) }
" E4 y9 Z2 M% J( _3 E
2. 安装并激活您选择的插件。您可以在 WordPress 后台的「插件」->「添加新插件」界面中搜索并安装插件,然后在「插件」->「已安装插件」界面中激活它。# B9 ]0 J1 U4 F, v  ~( \6 _- H- I

' R5 y* v' ~4 r$ j3. 在插件的设置页面中配置您的公告内容和样式。不同插件的设置选项和功能可能会有所不同,但通常都允许您定义公告的文本、链接、颜色、位置等。
0 A4 ?- V9 q1 y9 C$ L
# ~, }! y8 @8 F' D# p7 k" }4. 将公告添加到您的网站上。在插件设置页面中完成公告的设置后,您可以通过编辑 WordPress 主题的代码或使用插件提供的方法将公告添加到您的网站中。不同插件可能使用不同的添加方法,具体请查看详细说明或联系插件作者。
  e  \9 c. i9 H6 K* P
( }2 y8 ^( V- s8 T3 y* J注意,如果您使用的 WordPress 主题已经包含了公告功能,或使用了其他公告插件,可能会导致冲突或功能重复。如果您遇到了这样的问题,请查看主题文档或联系主题作者以获取解决方案。
回复

使用道具 举报

334

主题

517

回帖

3396

积分

管理员

积分
3396
QQ
 楼主| 发表于 2023-5-18 08:34:51 来自手机 | 显示全部楼层
如果是自己开发的话,具体要怎么做?& e5 C8 b  a" {5 F( ]& F

3 S. s. X/ e! ?1 B9 m( v如果您自己开发 WordPress 主题或插件,并且需要在后台中增加一个发布全站公告的功能,可以按照以下步骤操作:
& D8 d4 o0 A2 g# m# W9 |! t& q7 ]( w' U% L, o* w8 N# l* @
1. 创建一个自定义的 WordPress 后台页面。您可以使用 `add_menu_page()` 或 `add_submenu_page()` 函数来创建一个自定义后台页面,例如:/ c! d  Y# Z* o0 l2 a( H

9 F. J% a4 |  H4 W. L   ```' m- Q4 o  B+ N* t
   add_menu_page(
* }! ?" w6 r4 p: y) H- V- ]       '全站公告',2 ~8 j/ H1 ]8 \1 E" \: y: N
       '全站公告',
6 i) t7 j0 L8 _) H       'manage_options', //需要的用户权限
, @4 |/ X" f6 ~, d8 k9 p       'site-wide-notice', //后台页面的 slug8 @% f) r6 y& s! `5 Z3 \4 e$ V. Y
       'render_site_wide_notice_page', //用于渲染后台页面内容的函数" l$ K+ t. h3 r0 F- q1 j0 U
       'dashicons-megaphone', //用于显示在菜单中的图标
: _! M6 t0 K. _. V" M       30 //菜单项的位置
0 A' P5 v- X+ d   );, i" g0 {6 U; s4 O2 E
   ```1 {6 m, y0 M' ~. I
' ^3 ~3 E' w! I: z8 V
   在该示例中,我们使用 `add_menu_page()` 函数来创建了一个名为“全站公告”的菜单项,并指定需要的用户权限(`manage_options`),在后台页面的 slug 为 `site-wide-notice`,用于渲染后台页面内容的函数为 `render_site_wide_notice_page`,在菜单中显示的图标为 `dashicons-megaphone`,菜单项的位置为 30。
& }0 l5 d+ W# b& J3 b/ n% ]+ ~6 t4 Q4 F
2. 编写用于显示和保存全站公告内容的代码。您可以在自定义后台页面中创建一个表单,让用户输入公告的标题、内容等信息,并将这些信息保存到 WordPress 数据库中的某个表中。例如:9 c' W7 }# y: z0 b
0 d8 I5 O- r, f' e& x* [+ b
   ```
  n" O$ ?: ?  e0 i; ?   function render_site_wide_notice_page() {
! V: u0 ^8 h  R( B      // 渲染后台页面内容
, q/ J& I& D1 m& `7 V0 X& H: i      echo '<div class="wrap">$ }  r) I* n& d& e/ |
          <h2>全站公告</h2>
7 h& s( W& k: b6 |1 H          <form method="post" action="">/ T7 N6 l' M& W" d  L& o$ g
              <label for="title">公告标题:</label>% S# K: t7 S9 l' i8 E; E2 b3 {
              <input type="text" name="title" value="'.get_option('site_wide_notice_title').'"><br><br>
) o) O. C+ y# D( h1 X" a/ n              <label for="content">公告内容:</label>- F5 m' i3 t2 E9 v6 X
              <textarea name="content">'.get_option('site_wide_notice_content').'</textarea><br><br>3 Z, J+ c8 _2 X7 }; |
              <input type="submit" name="submit" value="保存设置">4 a3 A  ?1 q# R( u1 O
          </form>! [3 K6 Z; q) g3 R
      </div>';6 l" C; N  S, O( A: f% ^+ `
* f% S) B# M0 b" |( H' B  l' [
      // 处理表单数据1 p) g/ h! Q% w/ h- w
      if (isset($_POST['submit'])) {- }. I! t  t4 c
          update_option('site_wide_notice_title', sanitize_text_field($_POST['title']));6 v8 f- _, }" X# ?0 S* b
          update_option('site_wide_notice_content', sanitize_text_field($_POST['content']));
2 b' k" Y# d* g9 H1 m$ `2 R      }
+ J6 y0 d( e: @- o   }0 ^4 |3 w. C$ M
   ```
8 }( T) f4 f* c# q  ?( t
& r8 L! W5 v- g0 t9 R$ f   在该示例中,我们创建了一个表单,让用户输入公告的标题和内容,并使用 `update_option()` 函数将这些数据保存到名为 `site_wide_notice_title` 和 `site_wide_notice_content` 的 WordPress 配置项中。如果用户点击提交按钮,则将表单数据更新到配置项。& C! k4 B# g5 d1 n0 S8 S; A
6 m7 q$ A% {6 `; ?7 a
3. 在 WordPress 主题中显示全站公告。您可以通过在 WordPress 主题的 `header.php` 文件中添加代码,将公告内容显示在网站的顶部或其他位置。例如:
- R/ `7 [( c8 q4 I) Y. @3 \0 T- T6 Y2 o
   ```, j4 q" p" c. {* O1 x$ ~: _
   <?php
3 S2 p  d2 H+ ^   $site_wide_notice_title = get_option('site_wide_notice_title');
* O0 M: v2 {: f( y8 S   $site_wide_notice_content = get_option('site_wide_notice_content');
, L, a  b: x5 W$ _   if (!empty($site_wide_notice_title) || !empty($site_wide_notice_content)) {
2 ^2 x( \8 I8 p. [1 H       echo '<div class="site-wide-notice">';# J- b$ ~' G$ D# ~6 h1 a1 C) i
       if (!empty($site_wide_notice_title)) {  s1 K2 k$ f& F" L, O
           echo '<h3>'.$site_wide_notice_title.'</h3>';& o7 @% E/ Y; g$ p. p9 G
       }
# S4 G7 X( d- V) k       if (!empty($site_wide_notice_content)) {
0 Y  H6 d* S( j% _2 I# X- M9 U           echo '<p>'.$site_wide_notice_content.'</p>';4 o; T1 X+ S. u$ j2 u, w, n7 i
       }
$ S# F2 J- R, d8 n       echo '</div>';3 N1 G8 o- K; D' d$ D$ {
   }  I- Z  ]  q7 |! \% [
   ?>
; y. M# ~) u( V/ ]7 v3 ]% i4 X  h   ```9 R; a0 W5 [% A

7 o6 w% O% y; k   在该示例中,我们检查 WordPress 配置项中名为 `site_wide_notice_title` 和 `site_wide_notice_content` 的值是否为空,如果不为空,则在 `header.php` 文件中添加一个名为 `site-wide-notice` 的容器,将公告标题和内容显示在其中。+ C  z: F; b0 X( j/ U
5 n# P1 P  d0 J6 I+ G% {6 R- e
请注意,本示例仅提供了一个框架,具体实现可能会根据您的需求和实际情况有所不同,您需要根据自己的需要进行修改和调整。同时,为了确保安全性,您还会需要对用户输入的数据进行适当的验证和过滤,例如使用 `sanitize_text_field()` 函数来过滤表单数据。
回复

使用道具 举报

334

主题

517

回帖

3396

积分

管理员

积分
3396
QQ
 楼主| 发表于 2023-5-18 09:26:50 来自手机 | 显示全部楼层
那如果需要发布多条公告,并进行管理,要如何实现?1 B: W9 A+ f; |, g2 e. `
2 l4 ?/ ^6 M& j. |) }
您可以创建一个自定义的 WordPress文章类型,例如“公告”,并对其进行自定义化,以实现发布多条公告并进行管理的功能。以下是具体步骤:
. Z5 u8 `* S- I5 b, J
. N' H2 [9 Z- ~, ~/ F9 o/ Q1. 创建一个自定义的文章类型:在你的主题 `functions.php` 文件中,添加以下代码:
+ T& Z) B+ \4 C" x9 Z  }
8 E( R" b# q: ?; E```' R+ |6 Q1 X) I
function create_custom_post_type() {! z" E  j8 L6 N4 a5 J; [- f0 w
    $args = array(7 s% e: B; a4 k
        'labels' => array(' O  M7 K7 m7 r0 E5 ?' u# E" j
            'name' => '公告',5 s- f1 V1 ^+ a+ E4 _
            'singular_name' => '公告'
5 J6 e4 H  |$ K; a, a5 a        ),( d  Y2 ?6 W( N+ @
        'public' => true,
7 @7 A' G5 C# |( z$ g        'has_archive' => true,  j8 x. K6 h( t+ {" n; c
        'supports' => array('title', 'editor', 'thumbnail', 'excerpt', 'custom-fields', 'revisions'),5 Z* ~6 @0 s) M) E
        'taxonomies' => array('category', 'post_tag'),2 J+ C: i& V$ w) Q
        'menu_icon' => 'dashicons-megaphone',- P- R5 A3 R, X6 r6 }8 Z" b* o
        'menu_position' => 5,/ x& Y& P7 C$ Y5 g5 M. q
        'rewrite' => array('slug' => 'site-wide-notices')& S7 }9 X( x# Q, O$ d
    );
/ ?7 |" z( R- O+ w# ^    register_post_type('site-wide-notices', $args);( ]. u7 x  w% N: j% [
}
: w* L$ N. H* S  V6 P! k7 Oadd_action('init', 'create_custom_post_type');
# g, b+ _( J  B! }  D```
" r+ L1 s& r2 z* {* v! k
9 `$ z/ f) l7 P在示例中,我们注册了一个名为 "site-wide-notices" 的新的文章类型,并定义了文章类型名称、缩略名、文章类型支持的功能、分类法、管理菜单图标等设置。
% V/ U( F  n* X1 ]! f' N
5 a! d' T" c0 P2. 在你的 WordPress 后台中创建新文章类型“公告”:现在,你就可以在 WordPress 后台中通过导航到“公告”菜单,来添加、编辑或删除公告了。您可以在编辑公告的页面中添加标题、内容、特色图像或其他自定义的元数据字段。6 W' E3 f+ u; |0 u3 ?
7 P* q5 L  K  k2 }, Y
3. 在主题中显示公告:在您的 WordPress 主题文件中添加以下代码,以在您的网站上显示公告:
3 [" ~2 f- n( [* t: k) l- i/ ]; ^8 r1 X. y
```
8 u9 f; i& v! A6 i2 m$args = array(
) B  Q$ W* \) _8 k( O% v* i    'posts_per_page' => 3, // 显示的公告数量
- }0 z; b" R! T    'post_type' => 'site-wide-notices', // 公告文章类型! L- D: g( r& }2 u# J% i( C/ q
    'post_status' => 'publish', // 公告状态- a( r" i. c8 }: B0 N9 T8 I% ~
    'order' => 'DESC' // 排序方式
; k$ h/ J4 U, U);$ U( M3 r) N; L* v* q3 r
* r! f( q) p: B1 c
$notices = new WP_Query($args);: P- M" J  C- N9 [& A# H4 k
if ($notices->have_posts()) :
1 M$ E- V4 g+ n, {    while ($notices->have_posts()) : $notices->the_post(); ?>. g7 z1 k& m- Z
        <div class="notice">
  ?7 h* [) K9 \# z, K8 \! ^6 g: D% ?            <h3><?php the_title(); ?></h3>
( G, ?. ]+ e% Q' T  V; {" H! l            <div class="notice-content"><?php the_content(); ?></div>
/ F! ?' r4 l" {9 ]" ?& j) z        </div>
1 s, b- I# @+ o    <?php endwhile;( e7 s. Z( P. Z3 v% z7 O' Z( N
else :
% q1 S; t7 O2 w# Q' y1 @    echo "暂无公告";
: u' @" j4 [; ?+ Zendif;( M# j" N' c& Y% r0 K$ _, J) Q
wp_reset_query();
: C* d$ y9 F7 S```+ o& [& c, H7 J+ Y7 Z2 G

, o; P6 l# q) R! f* y, I这段代码将使用 WordPress 的 `WP_Query` 类从公告文章类型中获取最新发布的 3 条公告,并在前端页面中循环遍历并显示公告标题和内容等信息。
  r3 _4 p( {  e; b9 I: |' i& B1 a
7 O# W  e2 r  g5 p4 }& R以上便是实现 Wordpress 后台发布多条全站公告的基本步骤。需要注意的是,自定义文章类型可对应多篇文章,具体根据您的需求进行调整。
回复

使用道具 举报

334

主题

517

回帖

3396

积分

管理员

积分
3396
QQ
 楼主| 发表于 2023-5-18 09:27:55 来自手机 | 显示全部楼层
如果不想修改functions.php,有其他更好的办法吗?
% Y2 U& O' a% `" V+ B3 Q$ U8 i
3 G: d% E& q" C" y7 L8 [" C6 k如果您不想修改主题 `functions.php` 文件,也可以创建一个自定义插件来添加新的文章类型。
8 g% ~/ u% a! ?0 H& }2 c- a) l8 g! A$ [( p' H
以下是创建自定义插件的步骤:% J! N0 ~( |+ |

& C& [" _& `% ~- Q/ ]1. 创建新插件:在 WordPress 插件目录中创建一个新的子目录,例如 `site-wide-notices-plugin`,然后在该目录中创建一个新的 PHP 文件,例如 `site-wide-notices-plugin.php`,并在文件头部添加必需的标记,例如:
3 p3 D2 C3 @# [0 e! x  s' k; x8 C: I9 n  @2 L6 I- `
   ```4 O! U0 i( n3 f. p
   <?php6 G/ L( j' u: ~/ |) [7 A
   /*
; s6 V! e" @# n) p   Plugin Name: Site Wide Notices Plugin
9 d8 S2 [" k- b2 z  E* {   Description: Adds a new custom post type for site-wide notices.
- ?9 U' K* T5 L   Version: 1.0
( ~; V0 o# M, B% w1 j! X   Author: Your Name! ?! {& _$ l+ e: K) D( }3 B
   Author URI: http://example.com. l/ a3 U6 n! C, ]
   */
0 K# K8 C3 n6 Z4 \- I
0 M$ q' h& a0 N& `( }0 C   // Add plugin code here...
, p. n4 b' n" @# d% \% B7 C   ```6 ^& V8 c* h% g# @0 l5 g5 q

5 I+ J6 ^/ N& ~- z& T   在示例中,我们创建了一个名为 `Site Wide Notices Plugin` 的新插件,该插件添加了一个新的自定义文章类型,并指定了版本、作者和作者 URI 等元信息。2 M1 T" x( Q" U  c3 ?5 H

: n+ I- C& i6 [- B2. 在插件中注册新的文章类型:在 PHP 文件中添加以下代码,用于注册一个名为“site-wide-notices”的自定义文章类型:
; l6 u; x2 m* q: ?9 A$ ^$ D8 R/ O$ y/ X/ f8 Z
   ```- N6 P* z/ }9 P5 B
   add_action('init', 'create_custom_post_type');
0 I  D! k: T, \4 m' c0 x   function create_custom_post_type() {
' d: a: e$ x- i+ j9 \      $labels = array(1 [: `: _9 Q: D4 Z: v
          'name' => 'Site Wide Notices',! M; R, K4 m- I- W
          'singular_name' => 'Site Wide Notice',/ J7 U) H# }$ z( ~% {+ |
          'add_new' => 'Add New',
( k/ m. v4 l2 g' j$ K          'add_new_item' => 'Add New Site Wide Notice'," F' Z- ^0 @% M% z3 ~
          'edit_item' => 'Edit Site Wide Notice',
" [9 T, s& o9 X          'new_item' => 'New Site Wide Notice',
% T% P$ P3 m8 E          'view_item' => 'View Site Wide Notice',
8 i% N& H9 G9 U* [& E) f          'search_items' => 'Search Site Wide Notices',, s3 o$ \! u3 _/ c: k7 k
          'not_found' => 'No site-wide notices found',
0 b  N% Q0 j  z" e          'not_found_in_trash' => 'No site-wide notices found in trash'. l6 A* b" {2 [2 V
      );# j# E2 b( V5 P7 V- E" e

) j/ t8 y7 F( k1 Q/ t! j      $args = array(
7 T5 e% G8 X8 y. h5 w* e/ J! e          'labels' => $labels,
! c. ^; g6 ~$ C3 N7 A# k3 M8 z          'public' => true,/ Z; @* j; ~7 b% j, j# z
          'has_archive' => true,6 k, C) H$ B0 x2 }* z1 i: S6 J
          'supports' => array('title', 'editor', 'thumbnail', 'excerpt', 'custom-fields', 'revisions'),5 j2 [- o8 y* F8 C! A- {
          'taxonomies' => array('category', 'post_tag'),9 c. u& u, U: j/ T
          'menu_icon' => 'dashicons-megaphone',! p4 {) [2 J, z$ g( R/ `
          'menu_position' => 5,
  _" Q7 B1 B6 n1 x- [          'rewrite' => array('slug' => 'site-wide-notices')$ n9 n0 Y9 B1 M( {! p% e% W
      );7 R- \/ U- M! U, ~

! j" ^7 u4 z  l  Y; Z6 z% P      register_post_type('site-wide-notices', $args);' B# e3 D: J  f- F% |# M/ h3 K
   }9 @6 d5 {$ m) h0 ]- H4 P
   ```' I+ ~! P- R% C/ \

1 p* @7 e+ r5 p; [+ ~7 d- t   在示例中,我们使用 `register_post_type()` 函数注册一个新的文章类型,并定义了该文章类型的名称、标签和其他设置。2 {, H) B# R2 m, \5 [9 x! k
9 o( M5 Y( ]. c( V3 ~
3. 在后台中添加公告编辑页面:您可以使用 `add_meta_box()` 函数在后台中添加公告编辑页面,并自定义字段和元数据,例如:
9 \8 ^2 b& w$ J' z: q. j' W* w" X: s5 m1 a; I, ^& l- i
   ```
6 b% ~8 G* K" D/ _/ Q  s1 a   add_action('add_meta_boxes', 'add_site_wide_notices_boxes');/ f% J" U8 h/ `" Z( S2 a
   function add_site_wide_notices_boxes() {
/ N# p1 Q0 [1 o$ _0 T      add_meta_box('notice-details', 'Notice Details', 'notice_details_meta_box', 'site-wide-notices', 'normal', 'high');
. |/ W! V. A& G1 ?9 {   }( M2 X( D3 B( _( g" i; J

5 B7 I5 e2 h/ ?5 P& Z9 l   function notice_details_meta_box($post) {! ]# s9 e& U! }% i; `, G
      wp_nonce_field(basename(__FILE__), 'notices_nonce');% O0 A' S8 R* z: y3 ]
      $notice_title = get_post_meta($post->ID, 'notice_title', true);
. t, {& @! z6 t3 D      $notice_content = get_post_meta($post->ID, 'notice_content', true);
( j. Z, F1 j7 W+ V      ?>
/ b9 v, J! l! v9 z/ N      <p>
9 X3 R8 j3 o& S! c$ @          <label for="notice-title">Notice Title</label><br>' |2 W1 N1 x; v$ V' L# Q7 N) M
          <input type="text" id="notice-title" name="notice_title" style="width: 100%;" value="<?php echo $notice_title; ?>">
0 D5 k( R& N; R* J5 A3 N      </p>
) p7 s+ n- B6 O# f      <p>8 a5 H) ^# }! F/ x0 H
          <label for="notice-content">Notice Content</label><br>' c) N8 J, O3 {: h2 Z
          <?php wp_editor($notice_content, 'notice-content', array('textarea_rows' => 10)); ?>
/ K8 P) Y( }: f- P; v* m1 \      </p>
; Z) w/ w& n/ T" e# x9 G      <?php
. x( A) U) K% _+ {7 c   }
) S  q7 ?0 Q' |% |0 f5 V& q- o. Q4 b! s  j+ A
   add_action('save_post', 'save_site_wide_notice_meta_box');
0 T. a* \# \% U- m7 k9 I   function save_site_wide_notice_meta_box($post_id) {
1 d- I( z6 c1 J! \  y  `      if (!isset($_POST['notices_nonce']) || !wp_verify_nonce($_POST['notices_nonce'], basename(__FILE__)))% }* I4 ~# j" J7 d: \8 m
         return;0 S9 g% z2 i% n0 Z
      if (defined('DOING_AUTOSAVE') && DOING_AUTOSAVE)
0 x' ]) M, c" W, y" H         return;
+ {8 d% O: ^+ B+ _  B2 q* e; Y* v+ }# c
      if (isset($_POST['notice_title'])) {
7 ~) R7 M/ E  w$ K          update_post_meta($post_id, 'notice_title', sanitize_text_field($_POST['notice_title']));
1 C1 `) z& L4 B7 _! D9 w      }
4 `6 |$ k; K. e8 U6 p- ^, m      if (isset($_POST['notice_content'])) {1 V* o( F$ l( `
          update_post_meta($post_id, 'notice_content', wp_kses_post($_POST['notice_content']));
( o4 X$ J' T4 l, R! u: e, ]8 j  w3 J6 A      }
% u3 N' ~, s( B% S   }. x9 t! G# f& H
   ```
: l- m+ m  r0 {0 K3 {+ A5 b* b0 Y: k$ [4 u" y# d, A
   在示例中,我们使用 `add_meta_box()` 函数添加了一个名为 `notice-details` 的元框,用于在编辑页面上显示自定义字段和元数据。在 `notice-details_meta_box()` 函数中,我们使用 `wp_editor()` 函数添加了一个可视化编辑器,用于编辑公告内容。在 `save_site_wide_notice_meta_box()` 函数中,我们使用 `update_post_meta()` 函数将公告标题和内容保存到 WordPress 数据库中。
1 T4 n% `; [" ~# b+ I! ^! ]
, n3 T) s  a$ u6 b2 [4. 在前端页面中显示公告:在 WordPress 主题文件中添加以下代码,以在您的网站上显示公告:
- n% C$ g# Y! X7 `! j& t/ s2 |4 E0 z3 {4 J! _
   ```9 c. G3 A; b( A
   $args = array(9 Y( w) R  ?, w9 A" ?, |4 l6 }) l
      'post_type' => 'site-wide-notices',! I  i# O' j0 N2 m5 z6 s+ u/ F
      'posts_per_page' => 3,
. n" m9 U, l2 N) f9 v5 ]6 G: ^      'order' => 'DESC',
! g+ q4 O1 s+ d9 P% n3 S      'orderby' => 'date'
0 O) m. l" V3 {' _5 K3 n, {$ i4 ^   );
) W& V, W) o/ g) O) y- ]7 j; v   $query = new WP_Query($args);
4 ^. D. J" U! d1 T# ^6 X   if ($query->have_posts()) :: _5 Q5 g* P. p! I8 }7 o+ N  N. @
      while ($query->have_posts()) : $query->the_post(); ?>
4 D: h+ r1 {8 H# u+ X          <div class="notice">
1 R7 G: b' M2 ~9 g6 A6 Z& l              <h3><?php the_title(); ?></h3>
) J. j/ Z8 @( U5 ?, b6 T+ H              <div class="notice-content"><?php the_content(); ?></div>; X8 |$ h1 [+ X" Q5 L! }; \
          </div>; c5 w# v3 i; }/ L& K8 H
      <?php endwhile;
% S3 |. v1 Q, b% i      wp_reset_postdata();% Z5 t/ b, w! D* s4 d+ U9 `) V
   endif;% r2 [; b; X; u. e/ Q8 P6 L
   ```2 l. ?. a& h2 i, H0 a& X' q3 q

* `$ B$ S! V, ?) Q   在示例中,我们使用 `WP_Query` 类从 `site-wide-notices` 文章类型中获取最近发布的 3 条公告,并在前端页面中循环遍历并显示标题和内容等信息。
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-12-4 21:08 , Processed in 0.100310 second(s), 3 queries , Redis On.

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

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