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

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

[复制链接]

331

主题

511

回帖

3353

积分

管理员

积分
3353
QQ
发表于 2023-5-18 08:34:20 来自手机 | 显示全部楼层 |阅读模式
您可以使用以下方法来快速在 WordPress 后台增加一个全站公告的功能:- a3 M+ P, K7 Y% w% B6 x2 N6 s: Q

3 w* s3 ?& ^4 r, \1. 在 WordPress 插件库中寻找可用的公告插件,例如 WP Notification Bars、Announcements、SSP Elegant Notification Bar 等。
5 h9 @. u8 E+ R& p
( s- I( Y* S' Q9 q8 c2. 安装并激活您选择的插件。您可以在 WordPress 后台的「插件」->「添加新插件」界面中搜索并安装插件,然后在「插件」->「已安装插件」界面中激活它。
  q( t$ g' J7 p4 f& x/ \/ X7 u) E8 i, ~% a# [! I( d! d! _
3. 在插件的设置页面中配置您的公告内容和样式。不同插件的设置选项和功能可能会有所不同,但通常都允许您定义公告的文本、链接、颜色、位置等。
1 i# ~; W" I4 x3 J* x
% E7 s: A3 b+ N) C% w4. 将公告添加到您的网站上。在插件设置页面中完成公告的设置后,您可以通过编辑 WordPress 主题的代码或使用插件提供的方法将公告添加到您的网站中。不同插件可能使用不同的添加方法,具体请查看详细说明或联系插件作者。
9 @, G1 [" }/ Z- A! F5 e) r% Y" ]
注意,如果您使用的 WordPress 主题已经包含了公告功能,或使用了其他公告插件,可能会导致冲突或功能重复。如果您遇到了这样的问题,请查看主题文档或联系主题作者以获取解决方案。
回复

使用道具 举报

331

主题

511

回帖

3353

积分

管理员

积分
3353
QQ
 楼主| 发表于 2023-5-18 08:34:51 来自手机 | 显示全部楼层
如果是自己开发的话,具体要怎么做?
2 ?3 J" d- L6 t  e
, q) q  D" f1 s7 g9 Z3 x如果您自己开发 WordPress 主题或插件,并且需要在后台中增加一个发布全站公告的功能,可以按照以下步骤操作:2 B7 e' T: S+ |9 z% s& e8 B6 z- Q

* q) r" u! o) R, b; o9 a3 \- Q% g1. 创建一个自定义的 WordPress 后台页面。您可以使用 `add_menu_page()` 或 `add_submenu_page()` 函数来创建一个自定义后台页面,例如:; n! S3 f# T- O

% Q9 t5 g. A! m+ S; P5 o   ```( o! a, l7 l% e. w
   add_menu_page(+ \; N, ]  n0 L0 F1 l! N
       '全站公告',
' B2 X6 _3 s: `4 u; M7 s       '全站公告',2 a& v! b6 @) B% y0 `
       'manage_options', //需要的用户权限
! {  j1 W7 D/ N, ?       'site-wide-notice', //后台页面的 slug
# A6 r/ ?$ y9 g/ H       'render_site_wide_notice_page', //用于渲染后台页面内容的函数" R/ j- @$ G5 _  \
       'dashicons-megaphone', //用于显示在菜单中的图标0 s& y) ]* j7 }& M: k/ k; I1 [& r
       30 //菜单项的位置6 e  ?& ~" v2 W/ x( s
   );
$ M$ }9 u% F  v% t/ ^4 m3 W: `   ```
8 y: G6 X! W# }, d' V0 p+ z' d+ a" l* x! Z4 w
   在该示例中,我们使用 `add_menu_page()` 函数来创建了一个名为“全站公告”的菜单项,并指定需要的用户权限(`manage_options`),在后台页面的 slug 为 `site-wide-notice`,用于渲染后台页面内容的函数为 `render_site_wide_notice_page`,在菜单中显示的图标为 `dashicons-megaphone`,菜单项的位置为 30。
  ~* a8 B, |( h' j
/ n5 D; [6 V& P8 V2. 编写用于显示和保存全站公告内容的代码。您可以在自定义后台页面中创建一个表单,让用户输入公告的标题、内容等信息,并将这些信息保存到 WordPress 数据库中的某个表中。例如:
1 L1 [  A; O. B% D; V, V
3 ^7 ~6 X) Z) [3 Q$ M7 r1 Z1 t7 i   ```
" C" b7 |: w0 V% V, @. L   function render_site_wide_notice_page() {
$ z* A& F3 {  H9 E$ {      // 渲染后台页面内容
+ O7 k$ n' o" c      echo '<div class="wrap">
$ y. p/ X% t! M9 ]- W: z          <h2>全站公告</h2>3 @: \+ h2 v6 v
          <form method="post" action="">8 K7 Z, p: Q8 x: x9 ^8 T
              <label for="title">公告标题:</label>
  i5 c( @5 _% v3 y( W              <input type="text" name="title" value="'.get_option('site_wide_notice_title').'"><br><br>2 t) D4 o3 x; a  ^8 w- l
              <label for="content">公告内容:</label>
* ~/ n0 E0 i3 K% v6 K              <textarea name="content">'.get_option('site_wide_notice_content').'</textarea><br><br>
/ f% g: f! I8 E9 _              <input type="submit" name="submit" value="保存设置">' k8 R5 ^; H( S; W+ c/ v( G: S
          </form>! A8 ^1 p4 v& c& Z
      </div>';7 O0 K; r) z. y, `. U2 _7 M

. |- q6 A  M" S: x      // 处理表单数据3 N' Z( Y; k9 l' R" M
      if (isset($_POST['submit'])) {! A" Z1 l6 b  y# f
          update_option('site_wide_notice_title', sanitize_text_field($_POST['title']));. M$ }0 [6 Q) L
          update_option('site_wide_notice_content', sanitize_text_field($_POST['content']));+ _, a7 d1 A1 Y8 s7 a( D
      }
6 S( |$ n$ L' P8 N, y7 n' S   }
* U( i4 a$ D. I3 W7 Z   ```
$ V3 j! c7 Z2 I/ S. V- O, t9 i8 b  _' Q3 n% b2 g; [4 ~4 D
   在该示例中,我们创建了一个表单,让用户输入公告的标题和内容,并使用 `update_option()` 函数将这些数据保存到名为 `site_wide_notice_title` 和 `site_wide_notice_content` 的 WordPress 配置项中。如果用户点击提交按钮,则将表单数据更新到配置项。' Q1 i% }" W8 Z: s8 n: q

. ~# N3 @) g3 V6 |3. 在 WordPress 主题中显示全站公告。您可以通过在 WordPress 主题的 `header.php` 文件中添加代码,将公告内容显示在网站的顶部或其他位置。例如:
1 c$ H" b8 E$ t- Q( W8 u4 s, p4 ?) N3 H8 F4 ?
   ```
: c& C" J$ I) f* i3 @% n! G2 N9 k0 N   <?php
3 o7 J4 r" Q" k9 D   $site_wide_notice_title = get_option('site_wide_notice_title');: P# Y( C: B  k' w; \9 E
   $site_wide_notice_content = get_option('site_wide_notice_content');
' _; d! f' L7 U9 e' z   if (!empty($site_wide_notice_title) || !empty($site_wide_notice_content)) {6 Z. ~, @) l% R- i, {; J
       echo '<div class="site-wide-notice">';$ |' Y; c+ @2 S7 K4 i" c7 d, R
       if (!empty($site_wide_notice_title)) {
% I! M$ v; a- @  i           echo '<h3>'.$site_wide_notice_title.'</h3>';- x: D3 B$ j" }8 U
       }1 T! \, h! i& O$ B3 P2 |% H' L) C0 _, p
       if (!empty($site_wide_notice_content)) {
4 {4 ]' ~( T% j           echo '<p>'.$site_wide_notice_content.'</p>';
  U: h* r( ^: l6 T) N% Z       }
7 F4 n; n! P. }' K. H5 H' p  p       echo '</div>';' H% [* F& E+ v& [2 O' i
   }
/ S( e0 W; X3 O: z   ?>
: w/ b. q) h& R4 W. C9 n   ```# C0 Q3 t$ w; o$ H& T( f# B! |
5 t1 c3 K: @5 c3 j1 w8 [* q
   在该示例中,我们检查 WordPress 配置项中名为 `site_wide_notice_title` 和 `site_wide_notice_content` 的值是否为空,如果不为空,则在 `header.php` 文件中添加一个名为 `site-wide-notice` 的容器,将公告标题和内容显示在其中。
  _) \3 E' ^; Y
! K$ m) }! K0 R# w/ s9 U请注意,本示例仅提供了一个框架,具体实现可能会根据您的需求和实际情况有所不同,您需要根据自己的需要进行修改和调整。同时,为了确保安全性,您还会需要对用户输入的数据进行适当的验证和过滤,例如使用 `sanitize_text_field()` 函数来过滤表单数据。
回复

使用道具 举报

331

主题

511

回帖

3353

积分

管理员

积分
3353
QQ
 楼主| 发表于 2023-5-18 09:26:50 来自手机 | 显示全部楼层
那如果需要发布多条公告,并进行管理,要如何实现?
2 z6 ]6 V# A$ S/ J) k) M8 ?6 L0 |) C: p. w6 B' W! ~
您可以创建一个自定义的 WordPress文章类型,例如“公告”,并对其进行自定义化,以实现发布多条公告并进行管理的功能。以下是具体步骤:2 U$ v. i; E0 k5 a# W* y) a0 S  h
( _2 u2 Z2 n2 C# [* i
1. 创建一个自定义的文章类型:在你的主题 `functions.php` 文件中,添加以下代码:
/ U; g+ q4 q/ t% m/ }7 Y/ T! _( A: T. q
```
/ k$ J0 f% U6 C- Gfunction create_custom_post_type() {
/ H* Z' W! I" c6 s    $args = array(
, O  x% |2 s: j6 m        'labels' => array(
# y/ a2 s" F5 c6 ^6 L            'name' => '公告',; a4 Q  n4 q* \2 o6 ?4 U
            'singular_name' => '公告'& V& K# ?3 W6 y; |' L( m
        ),
1 j- T7 y8 G. E0 ~( Q        'public' => true," I1 U# k  c0 G# c& _
        'has_archive' => true,/ f/ \) H0 K0 N1 t" r& N+ h
        'supports' => array('title', 'editor', 'thumbnail', 'excerpt', 'custom-fields', 'revisions'),1 O; H) O3 i9 Z$ c" ~  a' d" \
        'taxonomies' => array('category', 'post_tag'),6 s2 j% h* r* s1 z0 H
        'menu_icon' => 'dashicons-megaphone',+ O7 d5 ]7 `9 y$ @& R; J% z4 c. C
        'menu_position' => 5,
" l' \" p. _* o8 Z. C9 P- b        'rewrite' => array('slug' => 'site-wide-notices')5 i' }. k6 F- s& T2 h0 ]& L# l
    );1 Y, q" \6 D% J! e
    register_post_type('site-wide-notices', $args);
# N2 _$ r0 P- g  I+ T}
! v! c4 a3 l6 ~* Z7 x8 F9 e5 ^' w  Gadd_action('init', 'create_custom_post_type');
4 G3 P1 L. ?6 ]8 X) S+ o+ }```
+ _9 i& U$ O0 h; Y: _
# q9 T# N0 f% }$ ~在示例中,我们注册了一个名为 "site-wide-notices" 的新的文章类型,并定义了文章类型名称、缩略名、文章类型支持的功能、分类法、管理菜单图标等设置。
% g, d9 c3 T/ I, q& }( ]( v! a2 h: X" ~" [" y* {
2. 在你的 WordPress 后台中创建新文章类型“公告”:现在,你就可以在 WordPress 后台中通过导航到“公告”菜单,来添加、编辑或删除公告了。您可以在编辑公告的页面中添加标题、内容、特色图像或其他自定义的元数据字段。
6 w% G# a8 s1 v* U) v3 Q, {; ]% J, q( |1 _
3. 在主题中显示公告:在您的 WordPress 主题文件中添加以下代码,以在您的网站上显示公告:
0 q0 C( ]1 k+ g
1 Y9 G. Y( h/ {  E```: c2 |+ a' v# m8 W+ r
$args = array(3 {6 J# ?8 V8 s" M# o7 Y8 ]
    'posts_per_page' => 3, // 显示的公告数量
" k% R' `/ ^, E* r6 \, z    'post_type' => 'site-wide-notices', // 公告文章类型. u3 L7 N4 G4 q; W7 q& q
    'post_status' => 'publish', // 公告状态
* e& z( Z1 s, c  P8 u! c1 R7 h% J    'order' => 'DESC' // 排序方式
$ V5 d% w: `9 S$ T);
  Z- K! T7 K8 @' y  [% S  B7 u7 ~9 x* y. G3 p
$notices = new WP_Query($args);& k: K" r4 W" B' F' z
if ($notices->have_posts()) :, _) r$ n/ I  Q0 V6 X+ |
    while ($notices->have_posts()) : $notices->the_post(); ?>4 N, e! b4 p9 O5 ]
        <div class="notice">
7 {. M3 u. d4 w& F: _* z* f+ r2 q7 ^            <h3><?php the_title(); ?></h3>1 s% R# D5 P5 K7 j8 i
            <div class="notice-content"><?php the_content(); ?></div>
* q3 Z) e) E9 D* M% i        </div>
5 z$ e% F0 h. b- R3 j% X  M    <?php endwhile;
% l- W; w# G" R# }7 v( ^# D6 Oelse :
( X7 e8 Q+ Q" G    echo "暂无公告";
+ i9 y8 f1 j7 P3 O( Gendif;
! d- Y) u4 M- J+ P. P9 u9 Zwp_reset_query();
$ {" i0 v% O5 T9 j* V; w% D```& p  H3 W( w8 }9 H& D

2 p9 z% a1 H, Q8 j这段代码将使用 WordPress 的 `WP_Query` 类从公告文章类型中获取最新发布的 3 条公告,并在前端页面中循环遍历并显示公告标题和内容等信息。+ Z$ Y. S' n0 v& ^

: F. a) B1 I) E$ W以上便是实现 Wordpress 后台发布多条全站公告的基本步骤。需要注意的是,自定义文章类型可对应多篇文章,具体根据您的需求进行调整。
回复

使用道具 举报

331

主题

511

回帖

3353

积分

管理员

积分
3353
QQ
 楼主| 发表于 2023-5-18 09:27:55 来自手机 | 显示全部楼层
如果不想修改functions.php,有其他更好的办法吗?
: k. l: U' v' G$ V2 P. z: M: t; A6 j( g; `4 p
如果您不想修改主题 `functions.php` 文件,也可以创建一个自定义插件来添加新的文章类型。
2 C1 N5 Z7 D- g/ N- D  @  u$ k+ b; b2 N
以下是创建自定义插件的步骤:3 Q! J4 ?4 J9 k  S, a1 _: O9 A
8 s: s8 P5 l. C: z1 u7 |# [; c
1. 创建新插件:在 WordPress 插件目录中创建一个新的子目录,例如 `site-wide-notices-plugin`,然后在该目录中创建一个新的 PHP 文件,例如 `site-wide-notices-plugin.php`,并在文件头部添加必需的标记,例如:' K0 J+ e) [/ @& ~

( |2 J. g  k6 ?   ```; N: A* R# ], m
   <?php
2 |: a& o+ h; m' ~% K3 I   /*6 P0 t+ r/ \8 i* k+ P4 c
   Plugin Name: Site Wide Notices Plugin$ j; o, R4 o  F& P, y
   Description: Adds a new custom post type for site-wide notices.0 I* u) m; m# q6 X& d
   Version: 1.0
& G2 d' K' K. |( A   Author: Your Name
. S$ a6 Z; {( j' p! Z0 [' Y   Author URI: http://example.com
. S& I- c+ T! Q+ @- S& W   */
) H: c# f! {  V- Q9 S' f2 ~/ l2 u# j% t4 J
   // Add plugin code here...6 w2 x  g) e! z3 M, u
   ```
% u2 u  |& f4 y! f0 K% K, v" B" e: O# E# U6 q5 h; y6 ^
   在示例中,我们创建了一个名为 `Site Wide Notices Plugin` 的新插件,该插件添加了一个新的自定义文章类型,并指定了版本、作者和作者 URI 等元信息。
2 O. e7 H  P1 Y! H3 T4 B8 R( U0 ~1 ~& \% Q1 [/ T$ \2 d
2. 在插件中注册新的文章类型:在 PHP 文件中添加以下代码,用于注册一个名为“site-wide-notices”的自定义文章类型:3 X$ |1 P3 V+ L3 I* n3 l9 y
2 R2 {- |- ]% U% v% h6 U
   ```
6 o! j( A; ?8 d! Z2 N# @   add_action('init', 'create_custom_post_type');, ?. f" o! ^  g1 h
   function create_custom_post_type() {
9 c! d$ A' U$ B9 ~2 a" o      $labels = array(+ h# f5 R+ L! M, _0 }  N
          'name' => 'Site Wide Notices',
! h: {+ Q/ X: ^# E2 x0 Y          'singular_name' => 'Site Wide Notice',( T% ^. q! t8 b) q) w, }
          'add_new' => 'Add New',5 L; ~# ]/ s% T8 _7 l3 P
          'add_new_item' => 'Add New Site Wide Notice',* j8 S; T+ p) z# N! ^+ N
          'edit_item' => 'Edit Site Wide Notice',
  Z, j5 ^, Q: S& C          'new_item' => 'New Site Wide Notice',, Y' E, v% Q# u1 M* z- i/ B; f
          'view_item' => 'View Site Wide Notice',
8 d2 i* Y7 G" T& E          'search_items' => 'Search Site Wide Notices',  m% C) P+ s) b( ]/ g  |
          'not_found' => 'No site-wide notices found',
5 y1 a  R, ~, g* U# m- a) S( b9 ~; `          'not_found_in_trash' => 'No site-wide notices found in trash'
0 \* q3 V0 m5 }- F7 s3 g5 h' h; N      );
; ]% t3 T1 Q0 g* A! ]1 R) k  f
. \/ J8 [6 c% M/ `      $args = array(" `' ^/ Z! z; B
          'labels' => $labels,
/ V9 x/ J+ |" G8 Z; o          'public' => true,+ ~6 r& D5 q) Q
          'has_archive' => true,& Z1 z9 X& S: b( ]. S
          'supports' => array('title', 'editor', 'thumbnail', 'excerpt', 'custom-fields', 'revisions'),
8 C  z0 @* ]; z+ W# v# u4 ]          'taxonomies' => array('category', 'post_tag'),
7 ]! x, ^+ W5 P( u          'menu_icon' => 'dashicons-megaphone',' n( ?9 q- e, o; h1 @+ L$ f: p" |
          'menu_position' => 5,9 y4 }. O; x3 _$ o! }6 W( q1 X# X
          'rewrite' => array('slug' => 'site-wide-notices'). d' X4 L# F& Z- k1 b
      );
# ^2 n, w9 ?! i9 ]( g4 y/ ]: b7 L, f# }4 T# z
      register_post_type('site-wide-notices', $args);% R2 d( J2 l$ `. Y! p
   }
: `1 |$ y* F0 a   ```
( r4 R5 `# R4 [4 @& v/ }& ?5 D
& M: ?$ _  Z7 p0 V* h$ p1 z: Z& k   在示例中,我们使用 `register_post_type()` 函数注册一个新的文章类型,并定义了该文章类型的名称、标签和其他设置。  k1 D5 x# a1 m' y1 |

% F4 Y+ m$ ~+ l; r3 B$ o3. 在后台中添加公告编辑页面:您可以使用 `add_meta_box()` 函数在后台中添加公告编辑页面,并自定义字段和元数据,例如:& Y. w" m. B" ^3 K, s2 s

# A8 \: u$ s. b* G6 Z   ```
! c% M' h7 h& N9 k3 V   add_action('add_meta_boxes', 'add_site_wide_notices_boxes');: n8 H8 P2 \) K* B" _2 I5 S" ~
   function add_site_wide_notices_boxes() {8 E& I6 d( ^' [2 o3 ]+ t$ u1 x
      add_meta_box('notice-details', 'Notice Details', 'notice_details_meta_box', 'site-wide-notices', 'normal', 'high');
; a# ^1 K9 m+ o6 d, h& f) f& q   }
) i- D  `: M9 M, F8 X. s, v+ \* g  n5 U
   function notice_details_meta_box($post) {+ j5 d9 t/ S7 b4 a* q
      wp_nonce_field(basename(__FILE__), 'notices_nonce');+ R. x# M+ w+ K; d3 W  f* \
      $notice_title = get_post_meta($post->ID, 'notice_title', true);
/ ~) z" O/ ?  K* l0 R0 q      $notice_content = get_post_meta($post->ID, 'notice_content', true);
+ L# P+ \: ]4 d' P9 D      ?>
# T- x8 O% ?. d# Q9 L      <p>
% q6 {; q$ y1 R, e$ [' p          <label for="notice-title">Notice Title</label><br>9 b3 k, A4 h% }9 t/ |
          <input type="text" id="notice-title" name="notice_title" style="width: 100%;" value="<?php echo $notice_title; ?>">9 E4 i5 d3 f- k1 k7 Z
      </p>
& U. d4 i0 k: K" b/ }      <p>3 p+ Z! T, |2 \) e( x- ^$ \0 O
          <label for="notice-content">Notice Content</label><br>
7 M* u  Z4 w3 m$ d/ _7 `9 F( i& J          <?php wp_editor($notice_content, 'notice-content', array('textarea_rows' => 10)); ?>
( r+ q* `4 S- B/ }) @( B      </p>) ~0 j7 |+ z9 |8 z
      <?php* W( F  y8 M2 Z
   }& B7 k* H  M, x
* ]8 O& f4 |  `: U) |) T
   add_action('save_post', 'save_site_wide_notice_meta_box');/ n& @7 I3 P/ g4 I* M/ e4 _
   function save_site_wide_notice_meta_box($post_id) {4 M* G. \: f2 ]4 h+ [  v
      if (!isset($_POST['notices_nonce']) || !wp_verify_nonce($_POST['notices_nonce'], basename(__FILE__)))# v( h; M' E2 N2 Y3 _, `
         return;
+ k8 U: {5 C# P      if (defined('DOING_AUTOSAVE') && DOING_AUTOSAVE)9 A  v. L8 q& A6 u% o6 Z, r3 N. E! I
         return;
/ C+ T  ~3 h; s* q) I. a
, W9 m9 l, i- ^; J      if (isset($_POST['notice_title'])) {
/ h% y2 \9 I5 O: _) q! M  t          update_post_meta($post_id, 'notice_title', sanitize_text_field($_POST['notice_title']));3 I+ y% a3 G( I4 z: u8 g- @
      }6 g. m6 f5 W$ z6 d6 Y3 {
      if (isset($_POST['notice_content'])) {
! @' O, N; l2 g* Q          update_post_meta($post_id, 'notice_content', wp_kses_post($_POST['notice_content']));5 f& O2 m/ G/ M3 N) i
      }3 X2 M9 k. `3 |, w' i) L
   }
: l$ ]- O$ D/ H5 w4 f   ```
' [* |8 F& M" R3 v& u7 R# n' ]: B- x9 T; h/ J; e) a$ p
   在示例中,我们使用 `add_meta_box()` 函数添加了一个名为 `notice-details` 的元框,用于在编辑页面上显示自定义字段和元数据。在 `notice-details_meta_box()` 函数中,我们使用 `wp_editor()` 函数添加了一个可视化编辑器,用于编辑公告内容。在 `save_site_wide_notice_meta_box()` 函数中,我们使用 `update_post_meta()` 函数将公告标题和内容保存到 WordPress 数据库中。. u% f" F; p) F% r% V
, }6 d" M3 r* A* \$ y5 ~
4. 在前端页面中显示公告:在 WordPress 主题文件中添加以下代码,以在您的网站上显示公告:
  p- A7 W8 L8 x. D; ?
$ U( I+ q8 v+ ?1 B9 `   ```
: q, x- i7 X% |) O   $args = array(
" H% h& W5 h* I& W+ @/ R      'post_type' => 'site-wide-notices',% C" h" x; l9 C7 X
      'posts_per_page' => 3,
" k/ q% ]% F* o7 t      'order' => 'DESC',
! {% X3 t! U% f8 d& `      'orderby' => 'date'
, V2 m, g7 s( b1 N1 {" M   );
& k9 w) V3 S* u* o- c9 U( U   $query = new WP_Query($args);
$ T- t1 Y- c# t' @) ^   if ($query->have_posts()) :
/ V# W4 N- v7 W4 _: ^! R6 W6 r( D      while ($query->have_posts()) : $query->the_post(); ?>3 P1 z/ w/ f, P- \3 j4 z7 Z
          <div class="notice">
) x! ]' p; m/ J  P7 H6 I( N              <h3><?php the_title(); ?></h3>
7 H; I' S, j. k: m, {$ I# U- W              <div class="notice-content"><?php the_content(); ?></div>2 M3 N8 m& a$ Z+ R
          </div>
0 e. J% d4 s9 F7 |  D      <?php endwhile;6 s7 |$ J/ k, P: D/ |' \  E
      wp_reset_postdata();& M0 N& _; P- r! k7 o' ]
   endif;$ {- g, f& g( w/ o/ g+ h
   ```8 T0 V0 e+ [% s. l& w! A
  O& I, h. `6 U3 v
   在示例中,我们使用 `WP_Query` 类从 `site-wide-notices` 文章类型中获取最近发布的 3 条公告,并在前端页面中循环遍历并显示标题和内容等信息。
回复

使用道具 举报

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

本版积分规则

QQ|Archiver|手机版|小黑屋|通达产控投资 ( 粤ICP备2023021749号-1|粤公网安备 44030402006137号 )

GMT+8, 2025-11-20 09:04 , Processed in 0.079897 second(s), 3 queries , Redis On.

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

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