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

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

[复制链接]

346

主题

559

回帖

3656

积分

管理员

积分
3656
QQ
发表于 2023-5-18 08:34:20 来自手机 | 显示全部楼层 |阅读模式
您可以使用以下方法来快速在 WordPress 后台增加一个全站公告的功能:' f  T+ O; u4 ~0 l( N" N
+ O* _* v5 [& Q- M
1. 在 WordPress 插件库中寻找可用的公告插件,例如 WP Notification Bars、Announcements、SSP Elegant Notification Bar 等。) p" y& X2 o: F
; O: [* p. ?7 i% C, B, @
2. 安装并激活您选择的插件。您可以在 WordPress 后台的「插件」->「添加新插件」界面中搜索并安装插件,然后在「插件」->「已安装插件」界面中激活它。( Z7 |! s  `5 h# q7 g* u
  C" v6 v4 G  c0 H! P+ q9 M
3. 在插件的设置页面中配置您的公告内容和样式。不同插件的设置选项和功能可能会有所不同,但通常都允许您定义公告的文本、链接、颜色、位置等。
6 Q& _; H5 L6 o. ]: I5 y5 c* }! \/ f8 S1 c9 E. d
4. 将公告添加到您的网站上。在插件设置页面中完成公告的设置后,您可以通过编辑 WordPress 主题的代码或使用插件提供的方法将公告添加到您的网站中。不同插件可能使用不同的添加方法,具体请查看详细说明或联系插件作者。
- ~: C  y0 c. S+ ?: z
+ P6 q. `' w$ l2 L* H8 \7 X- ^/ A注意,如果您使用的 WordPress 主题已经包含了公告功能,或使用了其他公告插件,可能会导致冲突或功能重复。如果您遇到了这样的问题,请查看主题文档或联系主题作者以获取解决方案。
回复

使用道具 举报

346

主题

559

回帖

3656

积分

管理员

积分
3656
QQ
 楼主| 发表于 2023-5-18 08:34:51 来自手机 | 显示全部楼层
如果是自己开发的话,具体要怎么做?5 R! M% E; R, j. j, m1 t( H! k
8 m4 X+ e7 T5 l/ l, W
如果您自己开发 WordPress 主题或插件,并且需要在后台中增加一个发布全站公告的功能,可以按照以下步骤操作:! s0 @' F$ v6 r  R- R1 o9 o, F

3 W+ ~9 h$ T& h! g+ w, R1. 创建一个自定义的 WordPress 后台页面。您可以使用 `add_menu_page()` 或 `add_submenu_page()` 函数来创建一个自定义后台页面,例如:4 g9 W. f9 J, n) ]

' m2 I# Q; i: j2 g( L   ```
2 s6 ]" r5 o! g   add_menu_page(* D4 e* E9 y) R5 U1 ?  ^! \& @4 G
       '全站公告',
& s, q* l) e# a5 m       '全站公告',1 m1 ]" C) w. `
       'manage_options', //需要的用户权限6 U, o2 X, X5 u$ ^& O% @$ i
       'site-wide-notice', //后台页面的 slug8 a1 I5 g( p1 ^. ?8 V
       'render_site_wide_notice_page', //用于渲染后台页面内容的函数7 i, ]# x- x8 f2 D+ X% K5 W
       'dashicons-megaphone', //用于显示在菜单中的图标
4 J" g. k5 g0 Z       30 //菜单项的位置
$ O0 h" r5 a% l; r, r   );
$ x, F* u( S3 b8 |   ```
$ K8 x7 ^% ~: Q7 W
9 G0 g; z/ \$ v0 [% G# I; T, p0 j   在该示例中,我们使用 `add_menu_page()` 函数来创建了一个名为“全站公告”的菜单项,并指定需要的用户权限(`manage_options`),在后台页面的 slug 为 `site-wide-notice`,用于渲染后台页面内容的函数为 `render_site_wide_notice_page`,在菜单中显示的图标为 `dashicons-megaphone`,菜单项的位置为 30。
- s0 A- }* j, n$ c2 n- W3 e' x
& a  d, M9 G3 H3 Z2. 编写用于显示和保存全站公告内容的代码。您可以在自定义后台页面中创建一个表单,让用户输入公告的标题、内容等信息,并将这些信息保存到 WordPress 数据库中的某个表中。例如:
+ T5 i5 m, W, K9 T1 n, S0 E. n. g# i6 p4 u. J
   ```( k/ [0 H) ^- c3 q" Y* L
   function render_site_wide_notice_page() {
& N7 F  D; w+ D6 a0 q1 N      // 渲染后台页面内容
$ \. |! k  R6 \0 N( u      echo '<div class="wrap">
2 K, y- F& `' H/ S2 D2 x          <h2>全站公告</h2>! C8 }3 I1 T  c% J# U
          <form method="post" action="">
0 U( n% ]* @" n/ W5 e              <label for="title">公告标题:</label>
7 z" O0 ~4 [8 h* U7 B' X9 a& {" S( V              <input type="text" name="title" value="'.get_option('site_wide_notice_title').'"><br><br>) v% L% R1 {( t! O7 p7 C4 |
              <label for="content">公告内容:</label>! p$ N* e  ]3 P0 Z! c! a
              <textarea name="content">'.get_option('site_wide_notice_content').'</textarea><br><br>
: F: ~" C, s8 e" H              <input type="submit" name="submit" value="保存设置">* x  ]  a1 X' ^
          </form>
! b+ e# U2 k, [* d( Z" f      </div>';0 Y0 N7 ]* h4 }( U. y  m$ r
- e( S+ ^* V' C9 ?& w' T
      // 处理表单数据
3 C) p8 Q. z8 @/ U* n4 T( \      if (isset($_POST['submit'])) {
* i7 ?6 b) j, X9 Y  s( P$ T          update_option('site_wide_notice_title', sanitize_text_field($_POST['title']));
9 a* R" K; X$ w9 Y0 B          update_option('site_wide_notice_content', sanitize_text_field($_POST['content']));) D7 U6 p' c7 x. K2 X. |# @
      }, b! \: _, O# L% l
   }
. v5 p, M: z8 G) @8 O; V   ```
4 i1 p9 u7 z9 @
: w8 o( o5 g9 d# l9 z) }0 [' [  _; v   在该示例中,我们创建了一个表单,让用户输入公告的标题和内容,并使用 `update_option()` 函数将这些数据保存到名为 `site_wide_notice_title` 和 `site_wide_notice_content` 的 WordPress 配置项中。如果用户点击提交按钮,则将表单数据更新到配置项。/ [; e  E7 j1 Y$ F" M

& |( P, k/ ^( B5 @0 L9 p! [3. 在 WordPress 主题中显示全站公告。您可以通过在 WordPress 主题的 `header.php` 文件中添加代码,将公告内容显示在网站的顶部或其他位置。例如:$ _' _& ?7 y( o  d/ }. L
1 ]% k8 ?# p, x; v2 z# ^" K9 I
   ```
# @- O; t+ I5 h% t8 G6 s   <?php
) A3 P5 w& H3 l$ P7 \   $site_wide_notice_title = get_option('site_wide_notice_title');) J- t( u4 M$ v) T8 Z$ z
   $site_wide_notice_content = get_option('site_wide_notice_content');
. |2 t: I# o9 D# P5 V4 {9 F. z   if (!empty($site_wide_notice_title) || !empty($site_wide_notice_content)) {, l  P8 b% N! M4 L; m2 M
       echo '<div class="site-wide-notice">';
* a& G  y# x9 y       if (!empty($site_wide_notice_title)) {5 X( a% u; A" e0 N; Z9 t/ ^
           echo '<h3>'.$site_wide_notice_title.'</h3>';' I2 O8 C6 d% r. W7 Q2 N( F) ]
       }
4 g( f. h* ?8 q       if (!empty($site_wide_notice_content)) {9 E7 x# }1 X! v0 Z
           echo '<p>'.$site_wide_notice_content.'</p>';+ r8 P  s. O& Q( L
       }6 V; [5 X9 G1 Z; b
       echo '</div>';  m2 ]7 F& o2 Y, Q
   }; l" T, M8 Z6 e: r* R7 P
   ?>
7 E- k' ]3 K3 }/ e   ```
# I0 `+ ^& p" L& S& l; g; U, N! k
   在该示例中,我们检查 WordPress 配置项中名为 `site_wide_notice_title` 和 `site_wide_notice_content` 的值是否为空,如果不为空,则在 `header.php` 文件中添加一个名为 `site-wide-notice` 的容器,将公告标题和内容显示在其中。
, W8 o" X+ M& K" L/ X: L$ J& P$ ?& @) _
请注意,本示例仅提供了一个框架,具体实现可能会根据您的需求和实际情况有所不同,您需要根据自己的需要进行修改和调整。同时,为了确保安全性,您还会需要对用户输入的数据进行适当的验证和过滤,例如使用 `sanitize_text_field()` 函数来过滤表单数据。
回复

使用道具 举报

346

主题

559

回帖

3656

积分

管理员

积分
3656
QQ
 楼主| 发表于 2023-5-18 09:26:50 来自手机 | 显示全部楼层
那如果需要发布多条公告,并进行管理,要如何实现?6 e4 v; p9 G9 C& v, B
5 \1 C) |: ~4 r$ {0 V$ F( \
您可以创建一个自定义的 WordPress文章类型,例如“公告”,并对其进行自定义化,以实现发布多条公告并进行管理的功能。以下是具体步骤:, e6 [0 k  i! T8 _; W

5 S' t. I' @0 o9 c1 ?; _1. 创建一个自定义的文章类型:在你的主题 `functions.php` 文件中,添加以下代码:
* N7 E5 Z1 I; U1 H- }9 S2 {; O- L
```: L5 T  U" r5 f( V% @$ D# w$ Y
function create_custom_post_type() {
1 a7 t- G! l0 `: I7 ]9 v6 b8 f) j    $args = array(
7 o2 w& ?4 g) k0 h: y8 n        'labels' => array(
1 ?9 y3 h9 {( z& t3 d            'name' => '公告',
* Z2 J8 D/ x3 l5 b. r1 P' M2 }, J7 I' v            'singular_name' => '公告'! z! z$ N, E. F7 j4 K
        ),
. b4 Y# l3 u* J: N        'public' => true,
( w" p7 B  h; T        'has_archive' => true,
9 f0 N; S9 z5 [4 O$ J        'supports' => array('title', 'editor', 'thumbnail', 'excerpt', 'custom-fields', 'revisions'),1 Y, {; h- o4 Q9 M+ u  ~! R
        'taxonomies' => array('category', 'post_tag'),
) }1 n8 o; ^  z  W" t        'menu_icon' => 'dashicons-megaphone',. R5 G, S3 ~* F3 f. _+ x' \
        'menu_position' => 5,; |6 r- x  `( M7 j; r( z3 l
        'rewrite' => array('slug' => 'site-wide-notices')
! f- k) u8 I) d( g# B    );
- ~7 e, D' Y3 A9 Z* l7 |    register_post_type('site-wide-notices', $args);
5 t( [8 x0 v3 \( F}
1 {! i. L& n: r/ m9 t$ Madd_action('init', 'create_custom_post_type');
1 z* N" I, ?. E4 b( Y6 x```- r+ z# A- F& v3 q7 p5 [0 \" v
. g$ O* z" B* m" O# o+ ~( N; t
在示例中,我们注册了一个名为 "site-wide-notices" 的新的文章类型,并定义了文章类型名称、缩略名、文章类型支持的功能、分类法、管理菜单图标等设置。
9 W8 Y# J5 A. r% F2 Y* }  r
4 Y0 n  n& w' i4 T4 Y2. 在你的 WordPress 后台中创建新文章类型“公告”:现在,你就可以在 WordPress 后台中通过导航到“公告”菜单,来添加、编辑或删除公告了。您可以在编辑公告的页面中添加标题、内容、特色图像或其他自定义的元数据字段。  c7 t( r0 q6 W3 x

' v9 k, ~! L. k) n2 J3. 在主题中显示公告:在您的 WordPress 主题文件中添加以下代码,以在您的网站上显示公告:) \3 V! Q  a1 p& T) U1 q- C0 C
! M& ~- _1 k3 }+ j% D7 y
```
3 c. q' g! q9 J# ~$args = array(
) r( d2 B. r) @# k& Y4 l) y# t  n1 E    'posts_per_page' => 3, // 显示的公告数量3 R9 G5 l0 w- P/ w$ o4 J# d8 R
    'post_type' => 'site-wide-notices', // 公告文章类型& ~9 A5 h, C: e4 H; D# V
    'post_status' => 'publish', // 公告状态
* ^- y( ~* m/ h7 q2 E- }    'order' => 'DESC' // 排序方式
8 [2 J3 N+ w8 X- q6 v);
  g7 q6 ?4 g/ K$ N' ]
0 \8 {" q7 I& ^$notices = new WP_Query($args);
: F* [" ?3 N) oif ($notices->have_posts()) :
7 R  u2 ?# n2 @6 @6 G( A1 x- C5 X2 o. V    while ($notices->have_posts()) : $notices->the_post(); ?>
+ q8 x; n' w( a        <div class="notice">
; y0 Y2 u; J& B( Q- m0 F. ]0 M            <h3><?php the_title(); ?></h3>0 P8 {5 i  u- x6 W4 T) X
            <div class="notice-content"><?php the_content(); ?></div>
" M+ t: T, y- n* T6 R$ f5 d        </div>) q4 v. `& A$ Y9 I2 |- l* _, w
    <?php endwhile;- O, ~0 K+ N( H# S+ e4 F, q: Q
else :7 ^# }2 |' h5 K: o; B
    echo "暂无公告";( k! \' m4 ]1 J, l( V+ z
endif;
. K' r4 b2 \1 S$ V8 ^" e) Lwp_reset_query();
% \5 K+ F7 G! ]- R, }" Y```
) ^7 r$ p+ [$ Q' Q4 K. S
9 E2 f/ o# U/ p( S! |  [这段代码将使用 WordPress 的 `WP_Query` 类从公告文章类型中获取最新发布的 3 条公告,并在前端页面中循环遍历并显示公告标题和内容等信息。% J: I( F/ v% _/ o& J: N% C
0 ?( A5 {2 Y* }) J. J: S
以上便是实现 Wordpress 后台发布多条全站公告的基本步骤。需要注意的是,自定义文章类型可对应多篇文章,具体根据您的需求进行调整。
回复

使用道具 举报

346

主题

559

回帖

3656

积分

管理员

积分
3656
QQ
 楼主| 发表于 2023-5-18 09:27:55 来自手机 | 显示全部楼层
如果不想修改functions.php,有其他更好的办法吗?( _" R+ u& O. j  E) C9 C% A3 L

- Z9 Y. J6 A8 u/ S如果您不想修改主题 `functions.php` 文件,也可以创建一个自定义插件来添加新的文章类型。
' V- L" u% ^& L% [# D5 p) w, a. A
以下是创建自定义插件的步骤:  k. a1 d+ P# ~5 n
! T" e" w( _8 _+ @! h
1. 创建新插件:在 WordPress 插件目录中创建一个新的子目录,例如 `site-wide-notices-plugin`,然后在该目录中创建一个新的 PHP 文件,例如 `site-wide-notices-plugin.php`,并在文件头部添加必需的标记,例如:8 ]) G. L* Y$ g# v$ i( _

: C: t1 B2 A8 E4 O   ```: C5 U: D- R; o- r3 \/ b* y
   <?php
- {1 W) B" d) T7 h% z) O+ D   /*8 F% _4 }6 a7 x( O/ V
   Plugin Name: Site Wide Notices Plugin, Y4 z& K$ f3 `/ o; ^0 d' J
   Description: Adds a new custom post type for site-wide notices./ u$ r2 j% Z# F& R( G4 `# }
   Version: 1.0
5 N! t0 u( ?! l% O& p   Author: Your Name
: ~" a: D4 F8 }; @9 W/ T" ]2 Q. Z  ^   Author URI: http://example.com
" C% J% k/ u7 j: C2 _( Q! I2 ]" B   */( n+ E; o) s* g, K- N3 U: u
& e. \: b) y) ^' x7 A. \
   // Add plugin code here...
1 [9 m7 x% s: P4 l' k   ```
% Q$ f6 S( s- g0 V. ]) {6 F+ V4 a2 D+ }0 F9 z% O3 j4 b
   在示例中,我们创建了一个名为 `Site Wide Notices Plugin` 的新插件,该插件添加了一个新的自定义文章类型,并指定了版本、作者和作者 URI 等元信息。; M' {1 h7 b* H3 g
9 i7 C; H( {7 f: d2 c4 N  x, O( _. J
2. 在插件中注册新的文章类型:在 PHP 文件中添加以下代码,用于注册一个名为“site-wide-notices”的自定义文章类型:
" V' ]- \' E" j; P! G5 L  l' S8 `2 P" e. r6 b
   ```: W. v" x* b$ h. L5 z6 |& l
   add_action('init', 'create_custom_post_type');& y! K- m+ x; D" F8 p1 a
   function create_custom_post_type() {
# h2 T! M. U$ B$ \      $labels = array(
% D6 e& q' E" ^6 D. n          'name' => 'Site Wide Notices',$ s; M* }7 z( ?% o1 R/ D$ @
          'singular_name' => 'Site Wide Notice',
( e0 V( f+ W; b) u& {$ @& s          'add_new' => 'Add New',
( N3 K3 O' G; U          'add_new_item' => 'Add New Site Wide Notice',
0 i+ @. k  C, q          'edit_item' => 'Edit Site Wide Notice',5 C/ E8 \3 R6 V% ~) V
          'new_item' => 'New Site Wide Notice',
; n  ~  u, g0 S3 K3 B2 J          'view_item' => 'View Site Wide Notice',
6 w5 V0 I1 W$ V8 B' }% G. O          'search_items' => 'Search Site Wide Notices',6 O+ M! e2 T8 O. U8 N* }& j3 Z% l
          'not_found' => 'No site-wide notices found',4 {2 W: }" f1 m2 ^9 p. _" B
          'not_found_in_trash' => 'No site-wide notices found in trash'
# w# t0 Z  i& X$ P7 `      );& ]) h8 y; z- A" P2 e6 Q

4 r0 C9 a8 X6 B- V9 _6 U2 R" Q4 q      $args = array(
: ]7 @4 e0 O' u          'labels' => $labels,, u1 H# Q. s5 k9 J# @8 O  ?
          'public' => true,
# l2 O- v" ~9 M4 h  n          'has_archive' => true,3 T9 J2 K. c/ h( W0 U
          'supports' => array('title', 'editor', 'thumbnail', 'excerpt', 'custom-fields', 'revisions'),% `1 t8 _: W2 l2 ~/ B4 O
          'taxonomies' => array('category', 'post_tag'),
+ ~3 I, `, n! j' J6 V- ~. x9 X          'menu_icon' => 'dashicons-megaphone',
* s4 R+ c+ v' T$ ]& I          'menu_position' => 5,: _$ N* {* ]  P& {
          'rewrite' => array('slug' => 'site-wide-notices')* C8 i: O! W1 p  e+ _
      );0 Z  Z/ o( w3 S' J5 {- |

  Z* B6 J5 d4 }0 E/ d      register_post_type('site-wide-notices', $args);* i; S) s1 J: Y" C: v5 G
   }
/ h2 z8 T" `' O( F   ```
$ T! p( I: E1 Q" g3 f% J
+ @6 d$ k5 z, n) o/ e   在示例中,我们使用 `register_post_type()` 函数注册一个新的文章类型,并定义了该文章类型的名称、标签和其他设置。' b/ }; {6 J$ V( k9 u: E- N  a

* i4 p! Q+ a- V2 r3. 在后台中添加公告编辑页面:您可以使用 `add_meta_box()` 函数在后台中添加公告编辑页面,并自定义字段和元数据,例如:
: L& e9 [+ ^9 o2 E  t$ Y5 O- ^, c+ F4 n8 ?8 N3 l* {
   ```
" K2 c7 Z) F; }& w, ^7 \: m   add_action('add_meta_boxes', 'add_site_wide_notices_boxes');
# K/ W% Q8 j( M" E; b) e   function add_site_wide_notices_boxes() {1 E$ T2 w3 z7 ~7 s
      add_meta_box('notice-details', 'Notice Details', 'notice_details_meta_box', 'site-wide-notices', 'normal', 'high');
# a0 ^( E' @4 [& G6 A+ g8 X   }' o( K; C7 |) n. @8 Z
/ G$ ^! C3 h* F
   function notice_details_meta_box($post) {$ ~# e8 E$ J5 }! a3 g
      wp_nonce_field(basename(__FILE__), 'notices_nonce');
2 ]3 c$ q$ z. S4 j! z1 O, y      $notice_title = get_post_meta($post->ID, 'notice_title', true);
; p5 Y% c$ W+ f  }% z4 N      $notice_content = get_post_meta($post->ID, 'notice_content', true);: [1 G2 }4 l, T1 F. ]& w
      ?>
9 r1 ~1 j7 d/ e( B- O      <p>; s* f5 a) q1 {
          <label for="notice-title">Notice Title</label><br>( I% Y2 x5 I. b6 I( v! |
          <input type="text" id="notice-title" name="notice_title" style="width: 100%;" value="<?php echo $notice_title; ?>">5 {5 C% \3 U/ V" W* v8 \
      </p>
; A( v$ V8 }9 W2 X      <p>
9 F# l& M/ e5 j          <label for="notice-content">Notice Content</label><br>7 o+ @; ^- m3 q; z
          <?php wp_editor($notice_content, 'notice-content', array('textarea_rows' => 10)); ?>
% D$ R2 r( x9 r3 I9 b1 ]      </p>9 c# K* v7 G& m  `3 q9 d0 I
      <?php
+ e0 t. A" C( F8 p   }' m( T& }& C- C( C1 n8 G
2 q/ H' h! w! a
   add_action('save_post', 'save_site_wide_notice_meta_box');
$ v- L) R+ N. y- {   function save_site_wide_notice_meta_box($post_id) {
; W2 D* l, @5 G% t      if (!isset($_POST['notices_nonce']) || !wp_verify_nonce($_POST['notices_nonce'], basename(__FILE__)))/ ~, |. @7 J& X' E7 O4 @( V
         return;
+ d% N# O0 d' H8 S1 g! o      if (defined('DOING_AUTOSAVE') && DOING_AUTOSAVE)
3 V$ I' _' m6 G  b/ P  ^2 }         return;* E2 y* }2 v% A# [
7 D& A! q5 J7 g! h) X5 L3 {& u
      if (isset($_POST['notice_title'])) {! L7 x  h  R9 c# f8 c! O: e" E
          update_post_meta($post_id, 'notice_title', sanitize_text_field($_POST['notice_title']));' ?2 s; w6 T" Z& f/ [
      }
, Y9 S: y$ n: V0 ^9 h# c      if (isset($_POST['notice_content'])) {; t. K; \0 D6 `+ Q8 \. W
          update_post_meta($post_id, 'notice_content', wp_kses_post($_POST['notice_content']));6 {( I8 h' y. {3 m
      }" ?: W0 f( s: F! Z8 P
   }
+ i2 }1 r- F. y! M+ B9 Y" v+ {   ```" h) v% l+ E% z& s6 N3 F$ l% |$ C

$ c; @6 ^4 u& A6 j   在示例中,我们使用 `add_meta_box()` 函数添加了一个名为 `notice-details` 的元框,用于在编辑页面上显示自定义字段和元数据。在 `notice-details_meta_box()` 函数中,我们使用 `wp_editor()` 函数添加了一个可视化编辑器,用于编辑公告内容。在 `save_site_wide_notice_meta_box()` 函数中,我们使用 `update_post_meta()` 函数将公告标题和内容保存到 WordPress 数据库中。
* ?( e& b( i  r7 V: F9 s1 p! q5 ?/ S/ r% k: c. m. Q" _
4. 在前端页面中显示公告:在 WordPress 主题文件中添加以下代码,以在您的网站上显示公告:
. U# M5 }7 m: Y$ x+ j1 o% ?7 ~1 N, i6 U: c! K) A
   ```- z5 ^$ a( v0 K
   $args = array(
) n1 r5 |. o: [3 E  n      'post_type' => 'site-wide-notices',
8 e& g) ~5 x) A# g3 h- R      'posts_per_page' => 3,/ W# j& {# f0 x. r
      'order' => 'DESC',% B, G8 U8 ]* O; i3 f
      'orderby' => 'date'
% c  K# ~8 D  d- z9 Z/ ?   );
2 A% r; V! b! z1 g   $query = new WP_Query($args);
+ H0 ]0 [/ G& R' C" l1 p   if ($query->have_posts()) :
* `1 T6 s, B2 H      while ($query->have_posts()) : $query->the_post(); ?>1 S& ~6 I9 Z4 {& m, P
          <div class="notice">( K/ L, E% E4 i% w& b4 F) s
              <h3><?php the_title(); ?></h3>
7 b5 _8 c  ^$ s2 d/ V: n* @* b' f- u              <div class="notice-content"><?php the_content(); ?></div>$ z. u( i( M6 h( N) e9 W
          </div>
* T& c: ^# g% ^; i; M3 N, y      <?php endwhile;
. G5 n0 B4 ~  b9 s) B( x" {      wp_reset_postdata();
. i* W/ z. _: d+ `" m   endif;, e9 C  s" U5 c/ K  n
   ```: a2 `1 t8 T6 y- _0 `# f  C
( E. _, \6 p: p: i) ~
   在示例中,我们使用 `WP_Query` 类从 `site-wide-notices` 文章类型中获取最近发布的 3 条公告,并在前端页面中循环遍历并显示标题和内容等信息。
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2026-2-4 20:06 , Processed in 0.014247 second(s), 2 queries , Redis On.

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

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