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

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

[复制链接]

341

主题

543

回帖

3579

积分

管理员

积分
3579
QQ
发表于 2023-5-18 08:34:20 来自手机 | 显示全部楼层 |阅读模式
您可以使用以下方法来快速在 WordPress 后台增加一个全站公告的功能:" Z1 }+ }& J+ E( v0 U

. i( {5 f3 I1 E' \, [1. 在 WordPress 插件库中寻找可用的公告插件,例如 WP Notification Bars、Announcements、SSP Elegant Notification Bar 等。
2 d$ h' a9 U6 x- K' q4 r2 e  s* x- }0 C; D9 H$ J
2. 安装并激活您选择的插件。您可以在 WordPress 后台的「插件」->「添加新插件」界面中搜索并安装插件,然后在「插件」->「已安装插件」界面中激活它。
: v! L4 A8 T1 k; f( u/ Q" ]% ^3 ^6 @
3. 在插件的设置页面中配置您的公告内容和样式。不同插件的设置选项和功能可能会有所不同,但通常都允许您定义公告的文本、链接、颜色、位置等。& k+ W4 \  v3 J- y3 o2 d" l
$ H, M/ f% q1 Q( G/ _$ W
4. 将公告添加到您的网站上。在插件设置页面中完成公告的设置后,您可以通过编辑 WordPress 主题的代码或使用插件提供的方法将公告添加到您的网站中。不同插件可能使用不同的添加方法,具体请查看详细说明或联系插件作者。
: I8 A* b7 b3 }% \! L. ~& R/ B* V0 ?) c: w
注意,如果您使用的 WordPress 主题已经包含了公告功能,或使用了其他公告插件,可能会导致冲突或功能重复。如果您遇到了这样的问题,请查看主题文档或联系主题作者以获取解决方案。
回复

使用道具 举报

341

主题

543

回帖

3579

积分

管理员

积分
3579
QQ
 楼主| 发表于 2023-5-18 08:34:51 来自手机 | 显示全部楼层
如果是自己开发的话,具体要怎么做?
# M; n7 O/ F  ]0 g& ?1 A- V/ A) }/ F3 w1 `* X" k8 v
如果您自己开发 WordPress 主题或插件,并且需要在后台中增加一个发布全站公告的功能,可以按照以下步骤操作:$ a) g+ f; P* E/ I( h
0 B, b3 ?0 {( }
1. 创建一个自定义的 WordPress 后台页面。您可以使用 `add_menu_page()` 或 `add_submenu_page()` 函数来创建一个自定义后台页面,例如:
( p2 N! X# N( O6 _* a* ?2 `$ T7 k7 R
  p* J3 s5 k0 f& O, J2 E* g. G) _   ```$ X9 `- s$ n1 R+ G7 X, z
   add_menu_page(
1 P, D3 }# H6 w) N9 B& e       '全站公告',5 _' Y" v; A( j
       '全站公告',
1 N% [7 O& C+ T       'manage_options', //需要的用户权限1 {8 P( j7 }, W6 y
       'site-wide-notice', //后台页面的 slug/ Z" h* J* R' L5 J" B3 n
       'render_site_wide_notice_page', //用于渲染后台页面内容的函数
3 n; F3 ]& u% p5 E; R6 {( q       'dashicons-megaphone', //用于显示在菜单中的图标
& ]5 |. ^- r2 K7 O& W' d$ ^       30 //菜单项的位置
# p) p# ]5 x+ @- p4 M, c   );
$ P+ v0 b% Y+ h0 O# P0 H   ```( x4 H4 X1 o1 O0 j, \5 z
  |, V3 Z. f: z# u2 A% Y
   在该示例中,我们使用 `add_menu_page()` 函数来创建了一个名为“全站公告”的菜单项,并指定需要的用户权限(`manage_options`),在后台页面的 slug 为 `site-wide-notice`,用于渲染后台页面内容的函数为 `render_site_wide_notice_page`,在菜单中显示的图标为 `dashicons-megaphone`,菜单项的位置为 30。
, c$ Q- t" B( ]% P% c9 |  f; T" J5 Q) D; `5 Y. @, w4 S) Y) H
2. 编写用于显示和保存全站公告内容的代码。您可以在自定义后台页面中创建一个表单,让用户输入公告的标题、内容等信息,并将这些信息保存到 WordPress 数据库中的某个表中。例如:
# d1 M* F" _" Z! d7 N% N4 z# q+ |! b. `: ?% x3 M$ V  V$ m
   ```% n" |6 h3 n/ a$ D
   function render_site_wide_notice_page() {7 T3 W) O7 c) ?) o" i% \
      // 渲染后台页面内容
8 c4 W/ b5 J' ^! y" @      echo '<div class="wrap">
: e1 d% t! y2 J4 ^6 Y          <h2>全站公告</h2>
/ }/ o3 @; {, n5 w          <form method="post" action="">
2 F/ g! L9 z; B# t9 e/ D3 L) l              <label for="title">公告标题:</label>6 ^2 j- }9 P" B. @& J1 {: u  S: r
              <input type="text" name="title" value="'.get_option('site_wide_notice_title').'"><br><br>
3 Z9 `1 k7 ^: ~) w; X2 Z) y" H% p              <label for="content">公告内容:</label>
" C! `, l: \- K6 p/ o! E              <textarea name="content">'.get_option('site_wide_notice_content').'</textarea><br><br>
7 W; s9 I! S  Q% f  C& X+ Z              <input type="submit" name="submit" value="保存设置">
* P  w! {/ k2 O% ^          </form>/ {4 I, N5 ~* _7 h
      </div>';  z# @0 D# j' _+ S/ Y$ V, \

% i7 B: v5 G; D: j6 }& C      // 处理表单数据
5 J, U" v" U# x$ w; v  j      if (isset($_POST['submit'])) {4 E4 d) e( @+ r
          update_option('site_wide_notice_title', sanitize_text_field($_POST['title']));9 v# X8 m: u, C! K! x4 p8 B
          update_option('site_wide_notice_content', sanitize_text_field($_POST['content']));
& d, A. {  N# ~" ~  l6 S' G      }& ~9 }3 P2 }5 L1 i" w
   }9 g( }5 `( t- G+ m
   ```
; I, d' Z; a+ a; c& L
" O( H, N0 f. {   在该示例中,我们创建了一个表单,让用户输入公告的标题和内容,并使用 `update_option()` 函数将这些数据保存到名为 `site_wide_notice_title` 和 `site_wide_notice_content` 的 WordPress 配置项中。如果用户点击提交按钮,则将表单数据更新到配置项。$ {6 F8 B' b3 x. c( k

" y$ Q' F# N* @3. 在 WordPress 主题中显示全站公告。您可以通过在 WordPress 主题的 `header.php` 文件中添加代码,将公告内容显示在网站的顶部或其他位置。例如:
, b7 D( m0 u  C; [% w8 c% C5 H* a: W$ g5 w# p; N
   ```
1 P5 p6 [0 Q. A3 t# e. l1 w   <?php
4 z4 B$ ^- T, k# s) i( e   $site_wide_notice_title = get_option('site_wide_notice_title');
4 P+ y3 V& O! W   $site_wide_notice_content = get_option('site_wide_notice_content');7 X, T$ W! T' o9 j4 G5 h2 S8 L
   if (!empty($site_wide_notice_title) || !empty($site_wide_notice_content)) {9 {7 B+ _1 N  q1 j8 R+ @/ C. a
       echo '<div class="site-wide-notice">';5 v. r; M; F& s5 ?( p4 P
       if (!empty($site_wide_notice_title)) {
7 x9 {  i* s8 P: ?           echo '<h3>'.$site_wide_notice_title.'</h3>';/ p2 \& ?/ i  x* S/ {1 _1 Z$ f
       }
( x) D  j, C# V6 [' \       if (!empty($site_wide_notice_content)) {; k& A" s' x! t  O) E8 R
           echo '<p>'.$site_wide_notice_content.'</p>';
& `0 E: \( B, r3 t4 }3 x% e       }
# H; g& d2 p' u- ~       echo '</div>';
! q  `# Z; G( }. O  c# y   }
! v- S2 q7 u# k" i   ?>
* U+ J" f1 x" F/ S: t   ```
' m* ~2 Q' P' e- I9 ]# f5 G! j: @. _" P' \  G8 @) U, ~' V: V
   在该示例中,我们检查 WordPress 配置项中名为 `site_wide_notice_title` 和 `site_wide_notice_content` 的值是否为空,如果不为空,则在 `header.php` 文件中添加一个名为 `site-wide-notice` 的容器,将公告标题和内容显示在其中。( A9 I: c4 S) d* q

& m' W' B! L, X: O& q7 C" u" J请注意,本示例仅提供了一个框架,具体实现可能会根据您的需求和实际情况有所不同,您需要根据自己的需要进行修改和调整。同时,为了确保安全性,您还会需要对用户输入的数据进行适当的验证和过滤,例如使用 `sanitize_text_field()` 函数来过滤表单数据。
回复

使用道具 举报

341

主题

543

回帖

3579

积分

管理员

积分
3579
QQ
 楼主| 发表于 2023-5-18 09:26:50 来自手机 | 显示全部楼层
那如果需要发布多条公告,并进行管理,要如何实现?3 ^7 h- R* `. a. }5 S  h

3 S4 @- P9 x! r' B+ e您可以创建一个自定义的 WordPress文章类型,例如“公告”,并对其进行自定义化,以实现发布多条公告并进行管理的功能。以下是具体步骤:: X) b# \$ ~4 N: _0 j
) o, s3 {, D! }/ W
1. 创建一个自定义的文章类型:在你的主题 `functions.php` 文件中,添加以下代码:
$ H& y$ p( w* d! o
, {9 v3 s; Q0 N9 [- K```; j  m' e( g/ `3 Q3 ^0 F
function create_custom_post_type() {+ B$ o' S6 A! X8 c0 ~
    $args = array(2 j3 _2 g3 q/ ?/ o9 a. z
        'labels' => array(( t1 T1 M% y( p, @2 k
            'name' => '公告',
/ Y3 Q- n9 Q+ ~- _$ ?1 r# Z            'singular_name' => '公告'
. ]* P! s" w# b        ),
* R4 D% t9 f+ S1 U' V  s" u2 B        'public' => true,% U2 U: z; q5 a3 P* H& G5 g, ]
        'has_archive' => true,  _' g$ g! ?; v1 @; M
        'supports' => array('title', 'editor', 'thumbnail', 'excerpt', 'custom-fields', 'revisions'),* K3 r: |; ?. @
        'taxonomies' => array('category', 'post_tag'),
" o# f( f& J, r% T7 O3 I8 I( j        'menu_icon' => 'dashicons-megaphone',
3 p% \6 X" j5 i$ f        'menu_position' => 5,& {$ W, ^5 S2 t5 i& N% S
        'rewrite' => array('slug' => 'site-wide-notices'); ?0 t! l& T0 D5 V* \9 ~
    );6 v/ j; ^$ M6 |) ?8 C5 r& Q- {
    register_post_type('site-wide-notices', $args);1 W. K4 U& r1 v' s( n
}9 \& P4 L4 U$ G4 P
add_action('init', 'create_custom_post_type');: Y5 i$ I' v& Z* r- o' P
```2 w7 c* X! M3 O; N
" g" e2 l2 `/ t/ T
在示例中,我们注册了一个名为 "site-wide-notices" 的新的文章类型,并定义了文章类型名称、缩略名、文章类型支持的功能、分类法、管理菜单图标等设置。- R5 q  n  y9 `2 k0 a
) `, z5 s3 b8 o/ W
2. 在你的 WordPress 后台中创建新文章类型“公告”:现在,你就可以在 WordPress 后台中通过导航到“公告”菜单,来添加、编辑或删除公告了。您可以在编辑公告的页面中添加标题、内容、特色图像或其他自定义的元数据字段。
8 w2 z3 k7 t2 t3 X( Y$ J- _, H) `, A: f! P+ ?8 z
3. 在主题中显示公告:在您的 WordPress 主题文件中添加以下代码,以在您的网站上显示公告:
& M4 T+ f4 e, o! S- T- ^5 j5 G0 i5 p1 Q- i% i9 R
```9 l4 Z4 _# R7 A' a
$args = array(* {+ q# j! K8 v' W
    'posts_per_page' => 3, // 显示的公告数量( `% v1 O, n& b/ M6 u
    'post_type' => 'site-wide-notices', // 公告文章类型
3 Y& p5 `" X% p0 @7 C; A    'post_status' => 'publish', // 公告状态
* e- }. w3 q' h* V) j6 a. h    'order' => 'DESC' // 排序方式4 f  y8 N. r  h: @% h
);6 E  v( j6 z  N1 s. D
. ^+ D+ }# g! k+ y! M  F3 b( C( B
$notices = new WP_Query($args);3 Q- k& Y$ O: `) q& V. F5 j; n
if ($notices->have_posts()) :
" A( |( t$ ~% Q/ G# {    while ($notices->have_posts()) : $notices->the_post(); ?>
1 Q# M' M1 m2 {3 S( L6 ]        <div class="notice">
2 @% e! Y+ T; r  \0 o7 m            <h3><?php the_title(); ?></h3>7 \6 D5 [* g1 m6 s  Q+ {3 T% J
            <div class="notice-content"><?php the_content(); ?></div>
7 Y# n! b/ K) W5 R! B7 {1 \        </div>/ @# Z5 `( h0 g
    <?php endwhile;5 Z$ @. C) {: \; ~* y
else :& @" d7 E0 t7 n/ s4 F
    echo "暂无公告";
5 S% D% B$ d7 x5 k2 _5 p/ |$ S& Oendif;
8 f( I9 \7 b0 z# l9 e* Q7 @# uwp_reset_query();
# l0 [1 `, r7 j+ [( V% B5 Y```
1 b$ K4 Z$ A: `
! a- d2 o7 \& {9 U这段代码将使用 WordPress 的 `WP_Query` 类从公告文章类型中获取最新发布的 3 条公告,并在前端页面中循环遍历并显示公告标题和内容等信息。
1 X) k: `; r4 N' n1 u; W6 |& H% J5 M6 s3 r* x; |8 Z
以上便是实现 Wordpress 后台发布多条全站公告的基本步骤。需要注意的是,自定义文章类型可对应多篇文章,具体根据您的需求进行调整。
回复

使用道具 举报

341

主题

543

回帖

3579

积分

管理员

积分
3579
QQ
 楼主| 发表于 2023-5-18 09:27:55 来自手机 | 显示全部楼层
如果不想修改functions.php,有其他更好的办法吗?* n& \9 E% n+ @2 k# L5 {
& F' @+ w' k7 v( V4 a3 i
如果您不想修改主题 `functions.php` 文件,也可以创建一个自定义插件来添加新的文章类型。- h) F( I, ~! `$ A- Q
; e1 f3 X5 @, u
以下是创建自定义插件的步骤:% H) A6 e9 y  u1 h6 W

9 ~1 @. J- ?. h+ h/ S/ C1. 创建新插件:在 WordPress 插件目录中创建一个新的子目录,例如 `site-wide-notices-plugin`,然后在该目录中创建一个新的 PHP 文件,例如 `site-wide-notices-plugin.php`,并在文件头部添加必需的标记,例如:
* ]. J$ S# v+ t8 P( I
0 R" N# t1 v" s, P: S* h6 W. y   ```
/ t% O$ r1 x( ~   <?php1 p/ ?1 \* k1 ~# O& ~# ^2 n$ u
   /*' v6 w6 N* D- @$ Q: `% F, M4 M4 Q
   Plugin Name: Site Wide Notices Plugin
7 w, I  J" W" L3 u. X   Description: Adds a new custom post type for site-wide notices.
- n( q7 Z% j- `5 C   Version: 1.08 F4 x" s- s1 L7 h) V9 R$ Z
   Author: Your Name
  ~4 q1 F  M6 f: A$ Y* R   Author URI: http://example.com. d" R2 y3 a7 D$ J* K* ^
   */
1 Z8 v4 }) ~+ H! s, j* ?1 H- M
/ x. A% s$ C! _' S! p   // Add plugin code here...9 u/ `4 H2 B1 b# j7 \# u& J
   ```
5 c. {6 M/ i) G8 Y6 j& G. u9 v, [) X! u# }0 I; @& d
   在示例中,我们创建了一个名为 `Site Wide Notices Plugin` 的新插件,该插件添加了一个新的自定义文章类型,并指定了版本、作者和作者 URI 等元信息。
. y/ i6 F% e, |0 r& J, P: e( p' s1 w5 N
2. 在插件中注册新的文章类型:在 PHP 文件中添加以下代码,用于注册一个名为“site-wide-notices”的自定义文章类型:
' C- ]* a) x3 p: l6 o% R2 v1 D$ r8 e
( r5 G, a1 d$ m3 _. ^   ```7 C" d% l" i6 B- G
   add_action('init', 'create_custom_post_type');% k: x  ^$ `1 c1 F0 q9 t
   function create_custom_post_type() {
/ y7 l+ n, F4 F# v( p0 _) w      $labels = array(
$ x9 d* J9 v6 p& E% _6 g5 J          'name' => 'Site Wide Notices',
. x3 ^+ J2 ]8 D/ ?( @& n& q          'singular_name' => 'Site Wide Notice',$ H" @7 m8 N& {+ c$ X8 N  ]/ f
          'add_new' => 'Add New',
, ^( Q9 h* w) u! H1 y          'add_new_item' => 'Add New Site Wide Notice',: z+ f6 s) r, }2 u7 U4 F
          'edit_item' => 'Edit Site Wide Notice',3 B" D, L3 W8 `+ v0 \( V9 Y# U8 s
          'new_item' => 'New Site Wide Notice',
1 M3 T7 C9 X# J1 ~# B( q, M          'view_item' => 'View Site Wide Notice',
8 e3 ?* Y# ^6 O6 O          'search_items' => 'Search Site Wide Notices',# |  X8 k& T$ [& T- B8 b( n1 ]& Q7 k
          'not_found' => 'No site-wide notices found',
, z' q1 J2 K4 X& C- o  S          'not_found_in_trash' => 'No site-wide notices found in trash'& z9 h1 f2 o0 d! u- H3 N
      );% M2 A! O4 P+ \/ A7 k1 F
) e3 T2 P# N! k; |9 C
      $args = array(
9 v, U+ G. f) H- N          'labels' => $labels,
- {$ A. F( |+ R" `) y% |          'public' => true,
: w6 ?' H# c3 ]  F7 ]          'has_archive' => true,
- K" W2 ^+ z6 s, v8 k" Z6 X          'supports' => array('title', 'editor', 'thumbnail', 'excerpt', 'custom-fields', 'revisions'),2 l" ]" J- V3 |6 V' [0 C
          'taxonomies' => array('category', 'post_tag'),
8 K0 H  B* Z( c& p2 H+ _          'menu_icon' => 'dashicons-megaphone',0 T7 F4 H( h; Z) Z& t- X
          'menu_position' => 5,( q: V+ v6 B) Y. \  ?
          'rewrite' => array('slug' => 'site-wide-notices')
/ P6 M5 N. \, |; G# H2 e) S      );
1 o5 c6 \7 Z* Y; N* g: M* R
$ A, k% N4 `  v      register_post_type('site-wide-notices', $args);& |6 g6 y3 {& W* C6 ^
   }1 A. Q# r( Z1 J3 \+ J# H
   ```
2 W: F* _9 E+ z3 V/ H) k* t9 ?; p6 {3 F# D0 W
   在示例中,我们使用 `register_post_type()` 函数注册一个新的文章类型,并定义了该文章类型的名称、标签和其他设置。
% o3 N- X. c- u# b  C
3 Q$ I% s2 Y/ c4 c* u0 X4 ^+ l2 e3. 在后台中添加公告编辑页面:您可以使用 `add_meta_box()` 函数在后台中添加公告编辑页面,并自定义字段和元数据,例如:- W7 @- f/ _9 v0 \+ T1 u
! C5 b+ m% I2 m# P
   ```
  I( j! D% k8 |& B7 W   add_action('add_meta_boxes', 'add_site_wide_notices_boxes');4 ~8 m. ~+ g# z' v% C, A" P6 o
   function add_site_wide_notices_boxes() {
2 G* {" i$ E0 U% G      add_meta_box('notice-details', 'Notice Details', 'notice_details_meta_box', 'site-wide-notices', 'normal', 'high');, k: ]: d, O+ u
   }# y9 o& @& R2 T
. W# J- Z2 D! m
   function notice_details_meta_box($post) {6 j( o: j) W! C) `8 q
      wp_nonce_field(basename(__FILE__), 'notices_nonce');1 q0 m1 a1 Q+ y
      $notice_title = get_post_meta($post->ID, 'notice_title', true);
$ h) V  N! [) P      $notice_content = get_post_meta($post->ID, 'notice_content', true);
9 V* A* R$ r' }" O6 u% U1 J      ?>
) G6 V9 Q+ {) G2 F0 {      <p>. ^0 u9 B' n$ v) p) m& c- w' ~
          <label for="notice-title">Notice Title</label><br>: o3 B0 n; \" H8 k) A
          <input type="text" id="notice-title" name="notice_title" style="width: 100%;" value="<?php echo $notice_title; ?>">
2 f+ ]0 l. r! x      </p>
, I  o! y" L9 o1 ~$ d! _      <p>
0 n: Z' O6 K2 D, M+ l          <label for="notice-content">Notice Content</label><br>; z8 x7 y( N7 v: f5 N/ V7 s
          <?php wp_editor($notice_content, 'notice-content', array('textarea_rows' => 10)); ?>) \# I9 N: l1 b: x
      </p>
& M# D4 [" q" a# r      <?php
% s9 l) J" ?6 I9 J! z   }6 W% q9 }8 P* h! O$ @
  b/ J" F& [& I5 q1 O  _
   add_action('save_post', 'save_site_wide_notice_meta_box');8 y; ]% E) _5 |& F! d6 U
   function save_site_wide_notice_meta_box($post_id) {
# O5 K1 V2 H8 ~$ d, a      if (!isset($_POST['notices_nonce']) || !wp_verify_nonce($_POST['notices_nonce'], basename(__FILE__)))7 ^0 s+ i4 R" G. Z6 y
         return;1 R, L  \/ ~, [6 k9 B% `, T* o
      if (defined('DOING_AUTOSAVE') && DOING_AUTOSAVE)
) U. Q# S6 z( i& u         return;0 ^9 i, d0 \& }" a
+ u- w7 _  \% O) s5 }: q" T
      if (isset($_POST['notice_title'])) {
; C# i& Q9 {6 ~& y          update_post_meta($post_id, 'notice_title', sanitize_text_field($_POST['notice_title']));
" g0 m, W" m; z5 r) M' P8 Z      }
4 d1 G4 B* `' X& w  i( A1 {2 o1 [      if (isset($_POST['notice_content'])) {
, C3 X- c, ~/ r& z          update_post_meta($post_id, 'notice_content', wp_kses_post($_POST['notice_content']));
5 I- Z& ]6 F3 r      }$ G+ g+ n9 v% V3 s# |: w, z" U/ `
   }
6 \0 o% m/ U7 r2 g. |   ```
0 Z, M: a/ d& Q5 c
( ?& M4 N, K) \3 P% {2 a/ ?) B   在示例中,我们使用 `add_meta_box()` 函数添加了一个名为 `notice-details` 的元框,用于在编辑页面上显示自定义字段和元数据。在 `notice-details_meta_box()` 函数中,我们使用 `wp_editor()` 函数添加了一个可视化编辑器,用于编辑公告内容。在 `save_site_wide_notice_meta_box()` 函数中,我们使用 `update_post_meta()` 函数将公告标题和内容保存到 WordPress 数据库中。
1 ?, N- {! p% l  i1 A) P1 ~
7 s+ }. Y* g( O3 T4. 在前端页面中显示公告:在 WordPress 主题文件中添加以下代码,以在您的网站上显示公告:# U# G- I5 M3 T2 k- i" r
7 y3 q) ?; j! E
   ```3 ?' Q6 ?2 E" _# E! r6 w
   $args = array(
, [3 C  ], K' e7 r      'post_type' => 'site-wide-notices',
5 c/ k& n$ i9 Z+ P; S! I' g. g. F      'posts_per_page' => 3,
0 I7 e; _) r( r; P. q      'order' => 'DESC',7 Y% }3 ?, }- u' \' f; W& `
      'orderby' => 'date'( i/ G, l" A9 U4 G
   );- F, w, q8 s" C& s2 l' H' e
   $query = new WP_Query($args);
( [/ U8 l8 L, k3 E1 J   if ($query->have_posts()) :
# k1 Z( j+ K: t7 {7 P      while ($query->have_posts()) : $query->the_post(); ?>
& q- ]  @) V3 j6 U          <div class="notice">
1 c; F) I* c( l5 ^              <h3><?php the_title(); ?></h3>
5 e5 G# @, k" C/ L              <div class="notice-content"><?php the_content(); ?></div>  o; U6 {( B7 l, \  j/ q8 m
          </div>
- h0 H$ w5 S, S      <?php endwhile;
9 v  j9 q1 i8 q, ]2 E+ c      wp_reset_postdata();
& B1 {! c7 ?" i% {' ~' S2 q   endif;1 W  G9 q" E$ M
   ```
, V2 m2 x# r+ G3 ]: f6 W$ }' f- @8 }8 l$ Y
   在示例中,我们使用 `WP_Query` 类从 `site-wide-notices` 文章类型中获取最近发布的 3 条公告,并在前端页面中循环遍历并显示标题和内容等信息。
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2026-1-26 15:43 , Processed in 0.013603 second(s), 2 queries , Redis On.

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

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