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

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

[复制链接]

347

主题

565

回帖

3689

积分

管理员

积分
3689
QQ
发表于 2023-5-18 08:34:20 来自手机 | 显示全部楼层 |阅读模式
您可以使用以下方法来快速在 WordPress 后台增加一个全站公告的功能:
9 i; T. _$ ?) {
. c! z* E$ }% R3 e7 H4 N4 a1. 在 WordPress 插件库中寻找可用的公告插件,例如 WP Notification Bars、Announcements、SSP Elegant Notification Bar 等。
( ^# o# m: D2 U) B1 E* A- |
/ |4 s0 _- S% K' E2. 安装并激活您选择的插件。您可以在 WordPress 后台的「插件」->「添加新插件」界面中搜索并安装插件,然后在「插件」->「已安装插件」界面中激活它。
8 S% G) r  J& |4 S- @$ N1 e8 d8 n+ e0 I+ e4 u' d
3. 在插件的设置页面中配置您的公告内容和样式。不同插件的设置选项和功能可能会有所不同,但通常都允许您定义公告的文本、链接、颜色、位置等。
0 E2 b7 T# j7 l8 Z. g$ `" @; t. Z, ?+ p% K. k( d" J
4. 将公告添加到您的网站上。在插件设置页面中完成公告的设置后,您可以通过编辑 WordPress 主题的代码或使用插件提供的方法将公告添加到您的网站中。不同插件可能使用不同的添加方法,具体请查看详细说明或联系插件作者。, J7 G; o; Q/ b4 [/ K

" W/ D% d- b, x! `! ~' I. E) p: @注意,如果您使用的 WordPress 主题已经包含了公告功能,或使用了其他公告插件,可能会导致冲突或功能重复。如果您遇到了这样的问题,请查看主题文档或联系主题作者以获取解决方案。
回复

使用道具 举报

347

主题

565

回帖

3689

积分

管理员

积分
3689
QQ
 楼主| 发表于 2023-5-18 08:34:51 来自手机 | 显示全部楼层
如果是自己开发的话,具体要怎么做?
0 u6 H. {( r2 k6 J- c! H* Z! C, V$ \
如果您自己开发 WordPress 主题或插件,并且需要在后台中增加一个发布全站公告的功能,可以按照以下步骤操作:- u# e4 o) O4 I

& B) b5 n% B4 X# M8 l3 A1. 创建一个自定义的 WordPress 后台页面。您可以使用 `add_menu_page()` 或 `add_submenu_page()` 函数来创建一个自定义后台页面,例如:
/ |) h8 G$ }5 Z( c5 W; \1 a
/ u( `9 f" Y, l4 U* v+ e$ N' C   ```6 P* B" C, q& n8 Y5 c
   add_menu_page(& f, s, C" i4 ]$ s
       '全站公告',
$ _" L. N( W9 ^6 H. e       '全站公告',7 I/ n3 r+ _& h6 Y
       'manage_options', //需要的用户权限  v3 m( @( }3 O; f% A
       'site-wide-notice', //后台页面的 slug- r" m( d" q% z6 g4 ^7 ?. v
       'render_site_wide_notice_page', //用于渲染后台页面内容的函数
% d1 G+ V5 a0 U1 M- p       'dashicons-megaphone', //用于显示在菜单中的图标3 S/ K" d3 d& F6 n2 F( B" `$ d
       30 //菜单项的位置# i2 Z' p! H. D7 d" C
   );& p7 I# ~. p' [1 S, H% F
   ```
9 v8 v: k$ J4 e1 T5 P/ {% _% ^$ \2 T' C- d- {. d
   在该示例中,我们使用 `add_menu_page()` 函数来创建了一个名为“全站公告”的菜单项,并指定需要的用户权限(`manage_options`),在后台页面的 slug 为 `site-wide-notice`,用于渲染后台页面内容的函数为 `render_site_wide_notice_page`,在菜单中显示的图标为 `dashicons-megaphone`,菜单项的位置为 30。/ x5 R! Z  y  ^" F2 R6 D

0 Z% h+ Q# x' {9 _$ ]# i: R5 K" o* ]2. 编写用于显示和保存全站公告内容的代码。您可以在自定义后台页面中创建一个表单,让用户输入公告的标题、内容等信息,并将这些信息保存到 WordPress 数据库中的某个表中。例如:' t# M5 R% r1 f! d' a2 G' j4 s

4 U. V! H0 U; C/ W, A/ v; T( z   ```: r6 `: s4 j* o4 e
   function render_site_wide_notice_page() {( v7 {% M% h8 c1 N. ]& f/ Z
      // 渲染后台页面内容! ^) m" o  D: Y$ \/ v' F8 s
      echo '<div class="wrap">
) G. p6 @& C1 s          <h2>全站公告</h2>
; _: D* W- i; M! S# d          <form method="post" action="">
1 R+ w$ Z; {2 M              <label for="title">公告标题:</label>* E7 M# Z- v3 J5 j
              <input type="text" name="title" value="'.get_option('site_wide_notice_title').'"><br><br>
* }* i* V& G/ a9 U) n0 P              <label for="content">公告内容:</label>
! s) r  [. ]' {# E/ X              <textarea name="content">'.get_option('site_wide_notice_content').'</textarea><br><br>6 ^. D, t. `% S! D
              <input type="submit" name="submit" value="保存设置">
. l4 R) o% }4 c" B# {          </form>, l* m. R5 D0 u* x
      </div>';
2 S4 e$ J2 G' {& |) d0 Z2 e1 [
. x1 A# D( E$ M" u      // 处理表单数据
8 t1 m$ k2 F4 K$ Y      if (isset($_POST['submit'])) {
/ Q& Y" M- y3 n! O. m# m          update_option('site_wide_notice_title', sanitize_text_field($_POST['title']));* e2 Z! y3 T2 b
          update_option('site_wide_notice_content', sanitize_text_field($_POST['content']));; ?+ e/ S6 q2 `' c
      }
$ t' G4 z& u) _' O7 K& P   }
) v4 ~6 I  ?+ a9 T   ```
; |0 B& ^' L! V5 w& E( C. d5 m
0 x9 t- S9 K; y   在该示例中,我们创建了一个表单,让用户输入公告的标题和内容,并使用 `update_option()` 函数将这些数据保存到名为 `site_wide_notice_title` 和 `site_wide_notice_content` 的 WordPress 配置项中。如果用户点击提交按钮,则将表单数据更新到配置项。/ _& w. H1 V, d" ~

# M' v# Y+ i: d1 N* P2 P& S+ l: t3. 在 WordPress 主题中显示全站公告。您可以通过在 WordPress 主题的 `header.php` 文件中添加代码,将公告内容显示在网站的顶部或其他位置。例如:  `& J" [6 Z  D6 v) ~- i& T0 s
. k1 _% {- u% N" S6 x
   ```
0 `9 ~- h$ p* ]   <?php
. g, {9 y  S# e   $site_wide_notice_title = get_option('site_wide_notice_title');
* ?1 ~- Q( P8 @   $site_wide_notice_content = get_option('site_wide_notice_content');; G. J7 M$ R$ a; w% X/ _, U. |
   if (!empty($site_wide_notice_title) || !empty($site_wide_notice_content)) {3 a5 ?  O4 {& ~; p- @9 Z: e
       echo '<div class="site-wide-notice">';4 {3 r7 N$ L' @5 d& `  H
       if (!empty($site_wide_notice_title)) {
2 q, I/ q( \+ |2 }6 X/ U           echo '<h3>'.$site_wide_notice_title.'</h3>';
# I/ J/ K1 V: r) n       }4 j) o! P' ]# l! j3 @  z) x) @- t/ X
       if (!empty($site_wide_notice_content)) {
; C/ H! B. l* k( j3 D% u% Y           echo '<p>'.$site_wide_notice_content.'</p>';
+ E  M6 S: {* T; c6 J       }
- F0 B2 v0 z; T       echo '</div>';
' S/ j% R- a. k+ n% t0 z* U   }* G- |4 y/ r/ e, F9 U% r
   ?>$ H, L/ A: n) r, Z1 Q9 V/ V
   ```
5 X1 c) ~* c& S8 D- K" a3 H' [5 E3 T2 N. x
   在该示例中,我们检查 WordPress 配置项中名为 `site_wide_notice_title` 和 `site_wide_notice_content` 的值是否为空,如果不为空,则在 `header.php` 文件中添加一个名为 `site-wide-notice` 的容器,将公告标题和内容显示在其中。
* `. M$ }4 [2 S% M2 D+ C- \) k  J
) Z' E9 H5 L/ d% Y; g请注意,本示例仅提供了一个框架,具体实现可能会根据您的需求和实际情况有所不同,您需要根据自己的需要进行修改和调整。同时,为了确保安全性,您还会需要对用户输入的数据进行适当的验证和过滤,例如使用 `sanitize_text_field()` 函数来过滤表单数据。
回复

使用道具 举报

347

主题

565

回帖

3689

积分

管理员

积分
3689
QQ
 楼主| 发表于 2023-5-18 09:26:50 来自手机 | 显示全部楼层
那如果需要发布多条公告,并进行管理,要如何实现?' T! W5 \( T9 [, \" p$ N( N. b

% {& x; K; {! x( i  `0 G7 |您可以创建一个自定义的 WordPress文章类型,例如“公告”,并对其进行自定义化,以实现发布多条公告并进行管理的功能。以下是具体步骤:* ^/ A" V" z( F' ?) b
3 V3 p% d( d( V- O; l, T# h  J
1. 创建一个自定义的文章类型:在你的主题 `functions.php` 文件中,添加以下代码:9 b8 z9 C, ]9 d- G* q( P# t5 n8 P
6 S, i; s  h( i! K! A: ^9 W
```  f3 F0 a6 c. K4 X) \
function create_custom_post_type() {
. F2 f" y9 U. @    $args = array(& L8 W4 N( A7 n& Y; v
        'labels' => array(
! C2 g7 l. D5 v) M* ]5 ?            'name' => '公告'," n; D# m* V* D7 f0 x: @. M
            'singular_name' => '公告'
% N9 m8 E% N2 V- X& U7 A; G9 _        ),
: p9 W+ L1 l9 R: t; r2 t1 |) y& t% l        'public' => true,/ `+ Y# J2 ?5 R+ [( L; V8 Q
        'has_archive' => true,
- q, b& z" z. S! Y        'supports' => array('title', 'editor', 'thumbnail', 'excerpt', 'custom-fields', 'revisions'),
! L4 m1 X/ L0 Z/ |/ u        'taxonomies' => array('category', 'post_tag'),; \  M3 _0 E$ d
        'menu_icon' => 'dashicons-megaphone',4 ^4 Q; e4 T# `; Y( |3 g
        'menu_position' => 5,
6 B, B2 H2 r# P& a% z. t  J        'rewrite' => array('slug' => 'site-wide-notices')
0 D4 T) @( E( t4 w: i% b    );
( X4 l" e" k" T4 H. U    register_post_type('site-wide-notices', $args);
* C3 G* T, u9 L}
2 Q* m+ l9 g* f. ^& fadd_action('init', 'create_custom_post_type');
  D, C& B' b; s9 d5 f+ R```
8 v7 @/ @4 B7 P. s9 k. t4 y4 F6 p" O7 \/ U; m  C& L6 f) z
在示例中,我们注册了一个名为 "site-wide-notices" 的新的文章类型,并定义了文章类型名称、缩略名、文章类型支持的功能、分类法、管理菜单图标等设置。
% K' U+ M' U" o+ ^3 _/ k
* F- a- Z  d6 D+ l6 g3 T2. 在你的 WordPress 后台中创建新文章类型“公告”:现在,你就可以在 WordPress 后台中通过导航到“公告”菜单,来添加、编辑或删除公告了。您可以在编辑公告的页面中添加标题、内容、特色图像或其他自定义的元数据字段。' Q( g: L2 v% b9 X  p
* N8 M- U, j3 F/ o
3. 在主题中显示公告:在您的 WordPress 主题文件中添加以下代码,以在您的网站上显示公告:
8 Y8 L' o3 ^) @2 U4 C" `5 }( V5 x$ ?4 ?
```
. z7 e- h9 G# Y2 a$args = array(5 o5 s" @; S5 C
    'posts_per_page' => 3, // 显示的公告数量# b; N3 p6 P+ J+ i/ ~
    'post_type' => 'site-wide-notices', // 公告文章类型; W2 G- e3 h' e5 r% H
    'post_status' => 'publish', // 公告状态/ l9 ~; K: e( t; a' m
    'order' => 'DESC' // 排序方式! a$ v2 A& |* e! ]% u6 ^, Q
);
$ ^, a! h' o9 ^3 m) ^/ i* m9 |# {2 K( N( v0 j- `
$notices = new WP_Query($args);
! w2 i, [7 R3 j9 kif ($notices->have_posts()) :# ~# R! f) T- b+ U- k
    while ($notices->have_posts()) : $notices->the_post(); ?>* S  C5 [4 M$ x3 ]+ }4 t. d
        <div class="notice">
( s( p' r# U8 f- N9 O" |- z            <h3><?php the_title(); ?></h3>1 o' g/ l' P* ?4 g+ h7 m  j+ z
            <div class="notice-content"><?php the_content(); ?></div>7 r2 h) `) E2 m
        </div>1 M, q8 e- R- J" L+ `8 s& |( |
    <?php endwhile;% f, Z- K+ k& Q' v
else :5 B1 |6 ]: v% G" _# p( `5 L9 E/ x
    echo "暂无公告";
5 `% v1 i) U3 Y0 W* c1 nendif;
" [3 T# f) f8 Mwp_reset_query();. z1 p# W9 G0 T4 w
```
1 U, k% [, ?: U: W7 k& j$ [  A' M4 \7 R/ \
这段代码将使用 WordPress 的 `WP_Query` 类从公告文章类型中获取最新发布的 3 条公告,并在前端页面中循环遍历并显示公告标题和内容等信息。0 {6 p- r) l; l2 T0 _/ A3 M$ X
3 v  O9 ^0 _1 i5 J& }. P
以上便是实现 Wordpress 后台发布多条全站公告的基本步骤。需要注意的是,自定义文章类型可对应多篇文章,具体根据您的需求进行调整。
回复

使用道具 举报

347

主题

565

回帖

3689

积分

管理员

积分
3689
QQ
 楼主| 发表于 2023-5-18 09:27:55 来自手机 | 显示全部楼层
如果不想修改functions.php,有其他更好的办法吗?1 K( w9 P" Y: v" g  O9 i. u/ f

) z1 K( b5 S' J" o如果您不想修改主题 `functions.php` 文件,也可以创建一个自定义插件来添加新的文章类型。
+ V& w1 W* @+ _" [0 Q9 _
; b* R4 g1 _7 J5 }+ D以下是创建自定义插件的步骤:; H2 J3 I3 p$ y0 ~/ K1 V7 B) \, c% P$ J

! c, s" ]4 m* h. N8 t. C1. 创建新插件:在 WordPress 插件目录中创建一个新的子目录,例如 `site-wide-notices-plugin`,然后在该目录中创建一个新的 PHP 文件,例如 `site-wide-notices-plugin.php`,并在文件头部添加必需的标记,例如:
: r: S! z$ o8 X; ^
8 u: n6 }4 v* G  y9 k6 o" Z2 ]   ```
7 I& v! |2 N- V0 A5 H5 a9 t   <?php' i5 V5 y0 ~' u  u
   /*
3 F9 Z: a! O# Y& k; U6 J) B   Plugin Name: Site Wide Notices Plugin
2 {6 ~* x2 }2 {3 i   Description: Adds a new custom post type for site-wide notices.
( i' G' G* O: d" g1 {   Version: 1.0  P7 E1 B( @9 y" E" n6 h8 |
   Author: Your Name, t" B, c1 W: b
   Author URI: http://example.com2 ]$ r; c8 Q! H& B8 R) O
   */
( t, \* D$ g/ k" Y3 r4 q2 t  v2 l7 l
$ U4 Q- @% z8 V+ s( ~   // Add plugin code here...
1 X: \  _0 \1 r$ Z) ^   ```
# Q6 P% g" P! U4 g6 I4 D+ o* f2 U/ z6 m2 @+ i% y1 _  z' x' f
   在示例中,我们创建了一个名为 `Site Wide Notices Plugin` 的新插件,该插件添加了一个新的自定义文章类型,并指定了版本、作者和作者 URI 等元信息。
' ^6 z; q- s  z) y3 x/ }. @: b
9 Q2 Q9 R& e3 }8 D+ M3 v5 ]1 D2. 在插件中注册新的文章类型:在 PHP 文件中添加以下代码,用于注册一个名为“site-wide-notices”的自定义文章类型:' R* K4 s1 b/ m, g) y

  I& z! q) K  X% t7 q   ```+ r3 ~! v+ I, |1 Z1 `
   add_action('init', 'create_custom_post_type');, Y( n4 k8 {' S5 {& l# X
   function create_custom_post_type() {
# C5 G; c5 g: Y8 M% S      $labels = array(
& E- \5 f" Z! o# M, ^          'name' => 'Site Wide Notices',
( W7 D% u: \' F6 ~  Q/ `9 y- q          'singular_name' => 'Site Wide Notice',  ]; A( `0 K. b% [# e: N( F' b& e% J+ p
          'add_new' => 'Add New',  D9 y- d, o& b' N! r  k; `
          'add_new_item' => 'Add New Site Wide Notice',- ~) b2 w: H/ V+ \' G% B7 Z' F! I5 F
          'edit_item' => 'Edit Site Wide Notice',
. b/ Z- y4 J/ f          'new_item' => 'New Site Wide Notice',
- w* V% O1 l- j  O( @          'view_item' => 'View Site Wide Notice',8 l; E. H7 Q1 ^% E) Y/ U! p! C- x
          'search_items' => 'Search Site Wide Notices',
# Q& r  e6 L1 m. i, r: a4 |3 ]          'not_found' => 'No site-wide notices found',
; a8 N0 _2 d& Q  z7 C& l- a4 P          'not_found_in_trash' => 'No site-wide notices found in trash'
- i8 q' v2 p5 L      );) Z: }, n; q2 X

8 C( x1 Z. [% a' `      $args = array(
2 E) E9 |1 ]# w          'labels' => $labels,
. V8 r1 P3 R) y3 Y* F- p( L          'public' => true,4 c- I2 Z. F2 q8 I7 \& E3 i
          'has_archive' => true,
4 g3 G, e' p5 l3 e2 E+ x, B          'supports' => array('title', 'editor', 'thumbnail', 'excerpt', 'custom-fields', 'revisions'),
* L! D! K' o) A3 u7 P2 }: G          'taxonomies' => array('category', 'post_tag'),* N, _1 h0 [6 O. g$ A- o# k0 O
          'menu_icon' => 'dashicons-megaphone',
% G8 d2 e" I9 b2 w6 g          'menu_position' => 5,
7 R9 i. L, w! g  o" F          'rewrite' => array('slug' => 'site-wide-notices')
: n9 b6 H$ O+ l) v8 r      );. y1 e* `/ [+ m4 _1 _
" K$ T% S( k6 R
      register_post_type('site-wide-notices', $args);$ l1 `7 G2 u7 a% q* n$ K8 D
   }
$ L- A$ ~8 w' Z4 W   ```
, h7 \  j7 C$ N* u# @6 \0 C2 i5 {0 J: f- B
   在示例中,我们使用 `register_post_type()` 函数注册一个新的文章类型,并定义了该文章类型的名称、标签和其他设置。' `. H3 k1 j2 z4 h" V. W

" F4 m* l& W# q1 H2 S3. 在后台中添加公告编辑页面:您可以使用 `add_meta_box()` 函数在后台中添加公告编辑页面,并自定义字段和元数据,例如:
' w  t! q' O; A  i$ Z
3 {( Y( H0 b/ y, Y5 |   ```% {7 y( {+ Z9 L5 c% O/ _7 n
   add_action('add_meta_boxes', 'add_site_wide_notices_boxes');8 A+ ^% |( l! b& s& e# M
   function add_site_wide_notices_boxes() {
( r' E/ d4 l! F: r" v0 U+ `) P      add_meta_box('notice-details', 'Notice Details', 'notice_details_meta_box', 'site-wide-notices', 'normal', 'high');
) [) W2 u8 I: q) _& H! m   }  p. ~. i$ i' Q  ^5 F

7 j) Q2 s" x' B9 t   function notice_details_meta_box($post) {
" g1 r9 r1 p% @! @1 x      wp_nonce_field(basename(__FILE__), 'notices_nonce');0 }8 L$ u. i+ o; M% z' a
      $notice_title = get_post_meta($post->ID, 'notice_title', true);, Y& Q1 l) ^$ q5 p; {. U
      $notice_content = get_post_meta($post->ID, 'notice_content', true);
! \+ B$ U1 ?! }- `9 Y" y* c      ?>/ u# R4 N# ?# S, _0 o
      <p>
! {. Z8 q' @% d+ U, n          <label for="notice-title">Notice Title</label><br>
+ X% L6 O- J+ W5 r3 [( Y4 r. z          <input type="text" id="notice-title" name="notice_title" style="width: 100%;" value="<?php echo $notice_title; ?>">: E( l: G9 o' M! c
      </p>
9 }  s6 T# P/ R2 i) e3 p      <p>
! l2 J& B/ p. f# i2 s& U3 k+ s  }          <label for="notice-content">Notice Content</label><br>! Q8 x6 k/ A9 Z, @& m
          <?php wp_editor($notice_content, 'notice-content', array('textarea_rows' => 10)); ?>1 V, Y. K( V6 v" d# m4 p
      </p>8 x. q, P; J: h* T1 ^" s) ~
      <?php: H7 D. d, o8 w
   }
4 ?6 Y5 d3 C6 x# t" \5 L2 O* x, D" [6 `8 l$ V
   add_action('save_post', 'save_site_wide_notice_meta_box');' ?! q; {4 I  y
   function save_site_wide_notice_meta_box($post_id) {/ Z: y& X% b+ H- R1 X5 L! K
      if (!isset($_POST['notices_nonce']) || !wp_verify_nonce($_POST['notices_nonce'], basename(__FILE__)))" p  @8 @9 J/ [2 w) g
         return;
& G( r! h) n& ^      if (defined('DOING_AUTOSAVE') && DOING_AUTOSAVE)
7 {+ ]5 J: C7 s1 r1 T" z3 ?) n         return;
. H1 {: u8 Z$ X* q' Q  a
* h, f0 [2 s3 d! R; U) T      if (isset($_POST['notice_title'])) {
/ r5 E# I1 S/ c3 {          update_post_meta($post_id, 'notice_title', sanitize_text_field($_POST['notice_title']));
* W! s% j1 k7 m! m  v      }" h; N0 z4 J( t/ U
      if (isset($_POST['notice_content'])) {
$ A4 y& I# J( y- J, o$ C  c          update_post_meta($post_id, 'notice_content', wp_kses_post($_POST['notice_content']));) z3 e7 N- j' N1 W
      }
+ d  o0 r. ^! S) ^   }
6 f: M# q9 z( s  t5 o# g. B$ g   ```
9 V* ]# Y3 i$ `$ e, s' ?) {0 J, c  K9 u. _
   在示例中,我们使用 `add_meta_box()` 函数添加了一个名为 `notice-details` 的元框,用于在编辑页面上显示自定义字段和元数据。在 `notice-details_meta_box()` 函数中,我们使用 `wp_editor()` 函数添加了一个可视化编辑器,用于编辑公告内容。在 `save_site_wide_notice_meta_box()` 函数中,我们使用 `update_post_meta()` 函数将公告标题和内容保存到 WordPress 数据库中。
4 @. }" s! _: k' G2 v
  E3 y# ?# t- c' M* X/ J9 w4. 在前端页面中显示公告:在 WordPress 主题文件中添加以下代码,以在您的网站上显示公告:
+ |0 T; p: K0 r: t; r$ n" k( @1 h+ k6 g/ p3 k# p( j* Y
   ```1 Z% I+ U0 O9 _8 b; b0 W
   $args = array(  w! |1 ]8 p0 C, {  L: w0 A
      'post_type' => 'site-wide-notices',4 [3 I6 n4 }( k0 x1 W1 S
      'posts_per_page' => 3,
( n4 b8 W" R! Z2 O" `      'order' => 'DESC',
; i; O+ u# ]9 [$ u& Z      'orderby' => 'date'
- t+ h( m2 A/ z- @   );
' p: n3 g: K( ]* I   $query = new WP_Query($args);* B/ R" Q6 C7 j# [( G
   if ($query->have_posts()) :
1 ?9 g- C6 Q8 k% n- |! m      while ($query->have_posts()) : $query->the_post(); ?>: D0 u. k- B9 R9 Q( c
          <div class="notice">" f, b/ N" T8 ?' f& X9 e
              <h3><?php the_title(); ?></h3>
/ q) G  q6 ^; B0 ]" {, S              <div class="notice-content"><?php the_content(); ?></div>" J/ O) G$ E% ^: k
          </div>8 S) d: A- s/ F% x! D
      <?php endwhile;
* s7 G9 A4 `7 m1 A' W% U      wp_reset_postdata();+ Q" e6 A; x# o( e8 a1 {
   endif;5 N2 w; v8 B! @( C5 [  k
   ```
' ]1 ?( W6 V* B5 K6 q, ~4 Y) q  z; X' B; [
   在示例中,我们使用 `WP_Query` 类从 `site-wide-notices` 文章类型中获取最近发布的 3 条公告,并在前端页面中循环遍历并显示标题和内容等信息。
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2026-2-21 08:05 , Processed in 0.015202 second(s), 3 queries , Redis On.

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

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