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

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

[复制链接]

340

主题

529

回帖

3524

积分

管理员

积分
3524
QQ
发表于 2023-5-18 08:34:20 来自手机 | 显示全部楼层 |阅读模式
您可以使用以下方法来快速在 WordPress 后台增加一个全站公告的功能:
! M* s1 Q1 ]) Y" F+ v$ l& k: U, W! K- E  c4 Q8 Y3 U
1. 在 WordPress 插件库中寻找可用的公告插件,例如 WP Notification Bars、Announcements、SSP Elegant Notification Bar 等。
9 T8 q2 k, j5 ]! Z. s# g, A" N( m0 z: J) Z) h$ B
2. 安装并激活您选择的插件。您可以在 WordPress 后台的「插件」->「添加新插件」界面中搜索并安装插件,然后在「插件」->「已安装插件」界面中激活它。
6 r1 ~  N1 y7 o
5 f" w7 I4 X( r/ [6 A: u9 _3. 在插件的设置页面中配置您的公告内容和样式。不同插件的设置选项和功能可能会有所不同,但通常都允许您定义公告的文本、链接、颜色、位置等。
4 H2 V1 p% c( t9 f& ~% A) T: v4 e$ x
4. 将公告添加到您的网站上。在插件设置页面中完成公告的设置后,您可以通过编辑 WordPress 主题的代码或使用插件提供的方法将公告添加到您的网站中。不同插件可能使用不同的添加方法,具体请查看详细说明或联系插件作者。' a4 {9 J9 Z$ c0 U; f3 T

: f! D+ w  ?4 ~+ P9 ?注意,如果您使用的 WordPress 主题已经包含了公告功能,或使用了其他公告插件,可能会导致冲突或功能重复。如果您遇到了这样的问题,请查看主题文档或联系主题作者以获取解决方案。
回复

使用道具 举报

340

主题

529

回帖

3524

积分

管理员

积分
3524
QQ
 楼主| 发表于 2023-5-18 08:34:51 来自手机 | 显示全部楼层
如果是自己开发的话,具体要怎么做?
2 x+ j/ J3 R' y$ d0 ]. K4 Z) \) z) u* l! S9 M0 H- |6 x, v5 F
如果您自己开发 WordPress 主题或插件,并且需要在后台中增加一个发布全站公告的功能,可以按照以下步骤操作:8 D' T4 A( H$ F  d' c2 J  q

8 P2 ]- [' Y" Q& ~: c; q7 r! f1. 创建一个自定义的 WordPress 后台页面。您可以使用 `add_menu_page()` 或 `add_submenu_page()` 函数来创建一个自定义后台页面,例如:
& V* U/ k- O8 f% ~
1 C& q) \- e% ]* M' B3 j   ```- O7 b2 ]  X# d6 j- z: c( v
   add_menu_page(
% k8 ?8 [# f! w& |# m/ a& R       '全站公告',
" h  z# o" T, T% }0 _       '全站公告',
% G- `$ t9 E! b# I6 ~  ~: C       'manage_options', //需要的用户权限
& }  c# h6 q' @2 T0 m2 a       'site-wide-notice', //后台页面的 slug! N+ x! {! E0 f* _3 c
       'render_site_wide_notice_page', //用于渲染后台页面内容的函数4 \6 W0 S5 u% E+ v1 s( F& [+ K
       'dashicons-megaphone', //用于显示在菜单中的图标& ?" Z5 W, K! f' x# n/ `' L
       30 //菜单项的位置
4 Q# ?$ ~8 x9 w8 J% G1 `   );' k: }+ L1 k' x3 ~. E* N# B
   ```
' J5 t( Q) l$ j, J" o# w: d  {9 ?7 {; b+ g2 B$ D1 U7 m' D
   在该示例中,我们使用 `add_menu_page()` 函数来创建了一个名为“全站公告”的菜单项,并指定需要的用户权限(`manage_options`),在后台页面的 slug 为 `site-wide-notice`,用于渲染后台页面内容的函数为 `render_site_wide_notice_page`,在菜单中显示的图标为 `dashicons-megaphone`,菜单项的位置为 30。6 `- T* Y4 ]5 U7 {- a

+ G9 K/ b3 t! ~- P2. 编写用于显示和保存全站公告内容的代码。您可以在自定义后台页面中创建一个表单,让用户输入公告的标题、内容等信息,并将这些信息保存到 WordPress 数据库中的某个表中。例如:
8 g3 {& P: p- l  V$ I
) ~4 v" C% J) B! }   ```
, b2 d! i+ M7 `% _1 \% K) G   function render_site_wide_notice_page() {
; S3 K, U8 y: N0 m      // 渲染后台页面内容
7 ]9 L6 B  F* i      echo '<div class="wrap">! o# V, e5 J& h7 U! ?- t; x5 z
          <h2>全站公告</h2>
# q6 k) R2 @' [8 |+ p          <form method="post" action="">
: n& Q0 u3 \9 `              <label for="title">公告标题:</label>
  L+ ?( [, k8 v6 S6 Q; C- b- Q% F& T              <input type="text" name="title" value="'.get_option('site_wide_notice_title').'"><br><br>! \5 Q3 c$ M+ J3 W8 a' ^' ?2 {& G
              <label for="content">公告内容:</label>
# d$ A4 N4 g/ V- U              <textarea name="content">'.get_option('site_wide_notice_content').'</textarea><br><br>
) q9 j6 X6 F8 W; _( u2 A              <input type="submit" name="submit" value="保存设置">7 y9 n4 W/ q& {9 r7 e& n
          </form>1 ^0 E. m4 Y" }4 h" ~* h
      </div>';
; D' o' `: u& P' V$ o* ?% N, P( E" j7 F" B; Z- R' E  ]4 h
      // 处理表单数据
1 i; Q: @+ ]: D5 Z. E      if (isset($_POST['submit'])) {; ^& w2 F+ G# Q. [. x# p1 h
          update_option('site_wide_notice_title', sanitize_text_field($_POST['title']));
# o6 [! ~; F- [6 _( `          update_option('site_wide_notice_content', sanitize_text_field($_POST['content']));8 y8 u. @  n% c' `
      }
0 h, V1 a& @' r/ a5 p! |   }
/ j2 m$ D- ?, S3 x2 `. s4 H   ```8 \% B9 s  p9 s6 U8 T

% k% F% K, D5 |5 T% V, g% f8 W   在该示例中,我们创建了一个表单,让用户输入公告的标题和内容,并使用 `update_option()` 函数将这些数据保存到名为 `site_wide_notice_title` 和 `site_wide_notice_content` 的 WordPress 配置项中。如果用户点击提交按钮,则将表单数据更新到配置项。  n" T) }$ l2 U+ p% j+ x2 p

1 v& S* P* L% M& g+ L5 R3. 在 WordPress 主题中显示全站公告。您可以通过在 WordPress 主题的 `header.php` 文件中添加代码,将公告内容显示在网站的顶部或其他位置。例如:
% J  G& ?- I; \) A- u# J8 D. A& o# m
" P) \! w9 s6 }5 K" h* h3 H   ```. N/ I* d! D. U. L) D" J$ ?+ {1 @. E
   <?php
6 m1 h" E' y0 ]  G8 i   $site_wide_notice_title = get_option('site_wide_notice_title');
: R) ~" X/ p" S+ ?5 o   $site_wide_notice_content = get_option('site_wide_notice_content');
! `% Z8 \  G% t+ H6 `   if (!empty($site_wide_notice_title) || !empty($site_wide_notice_content)) {, H7 \' _" n" e) v% r
       echo '<div class="site-wide-notice">';2 p! M4 M" O" Z) {5 r3 b
       if (!empty($site_wide_notice_title)) {/ }" r: J. I, B4 f) h
           echo '<h3>'.$site_wide_notice_title.'</h3>';% I, V* Q" B7 a. W" z% [
       }( Z' @- }( z& d1 a+ @! ^: O/ R
       if (!empty($site_wide_notice_content)) {
: c* a* t& k* P% C# W           echo '<p>'.$site_wide_notice_content.'</p>';6 Z, I3 R  G! K  Q
       }% G; p. ~& ?: c% C2 _3 n
       echo '</div>';
2 |# L- O& U$ g   }
. d, ?  a% h$ z! ?/ G% |' d   ?>
7 Y  Q! n  t0 A; {   ```
5 F  E  ~* D4 x/ T7 k5 O1 h/ r4 I+ G/ L7 y3 e
   在该示例中,我们检查 WordPress 配置项中名为 `site_wide_notice_title` 和 `site_wide_notice_content` 的值是否为空,如果不为空,则在 `header.php` 文件中添加一个名为 `site-wide-notice` 的容器,将公告标题和内容显示在其中。7 ]. |% ?* e6 Q! z. X: C$ x

7 e/ p! a" U: G8 b4 a6 H请注意,本示例仅提供了一个框架,具体实现可能会根据您的需求和实际情况有所不同,您需要根据自己的需要进行修改和调整。同时,为了确保安全性,您还会需要对用户输入的数据进行适当的验证和过滤,例如使用 `sanitize_text_field()` 函数来过滤表单数据。
回复

使用道具 举报

340

主题

529

回帖

3524

积分

管理员

积分
3524
QQ
 楼主| 发表于 2023-5-18 09:26:50 来自手机 | 显示全部楼层
那如果需要发布多条公告,并进行管理,要如何实现?3 a; ?) m1 T& c+ Q
& W* }: o9 ^: ]7 F% M* R
您可以创建一个自定义的 WordPress文章类型,例如“公告”,并对其进行自定义化,以实现发布多条公告并进行管理的功能。以下是具体步骤:  o" E( I# i8 u+ }% g* Q8 \  g' G  y
- Z5 e3 i- ~# p) g9 P) {
1. 创建一个自定义的文章类型:在你的主题 `functions.php` 文件中,添加以下代码:# X. [4 U; E4 _4 d5 k0 n5 R& \& t. k
' D9 W2 {6 j2 D' ]
```
% X' }* k$ f. O8 A. j; zfunction create_custom_post_type() {% E2 o  i. u" Q* v& l
    $args = array(
' O7 p6 |6 k9 `7 Z% R* R/ s* x        'labels' => array(
" J1 F* k6 u) I" t$ v) l* F; x            'name' => '公告',
, A/ }/ O6 S# R6 U- W            'singular_name' => '公告'2 o9 r2 `" I. Q& w2 X
        ),: f5 I% C# g* n, N
        'public' => true,6 }$ o) C0 S# l
        'has_archive' => true,# ]! F9 n% O4 o! E; X* P$ w1 \% t
        'supports' => array('title', 'editor', 'thumbnail', 'excerpt', 'custom-fields', 'revisions'),+ v9 w' J" q5 }# A) T) x
        'taxonomies' => array('category', 'post_tag'),! Z& u# b) \  c3 @# a( Z
        'menu_icon' => 'dashicons-megaphone',
+ x3 R4 s  e/ i0 [1 L8 F        'menu_position' => 5,( h/ [. v! p7 z
        'rewrite' => array('slug' => 'site-wide-notices')2 i5 C/ X5 \. m% g9 b
    );3 \( }( P- [" t, \
    register_post_type('site-wide-notices', $args);
5 [& K5 j2 [" K}- N& ^$ ~( h8 ~0 G
add_action('init', 'create_custom_post_type');
; Z1 V  x+ y3 T. p```$ T' K7 q7 A' b  R1 F) e+ Z( {

" D# c: F1 x- X1 k# Z在示例中,我们注册了一个名为 "site-wide-notices" 的新的文章类型,并定义了文章类型名称、缩略名、文章类型支持的功能、分类法、管理菜单图标等设置。
9 B& d  C( \# h: V) N7 B8 z0 N5 \) }  d
2. 在你的 WordPress 后台中创建新文章类型“公告”:现在,你就可以在 WordPress 后台中通过导航到“公告”菜单,来添加、编辑或删除公告了。您可以在编辑公告的页面中添加标题、内容、特色图像或其他自定义的元数据字段。8 L7 K7 q* X& z" ^

% _; n% d( {# m  X! c3. 在主题中显示公告:在您的 WordPress 主题文件中添加以下代码,以在您的网站上显示公告:
  Z8 q* W" C' T6 `* E) F# p
* E" ]( x% E4 L9 M1 {7 ~$ Z```
( S( b. A& H# p$args = array(5 f7 ~, e1 _8 p) j2 {
    'posts_per_page' => 3, // 显示的公告数量6 q- T8 W* o. r9 L6 c4 F3 S
    'post_type' => 'site-wide-notices', // 公告文章类型
: E  _; E4 ^3 ~    'post_status' => 'publish', // 公告状态9 J; K3 h. R" R6 s/ e3 X
    'order' => 'DESC' // 排序方式
6 d1 W1 r/ S8 Z3 W7 Q);
( B2 o9 |9 A; V0 [; P1 a0 |: z0 I6 u1 P
$notices = new WP_Query($args);! G: G5 k# e' W% n1 {
if ($notices->have_posts()) :3 E9 m: h. E7 p& M' B. B
    while ($notices->have_posts()) : $notices->the_post(); ?># ~3 c* |. F8 M8 S/ S; A: H8 ~
        <div class="notice">
' ]# o  S5 C  [4 ?. X            <h3><?php the_title(); ?></h3>  R& F! n& d. S5 l6 }" |
            <div class="notice-content"><?php the_content(); ?></div>$ Q& a9 v% }$ \
        </div>/ R1 k- `' U6 y. L" v- `
    <?php endwhile;' l5 X: G7 \% U
else :
4 F- c4 _) E4 u. m% L' o! u+ R    echo "暂无公告";! O0 J2 t) W& \" h& H" V# u
endif;/ l' ?0 H. f5 F
wp_reset_query();
) N* L' E7 I" H3 @+ N```; D7 M' F$ K% D/ |* ^
8 g+ [* M/ `4 `
这段代码将使用 WordPress 的 `WP_Query` 类从公告文章类型中获取最新发布的 3 条公告,并在前端页面中循环遍历并显示公告标题和内容等信息。! f+ r/ s0 ~+ k) b
6 e( ]1 B0 |) z3 {2 e8 R# I: Z
以上便是实现 Wordpress 后台发布多条全站公告的基本步骤。需要注意的是,自定义文章类型可对应多篇文章,具体根据您的需求进行调整。
回复

使用道具 举报

340

主题

529

回帖

3524

积分

管理员

积分
3524
QQ
 楼主| 发表于 2023-5-18 09:27:55 来自手机 | 显示全部楼层
如果不想修改functions.php,有其他更好的办法吗?
3 s2 ?9 g0 x7 X3 r( Q: q4 ^' l5 \: V- E! z% [* |. O0 `# V
如果您不想修改主题 `functions.php` 文件,也可以创建一个自定义插件来添加新的文章类型。+ p, F5 F- O% p* Z% q  b
  H3 A  J* C/ @) `( R7 H7 o+ Q9 b$ H
以下是创建自定义插件的步骤:
1 t% L8 Y/ u, ]$ M9 d. J7 {5 K$ H1 w
1. 创建新插件:在 WordPress 插件目录中创建一个新的子目录,例如 `site-wide-notices-plugin`,然后在该目录中创建一个新的 PHP 文件,例如 `site-wide-notices-plugin.php`,并在文件头部添加必需的标记,例如:
3 j) @9 h- A9 Z% c
" b# r/ P' i( w2 C5 w  e   ```9 Y0 B; M* Q: t  B  U7 A
   <?php3 l8 ~# t* x6 H- [" u* S5 v# k
   /*" n& c% q1 P8 S
   Plugin Name: Site Wide Notices Plugin* z7 B  V0 L6 S2 s8 l2 L' }* q
   Description: Adds a new custom post type for site-wide notices.
) T# j# k/ Q5 i) N) }, o% F   Version: 1.01 m. a( b; \. o" \  C& {2 B
   Author: Your Name
7 D9 f! a6 B8 K+ O   Author URI: http://example.com) W3 k( \0 w/ `- d+ e
   */6 O- K; l/ J$ X% O- W3 L9 v

% P' a+ M6 L/ d* c  E   // Add plugin code here...
( F; q- k5 x6 r% ]% w! C2 u   ```
1 ?0 G+ u8 G' y* ^3 Z$ R6 ^) i( p+ {( A6 I9 r# O: V3 K
   在示例中,我们创建了一个名为 `Site Wide Notices Plugin` 的新插件,该插件添加了一个新的自定义文章类型,并指定了版本、作者和作者 URI 等元信息。8 O' P2 ^2 G7 C# ]. C0 Q
% @+ _. X3 |, d- `
2. 在插件中注册新的文章类型:在 PHP 文件中添加以下代码,用于注册一个名为“site-wide-notices”的自定义文章类型:
; j- w+ E9 g) G+ o$ h* r- t4 B  ~3 k: O- z% G' s5 G
   ```
( j0 {' T! ]) h   add_action('init', 'create_custom_post_type');
& \, k+ `  E. R* s* v4 z: r   function create_custom_post_type() {9 t/ E2 d' E/ {7 Q
      $labels = array(
0 O6 q* K* x; h( [( E2 M4 s( m8 [          'name' => 'Site Wide Notices',' J. \' M5 |0 q2 ?% c
          'singular_name' => 'Site Wide Notice',# G: Y8 }( {+ C
          'add_new' => 'Add New',
  N4 i( |2 n' r" S# G% N          'add_new_item' => 'Add New Site Wide Notice',- Z7 B/ h+ A0 u0 K, c- a1 u: U3 }
          'edit_item' => 'Edit Site Wide Notice',! S2 ?: D# b0 f0 C  F, `
          'new_item' => 'New Site Wide Notice',9 d6 b$ {0 o' s* E/ L7 y0 Q% x- b
          'view_item' => 'View Site Wide Notice',
1 o5 P* I" c* H0 {          'search_items' => 'Search Site Wide Notices',
& R; A# ^3 R. K) W5 X7 d1 f; \          'not_found' => 'No site-wide notices found',6 Q5 U- G1 ?& F3 R
          'not_found_in_trash' => 'No site-wide notices found in trash'8 A* \- ^* |3 _/ F, O( b
      );
3 E' R% y( W7 l# `* F: E: R* B+ p' i9 j1 g  H! z
      $args = array(0 S4 |, i4 M1 M# i* {% p8 y
          'labels' => $labels,5 u7 X% e4 u$ C. K$ Q
          'public' => true,
4 i. q! P+ d/ X- V: i' R* V          'has_archive' => true,
! z8 Z% ~9 t3 \          'supports' => array('title', 'editor', 'thumbnail', 'excerpt', 'custom-fields', 'revisions'),) o) u" f: b) G8 W3 r7 e  x' w
          'taxonomies' => array('category', 'post_tag'),/ m* G: _. U9 h3 F& r
          'menu_icon' => 'dashicons-megaphone',
# s- e9 z- s0 t7 w0 n$ \          'menu_position' => 5,
8 U! o! C. C' R) t/ X; H          'rewrite' => array('slug' => 'site-wide-notices')
; V, H$ @' G: V4 H3 @      );0 {0 r' A  O" I: D$ o- S

6 v4 [) C3 h  D3 ?      register_post_type('site-wide-notices', $args);/ `& J' k* K6 l+ A$ j' K; n/ r
   }
1 I  G! m/ z5 a8 y5 R1 Q* Y   ```: o! T; P3 F- F( U- s$ ]
3 S; o; f8 g. ?* f& \; f0 s
   在示例中,我们使用 `register_post_type()` 函数注册一个新的文章类型,并定义了该文章类型的名称、标签和其他设置。' G9 p8 K. \0 h/ R# [
- r5 o8 t0 k2 f6 |+ Y4 ?7 C
3. 在后台中添加公告编辑页面:您可以使用 `add_meta_box()` 函数在后台中添加公告编辑页面,并自定义字段和元数据,例如:
! @4 b+ a$ i' e4 K
  p7 g" f& X8 T# l  ~; z9 m  ^: S   ```
. R9 d% O4 C# c3 y" u- D   add_action('add_meta_boxes', 'add_site_wide_notices_boxes');% O  s! g7 J( ~4 A! _
   function add_site_wide_notices_boxes() {
- r# O" D+ n2 K9 l! `, J4 d6 O  P) u      add_meta_box('notice-details', 'Notice Details', 'notice_details_meta_box', 'site-wide-notices', 'normal', 'high');+ M, N. @4 ?3 D2 n
   }
2 K; S, Y. @0 _/ l3 ^3 G% y% v4 T& P% W- D: \6 }: |
   function notice_details_meta_box($post) {+ a: \. H+ q- E# i
      wp_nonce_field(basename(__FILE__), 'notices_nonce');! k5 w6 C# P4 M+ Y. S- K
      $notice_title = get_post_meta($post->ID, 'notice_title', true);
# M8 s' b3 R& \  q      $notice_content = get_post_meta($post->ID, 'notice_content', true);; f4 `6 O  n) W7 u' T+ X4 }
      ?>
# g7 X' w2 g$ D4 f2 ~7 L, m7 w      <p>
& |: I# m& L+ G/ V) q          <label for="notice-title">Notice Title</label><br>
4 Z/ C6 v; ]* b* b) m9 u          <input type="text" id="notice-title" name="notice_title" style="width: 100%;" value="<?php echo $notice_title; ?>">% X( ^% D8 i- T# v' p, _8 j
      </p>
  @1 D& R; F/ e      <p>: M2 R4 @5 L& a/ ]8 @' Q5 p; X
          <label for="notice-content">Notice Content</label><br>
3 ?6 `  m  }+ R- ]          <?php wp_editor($notice_content, 'notice-content', array('textarea_rows' => 10)); ?>
2 @' j7 n( n/ [  `      </p># B9 j$ h" N' N4 o" d  [' i+ x
      <?php
2 J( o2 k* Y, J  A9 @3 G) h: T   }
0 |/ r8 a3 W* E$ u0 w2 V
' x* t* C% d; ?4 |   add_action('save_post', 'save_site_wide_notice_meta_box');- J! T" Z! _0 \$ E
   function save_site_wide_notice_meta_box($post_id) {0 J  _2 N7 `2 H: c0 \9 d& @
      if (!isset($_POST['notices_nonce']) || !wp_verify_nonce($_POST['notices_nonce'], basename(__FILE__)))
' A1 U' b' B2 K; I) n         return;
5 X( A2 r- y0 A: @1 c      if (defined('DOING_AUTOSAVE') && DOING_AUTOSAVE)8 ?- E* S" J8 N: P& Q, H; L
         return;
* d- [8 d+ [. U$ z+ e2 n/ \' `4 x8 I* W: S1 S
      if (isset($_POST['notice_title'])) {% m+ J) M& u  ?# @" G
          update_post_meta($post_id, 'notice_title', sanitize_text_field($_POST['notice_title']));3 N& k. N  p: X" A
      }
7 r# C% s. x/ w9 j( q6 p      if (isset($_POST['notice_content'])) {
! C( C7 b) t/ F! q# s, M0 j% j          update_post_meta($post_id, 'notice_content', wp_kses_post($_POST['notice_content']));" v0 V# A( X2 A; c5 R9 r
      }
; a+ J$ {6 h$ O3 X4 o0 z( n   }# p+ s/ L  h$ `9 |
   ```+ j" x& ~/ `! {2 h* b$ Z  V
* S5 n0 \9 \# M$ E" D% G2 A2 r
   在示例中,我们使用 `add_meta_box()` 函数添加了一个名为 `notice-details` 的元框,用于在编辑页面上显示自定义字段和元数据。在 `notice-details_meta_box()` 函数中,我们使用 `wp_editor()` 函数添加了一个可视化编辑器,用于编辑公告内容。在 `save_site_wide_notice_meta_box()` 函数中,我们使用 `update_post_meta()` 函数将公告标题和内容保存到 WordPress 数据库中。6 {0 R3 D2 ^/ \9 q

" ?0 ^/ X1 L2 _: e4. 在前端页面中显示公告:在 WordPress 主题文件中添加以下代码,以在您的网站上显示公告:4 Q3 f* l* j. `) h- F  `

4 d# Z6 n4 h: K3 }   ```
; c9 T, r+ l5 Z' ^$ ~/ ?   $args = array(2 R# e$ k5 R" ^& H, v2 P: t1 B
      'post_type' => 'site-wide-notices',
8 S2 I# n: e; z2 y( o" Q& s8 g" g      'posts_per_page' => 3,5 m' Q/ o3 G6 V* b5 t  a
      'order' => 'DESC',8 L; Y/ p# U8 K
      'orderby' => 'date'# t" Q1 w# i: `' t0 ]  p# @
   );* @. i+ h+ x1 P- `8 ^' L
   $query = new WP_Query($args);3 @/ v. g0 y$ r4 {( j- V) I
   if ($query->have_posts()) :
9 _  I2 k) S# l& g2 i$ l      while ($query->have_posts()) : $query->the_post(); ?>
% z  D6 Z2 o$ e) n+ P4 o          <div class="notice">
# t2 O/ B& y/ v6 O' `7 Y              <h3><?php the_title(); ?></h3>8 \8 z  s! h' z1 K4 V2 B% \
              <div class="notice-content"><?php the_content(); ?></div>/ k3 g; K& _4 C8 s' A* i9 k
          </div>
, h8 X6 q% a2 u9 u% P# O      <?php endwhile;
! V" ?" V% D8 \4 E9 F3 }: m      wp_reset_postdata();0 P7 T' I5 F5 X' R/ I4 c
   endif;! D2 _3 [( m8 |
   ```& g; w( V& J6 S8 p. ~* @& p

4 M9 D7 e" o- ]5 r   在示例中,我们使用 `WP_Query` 类从 `site-wide-notices` 文章类型中获取最近发布的 3 条公告,并在前端页面中循环遍历并显示标题和内容等信息。
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2026-1-16 21:43 , Processed in 0.018725 second(s), 2 queries , Redis On.

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

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