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

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

[复制链接]

340

主题

529

回帖

3528

积分

管理员

积分
3528
QQ
发表于 2023-5-18 08:34:20 来自手机 | 显示全部楼层 |阅读模式
您可以使用以下方法来快速在 WordPress 后台增加一个全站公告的功能:4 |* I) G7 s9 j/ f

* q  o) c8 c  F2 C/ l3 [1. 在 WordPress 插件库中寻找可用的公告插件,例如 WP Notification Bars、Announcements、SSP Elegant Notification Bar 等。
" x# {4 j8 j4 I' c
0 e" |, P# c: z8 A: m2. 安装并激活您选择的插件。您可以在 WordPress 后台的「插件」->「添加新插件」界面中搜索并安装插件,然后在「插件」->「已安装插件」界面中激活它。7 L0 _# \. v8 x$ r3 j- e

% r' ?; j9 z' F4 M! Z3. 在插件的设置页面中配置您的公告内容和样式。不同插件的设置选项和功能可能会有所不同,但通常都允许您定义公告的文本、链接、颜色、位置等。
* e  T' `3 Z( Q* p
6 R; |9 o6 m% S; g2 w' e5 C8 p6 K4. 将公告添加到您的网站上。在插件设置页面中完成公告的设置后,您可以通过编辑 WordPress 主题的代码或使用插件提供的方法将公告添加到您的网站中。不同插件可能使用不同的添加方法,具体请查看详细说明或联系插件作者。
1 A# o5 }$ A" T) s7 c
1 ~$ H* z0 U" }) C: w7 t9 C注意,如果您使用的 WordPress 主题已经包含了公告功能,或使用了其他公告插件,可能会导致冲突或功能重复。如果您遇到了这样的问题,请查看主题文档或联系主题作者以获取解决方案。
回复

使用道具 举报

340

主题

529

回帖

3528

积分

管理员

积分
3528
QQ
 楼主| 发表于 2023-5-18 08:34:51 来自手机 | 显示全部楼层
如果是自己开发的话,具体要怎么做?9 V; {; c. _( R

% w- S9 ?4 v! q+ ?" k/ {如果您自己开发 WordPress 主题或插件,并且需要在后台中增加一个发布全站公告的功能,可以按照以下步骤操作:( Q# x, a% v" m) d% ]! o
# |- H+ I8 @0 y: o" @% W
1. 创建一个自定义的 WordPress 后台页面。您可以使用 `add_menu_page()` 或 `add_submenu_page()` 函数来创建一个自定义后台页面,例如:
2 q/ t# T% x7 o* C6 p/ y
9 u" t& s* ?( r. S+ }* F' E& }   ```
, L# n! G. Q& y6 Y1 b7 e$ J* J   add_menu_page(8 N$ f; S0 b5 E! N" s! V
       '全站公告',& N% X* f, B4 ^% M
       '全站公告',- b0 a# u1 z$ W# _  t! [" I, L* J8 I1 H
       'manage_options', //需要的用户权限) n; f" d: L7 e/ v6 l
       'site-wide-notice', //后台页面的 slug% f$ r# L+ U  _/ X3 D* {
       'render_site_wide_notice_page', //用于渲染后台页面内容的函数
6 O  R  Y& M7 a6 S& |. I       'dashicons-megaphone', //用于显示在菜单中的图标
0 e% j  ]5 P+ t       30 //菜单项的位置# W& S7 ^7 O3 E; z; d9 i5 h0 A
   );
7 i+ s) x( g# }' G- m. c   ```  Q5 K) J4 b# `" _/ `4 y  ?

6 x3 L6 y$ v! @" i) U' W   在该示例中,我们使用 `add_menu_page()` 函数来创建了一个名为“全站公告”的菜单项,并指定需要的用户权限(`manage_options`),在后台页面的 slug 为 `site-wide-notice`,用于渲染后台页面内容的函数为 `render_site_wide_notice_page`,在菜单中显示的图标为 `dashicons-megaphone`,菜单项的位置为 30。
4 g7 q. O# [: @! L3 F2 b' G! M1 _9 {+ m
2. 编写用于显示和保存全站公告内容的代码。您可以在自定义后台页面中创建一个表单,让用户输入公告的标题、内容等信息,并将这些信息保存到 WordPress 数据库中的某个表中。例如:  @" ?2 U  I+ R) y& C
; W1 k( U+ t0 x* Z: g* i/ [
   ```; z$ n+ ]: w/ ^$ J+ s' m
   function render_site_wide_notice_page() {3 f  A$ d, @, C) ?! |
      // 渲染后台页面内容8 R8 w! c7 {+ S! u
      echo '<div class="wrap">, R* E: z" w2 S& j
          <h2>全站公告</h2>
2 h6 p9 o; u  k$ C3 U' {. E) h" k          <form method="post" action="">
+ q+ f; ^( l- {% s+ L              <label for="title">公告标题:</label># M( |' ?+ o2 N" m
              <input type="text" name="title" value="'.get_option('site_wide_notice_title').'"><br><br>
3 c+ i8 z* g6 ^6 T$ f1 ]              <label for="content">公告内容:</label>
1 I" x' @/ |( i# ~/ u              <textarea name="content">'.get_option('site_wide_notice_content').'</textarea><br><br>9 Q8 x9 g5 Q/ _8 o- b
              <input type="submit" name="submit" value="保存设置">
# A2 Z0 c& ~) u; q( Y          </form>/ L- V: J: e8 a) ?
      </div>';
# S/ \! e% J2 S4 c; x1 ]
) Y! o1 G2 k5 e- [: P; a      // 处理表单数据
' ~3 l/ @# i' H, a6 i      if (isset($_POST['submit'])) {5 K) n% b& i0 s% x5 X
          update_option('site_wide_notice_title', sanitize_text_field($_POST['title']));
0 v8 d, H* a1 j7 s$ p          update_option('site_wide_notice_content', sanitize_text_field($_POST['content']));
# l/ @* v9 @, z& z; M      }; @5 ~0 f$ {2 O# Y5 x. P+ g& T. j
   }
. ~; d6 |) r) g6 t# u  p   ```, X) ?# R6 t9 {7 X0 C" n6 h! C& y
% p5 s% O# ]3 U( c* r
   在该示例中,我们创建了一个表单,让用户输入公告的标题和内容,并使用 `update_option()` 函数将这些数据保存到名为 `site_wide_notice_title` 和 `site_wide_notice_content` 的 WordPress 配置项中。如果用户点击提交按钮,则将表单数据更新到配置项。: o1 C2 J4 n9 e' J! m/ m& B

4 x7 P# B1 t! R# o$ u! I0 F9 ^6 S3. 在 WordPress 主题中显示全站公告。您可以通过在 WordPress 主题的 `header.php` 文件中添加代码,将公告内容显示在网站的顶部或其他位置。例如:
/ {! z% {5 g" h3 [& e- k) d" J1 w# r) g$ A" ^
   ```
1 K; V! b$ m2 `/ T   <?php6 h# _7 d, g) X4 N# |% b
   $site_wide_notice_title = get_option('site_wide_notice_title');% @- Q# _6 I8 d
   $site_wide_notice_content = get_option('site_wide_notice_content');- I6 R$ f( Z5 ~
   if (!empty($site_wide_notice_title) || !empty($site_wide_notice_content)) {- C9 \" ?2 G; i- p- N2 R
       echo '<div class="site-wide-notice">';
# c% R' d6 _5 n; m# t& q       if (!empty($site_wide_notice_title)) {
( Z( h( v, d* m  G6 \) W           echo '<h3>'.$site_wide_notice_title.'</h3>';
* H) u: O; p) B* B8 q  l       }  \$ Y( e) c, m- J4 U$ M0 x: w4 r8 l
       if (!empty($site_wide_notice_content)) {
) c& H5 `8 @+ w; R           echo '<p>'.$site_wide_notice_content.'</p>';
1 ~2 _7 w' R/ m9 T! B) D; y& j       }& C- g, g$ z; L
       echo '</div>';  N8 w! Z, A* ~; V4 P2 a+ L
   }
8 I& y% ?) O0 a4 @5 [3 {   ?>. n  R% S% d# D, b0 M9 c
   ```
, k6 X$ f; q' ^  }; x
* h( s% l! {  j, m: F2 ~% e   在该示例中,我们检查 WordPress 配置项中名为 `site_wide_notice_title` 和 `site_wide_notice_content` 的值是否为空,如果不为空,则在 `header.php` 文件中添加一个名为 `site-wide-notice` 的容器,将公告标题和内容显示在其中。/ |) G( r' T* h% C  W( B
  |* x- D) ^& a0 e7 D
请注意,本示例仅提供了一个框架,具体实现可能会根据您的需求和实际情况有所不同,您需要根据自己的需要进行修改和调整。同时,为了确保安全性,您还会需要对用户输入的数据进行适当的验证和过滤,例如使用 `sanitize_text_field()` 函数来过滤表单数据。
回复

使用道具 举报

340

主题

529

回帖

3528

积分

管理员

积分
3528
QQ
 楼主| 发表于 2023-5-18 09:26:50 来自手机 | 显示全部楼层
那如果需要发布多条公告,并进行管理,要如何实现?
$ j" T: I0 c4 Y5 ?, c' \9 x6 n
. ]" y# I: j; ^您可以创建一个自定义的 WordPress文章类型,例如“公告”,并对其进行自定义化,以实现发布多条公告并进行管理的功能。以下是具体步骤:  Z! z# V6 P1 i

& S& O6 R2 R6 B  \! f( V1. 创建一个自定义的文章类型:在你的主题 `functions.php` 文件中,添加以下代码:% R0 V. P7 D  |* E

- B" U/ }7 Z  h# }. b: x7 E```
8 R1 Y2 k8 [% lfunction create_custom_post_type() {2 G3 Z( j8 s0 b  {/ k( A
    $args = array(9 A9 H8 X$ l$ p5 n9 r8 S% S! ^: K
        'labels' => array(7 F7 C( F, p7 v0 f0 @
            'name' => '公告',4 x+ x) q5 g3 c3 c# P, W& y
            'singular_name' => '公告'5 {* H3 @# a2 u6 E$ k
        ),
# v( E- J! g" G  l  O8 c  U        'public' => true,1 H" Y/ n7 a, n) r8 p1 \
        'has_archive' => true,
& j- b" F7 O! z- e4 H        'supports' => array('title', 'editor', 'thumbnail', 'excerpt', 'custom-fields', 'revisions'),9 g# h; E% J! _7 b: Q3 C2 h
        'taxonomies' => array('category', 'post_tag'),& U) I0 g# N5 Q8 ?2 l' D+ v0 E
        'menu_icon' => 'dashicons-megaphone',; x" Q& a( H+ R5 z
        'menu_position' => 5,
7 m; Z! Q7 ^3 E6 n- @0 }        'rewrite' => array('slug' => 'site-wide-notices')7 |: {, O% [  j6 i6 i/ c
    );
) |) k0 d8 _% }  F  E& l1 f4 s; ~    register_post_type('site-wide-notices', $args);- }+ E) z1 d: Q
}
5 f1 t5 A% B6 p6 h% O7 R+ sadd_action('init', 'create_custom_post_type');
4 I# C$ J: m$ y5 k7 ~& H" C# u```
+ _9 E5 m6 X- S: ^7 K9 {7 c: ?
. X) Q% R, A2 ~# U3 W在示例中,我们注册了一个名为 "site-wide-notices" 的新的文章类型,并定义了文章类型名称、缩略名、文章类型支持的功能、分类法、管理菜单图标等设置。5 U+ z& Z/ X) R$ q6 w, W
9 j) D+ _- J" M+ }/ b; Q" ]
2. 在你的 WordPress 后台中创建新文章类型“公告”:现在,你就可以在 WordPress 后台中通过导航到“公告”菜单,来添加、编辑或删除公告了。您可以在编辑公告的页面中添加标题、内容、特色图像或其他自定义的元数据字段。
  Z4 D' a4 a: _" H. v! Z, A2 }6 H0 \* Y, Q; Q3 |, c% h
3. 在主题中显示公告:在您的 WordPress 主题文件中添加以下代码,以在您的网站上显示公告:, h( P3 n8 w* }; S
0 _, |& o; w( q$ _9 E
```' A) `; F  Z5 n* N  `: N
$args = array(- I- W4 r1 w( W, }0 y# H) t+ S
    'posts_per_page' => 3, // 显示的公告数量- j1 |8 B6 {9 C2 O& s
    'post_type' => 'site-wide-notices', // 公告文章类型
' p, A$ P9 ?: h: a# U- I    'post_status' => 'publish', // 公告状态
# q0 ^/ o  a. N- K1 |2 F    'order' => 'DESC' // 排序方式
  p& x# N+ G% \);
+ f# ^: Q" r! ~0 k' l
. J9 N" ?/ _, p3 ~+ `3 j& e; z$notices = new WP_Query($args);7 M( X. r9 W  d; n( u+ A4 M, i2 Q% I
if ($notices->have_posts()) :
' g# {& X( B  P* S2 H    while ($notices->have_posts()) : $notices->the_post(); ?>. f" W/ q6 ?4 }  Z: k3 n
        <div class="notice">
! }# y9 E" p3 _0 U# b2 Q9 z- P& k            <h3><?php the_title(); ?></h3>
' X1 S$ S! a8 M, B            <div class="notice-content"><?php the_content(); ?></div>" J: e8 `, Z! N1 _
        </div>
7 b1 Q8 l+ K5 E, \/ y8 I% F    <?php endwhile;% T$ I% \) S8 M- d
else :4 v8 L0 j% J$ m% N( I7 `
    echo "暂无公告";
8 ^2 Z3 y# u7 U' a, O# ^6 q3 V$ Mendif;
+ L6 a& T; I- x. O4 @: c% Dwp_reset_query();% V' b% b5 A' \' H3 ]2 F
```! X5 x7 \" u# i0 o- d" ~3 K" |
& x/ L& q6 R" N: {$ m7 s1 W4 o
这段代码将使用 WordPress 的 `WP_Query` 类从公告文章类型中获取最新发布的 3 条公告,并在前端页面中循环遍历并显示公告标题和内容等信息。" L. t+ B' W# T; K; Q- \

! V( }6 r. K% s4 ~以上便是实现 Wordpress 后台发布多条全站公告的基本步骤。需要注意的是,自定义文章类型可对应多篇文章,具体根据您的需求进行调整。
回复

使用道具 举报

340

主题

529

回帖

3528

积分

管理员

积分
3528
QQ
 楼主| 发表于 2023-5-18 09:27:55 来自手机 | 显示全部楼层
如果不想修改functions.php,有其他更好的办法吗?
5 @1 I5 p! _, z- x: }$ [9 b! l7 A8 z5 k2 u2 X
如果您不想修改主题 `functions.php` 文件,也可以创建一个自定义插件来添加新的文章类型。- c. N% a' c& P9 }* [

& v5 T8 z" [! T+ U- K" j5 l以下是创建自定义插件的步骤:( g1 ]6 S) C- X! m# z

7 Z) I& R" f7 u0 j8 J1. 创建新插件:在 WordPress 插件目录中创建一个新的子目录,例如 `site-wide-notices-plugin`,然后在该目录中创建一个新的 PHP 文件,例如 `site-wide-notices-plugin.php`,并在文件头部添加必需的标记,例如:/ T7 ^+ F& v1 p; A" q% e; R3 M
/ c. E; l% g" S5 y! B' \
   ```
  s* a6 O0 X; M+ p   <?php
! Z; ?" K6 h: [' j( L5 m   /*; @/ c: ~. @2 _
   Plugin Name: Site Wide Notices Plugin
( f& i; A" }$ I   Description: Adds a new custom post type for site-wide notices.
, Q; I; M& ^  r   Version: 1.0
' J! g+ Z* g2 |) x   Author: Your Name
2 E1 `0 B, D: E; Q& l! t   Author URI: http://example.com6 j1 V/ _1 H% M( i1 F
   */
7 m4 B( u' l4 L4 M* x. Q. ~8 s- i! ?6 G. K+ ]4 v# W; j" S9 Q. I
   // Add plugin code here...5 f& h4 v  H, `
   ```
' ^6 T" r5 n  j
, x9 k6 p" o3 g7 d. ?# Y5 _   在示例中,我们创建了一个名为 `Site Wide Notices Plugin` 的新插件,该插件添加了一个新的自定义文章类型,并指定了版本、作者和作者 URI 等元信息。* s0 c5 z  C: s) O
$ L3 C/ W3 w- o6 d
2. 在插件中注册新的文章类型:在 PHP 文件中添加以下代码,用于注册一个名为“site-wide-notices”的自定义文章类型:9 B3 f5 K6 W7 k5 v( {

8 M  Z' C0 x+ ~# Z8 k) M   ```+ \$ g2 H# A( E; `. f& P1 k* C
   add_action('init', 'create_custom_post_type');7 t  Y" R; Z9 x$ C
   function create_custom_post_type() {* n8 Z& g0 r* `$ @
      $labels = array(
& O" N8 E* P- L" L4 p. N5 c: m          'name' => 'Site Wide Notices',3 s+ E+ ?' ?/ {! L7 S- h* @' Y9 A
          'singular_name' => 'Site Wide Notice',# M; |8 K, R& X( O
          'add_new' => 'Add New',
" W& y1 F3 ?6 _7 y          'add_new_item' => 'Add New Site Wide Notice',1 R3 T0 x' @+ B, Q6 f
          'edit_item' => 'Edit Site Wide Notice',
; ?+ K/ P# x4 ?7 p/ ~/ B          'new_item' => 'New Site Wide Notice',
+ T9 v0 g* p5 s4 P! X          'view_item' => 'View Site Wide Notice',2 s! O$ U% K( T: Z1 Z" W
          'search_items' => 'Search Site Wide Notices',
2 |, `" D* L5 o          'not_found' => 'No site-wide notices found',! d( v9 t; u8 g5 ], V
          'not_found_in_trash' => 'No site-wide notices found in trash'+ I) q  d" A! K, P1 _4 T
      );& n/ _8 F8 K5 F6 a* |

6 L9 ~4 m4 w& o* J$ r      $args = array(
$ @; F+ H  N: A# ]! \* |+ h* ?          'labels' => $labels,
9 @7 }9 T0 t0 G5 {8 Q. {+ J          'public' => true,6 X4 r) C7 U7 A7 X1 _8 F
          'has_archive' => true,
8 ~2 o9 i- k+ V0 g# f: z5 u# j          'supports' => array('title', 'editor', 'thumbnail', 'excerpt', 'custom-fields', 'revisions'),
5 H6 T9 B" U9 R3 T2 e          'taxonomies' => array('category', 'post_tag'),, U( ?7 v9 ~; g- L1 I1 N& o
          'menu_icon' => 'dashicons-megaphone',
8 O6 Y6 A9 h4 W; A- v          'menu_position' => 5,; ^6 p9 @  f1 W$ W0 u( C9 d
          'rewrite' => array('slug' => 'site-wide-notices'): _" S8 _; U, G$ P* E
      );
! q% ~6 H  S# N5 C
+ v2 r3 H* M7 G2 `5 Q9 ^3 Z      register_post_type('site-wide-notices', $args);
6 a; J0 w- `1 b( F2 I8 ~   }
' w9 |7 v& W; ]8 U! }3 Q2 I   ```: V, u$ j+ Y' G
+ l* F5 Q- E: U
   在示例中,我们使用 `register_post_type()` 函数注册一个新的文章类型,并定义了该文章类型的名称、标签和其他设置。* i7 o3 O* B) U" v  j

2 v6 M, Y( B$ K& _. T% t  v7 D3. 在后台中添加公告编辑页面:您可以使用 `add_meta_box()` 函数在后台中添加公告编辑页面,并自定义字段和元数据,例如:' ?/ H4 q/ k. ~/ G0 {' I

# f) V7 g* v' r, Z# b   ```
. Q! U* F/ {) M5 w$ G% E$ o; s8 y   add_action('add_meta_boxes', 'add_site_wide_notices_boxes');0 p& c# C: |% r
   function add_site_wide_notices_boxes() {
5 ^; t, |7 j3 a+ @      add_meta_box('notice-details', 'Notice Details', 'notice_details_meta_box', 'site-wide-notices', 'normal', 'high');
" A, ]7 u, K) d! E- |/ C$ ~   }
: z4 r' a9 W; A$ D
+ W- Y+ y) y8 G3 M- I   function notice_details_meta_box($post) {
8 r; R8 ~+ A" ^  i      wp_nonce_field(basename(__FILE__), 'notices_nonce');
( b8 [- H4 F. R6 Y! c8 f1 V      $notice_title = get_post_meta($post->ID, 'notice_title', true);' W( I/ u) t1 o; I
      $notice_content = get_post_meta($post->ID, 'notice_content', true);
  v2 {- g2 k  e2 G; S+ Z) t8 k      ?>5 B' C" p1 w+ i1 ?) D
      <p>* \. `* {- m" _8 d, l
          <label for="notice-title">Notice Title</label><br>( f1 _% N4 o9 \
          <input type="text" id="notice-title" name="notice_title" style="width: 100%;" value="<?php echo $notice_title; ?>">
5 B% m1 a8 f" m) U      </p>
3 C3 r3 x4 ]. D$ p# y6 _2 `- g# y      <p>- S" }( f2 l9 j' \
          <label for="notice-content">Notice Content</label><br>4 S9 e% n% X% Q- t2 \
          <?php wp_editor($notice_content, 'notice-content', array('textarea_rows' => 10)); ?>
4 x  `8 i" h  A% _" _$ b      </p>( y$ ?: a% x1 q) y# V
      <?php. @/ C, h& A& y# Q/ |
   }) ]+ D. x$ F8 K+ ~0 m1 s

6 B* M% R5 L1 F% i) A   add_action('save_post', 'save_site_wide_notice_meta_box');
2 H" c1 U  I* A' r. w0 X8 k! X   function save_site_wide_notice_meta_box($post_id) {5 g8 v1 X# x: o9 K, J/ Y1 H
      if (!isset($_POST['notices_nonce']) || !wp_verify_nonce($_POST['notices_nonce'], basename(__FILE__)))
. S# M% }, X7 x3 w         return;
. L; o! b. N  }6 \! D      if (defined('DOING_AUTOSAVE') && DOING_AUTOSAVE)
! ~& L4 j: j* C7 R; _3 _: Y         return;
( M% |! _. T. r) Y8 O& I* m
1 g6 m" o! u2 }" @      if (isset($_POST['notice_title'])) {8 r5 s; R9 c, R5 B
          update_post_meta($post_id, 'notice_title', sanitize_text_field($_POST['notice_title']));; E2 n7 s0 K' x: `9 E6 r
      }
, I% b' S7 ~( }8 P- |! D4 ^      if (isset($_POST['notice_content'])) {
6 A: L6 V; U" d$ ?          update_post_meta($post_id, 'notice_content', wp_kses_post($_POST['notice_content']));
* a5 \  E& f4 g      }
1 a4 G; B! p  T* h; Y   }
2 g  [$ ]( e% P: s4 I  V; z   ```+ J, ^( \/ B. t) s3 Q. B

6 C! a8 R2 {. @( w& @   在示例中,我们使用 `add_meta_box()` 函数添加了一个名为 `notice-details` 的元框,用于在编辑页面上显示自定义字段和元数据。在 `notice-details_meta_box()` 函数中,我们使用 `wp_editor()` 函数添加了一个可视化编辑器,用于编辑公告内容。在 `save_site_wide_notice_meta_box()` 函数中,我们使用 `update_post_meta()` 函数将公告标题和内容保存到 WordPress 数据库中。: f$ `) e. y8 B

! o" q" s6 Y5 m1 h4. 在前端页面中显示公告:在 WordPress 主题文件中添加以下代码,以在您的网站上显示公告:# _- d8 E9 h+ f) Q! j  _
; W( x, |7 R( Y# x
   ```
6 l3 B# r& i& o6 s( {" R% l   $args = array(( O( l& `( m+ m+ X% s9 R3 i
      'post_type' => 'site-wide-notices',
1 E. S- L+ j9 z) @( r1 h" G      'posts_per_page' => 3,
- q% V/ Y/ m! s5 Y$ q5 z* U0 Z7 e      'order' => 'DESC',
9 x% [; Z  {; O" ~/ I, k8 o+ H1 k      'orderby' => 'date'
) l0 }4 [; L% C6 Q3 K- U   );) N7 |" {! ]2 |# p' J
   $query = new WP_Query($args);  y- E* i, }) V
   if ($query->have_posts()) :7 w* w8 n, u/ n+ }2 I% n" e. j
      while ($query->have_posts()) : $query->the_post(); ?>
8 V; L, N9 m) I# r8 g, @* d* t6 z9 b          <div class="notice">
9 W' L: l" C3 q5 @! u0 \              <h3><?php the_title(); ?></h3>% l: g. d4 I5 ~* e& N
              <div class="notice-content"><?php the_content(); ?></div>
' w3 i* o9 y9 D. y2 L. i5 j          </div>
. \/ T  W2 H. |2 R, B9 @3 P$ ~      <?php endwhile;
  g4 z" \4 ^3 e0 i7 O# S      wp_reset_postdata();
: ^- g" o2 q7 ^& @$ A: k   endif;4 T7 ~$ U6 _  N2 M
   ```
4 {' W  p3 M1 V8 C6 d7 P! g% L" Q- e5 X/ ^2 s
   在示例中,我们使用 `WP_Query` 类从 `site-wide-notices` 文章类型中获取最近发布的 3 条公告,并在前端页面中循环遍历并显示标题和内容等信息。
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2026-1-18 06:51 , Processed in 0.019565 second(s), 2 queries , Redis On.

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

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