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

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

[复制链接]

332

主题

513

回帖

3376

积分

管理员

积分
3376
QQ
发表于 2023-5-18 08:34:20 来自手机 | 显示全部楼层 |阅读模式
您可以使用以下方法来快速在 WordPress 后台增加一个全站公告的功能:
: f3 _6 d9 o& y# c" {
9 T  ^5 V/ x8 _0 W0 k1. 在 WordPress 插件库中寻找可用的公告插件,例如 WP Notification Bars、Announcements、SSP Elegant Notification Bar 等。
  w) Q5 K8 F& R1 l" `: E6 s  M
! {" _# F, V1 n5 w9 B) Q4 P2. 安装并激活您选择的插件。您可以在 WordPress 后台的「插件」->「添加新插件」界面中搜索并安装插件,然后在「插件」->「已安装插件」界面中激活它。7 i2 }) V5 ?9 Q7 x
+ l3 {5 Z& V9 t' m, |( M
3. 在插件的设置页面中配置您的公告内容和样式。不同插件的设置选项和功能可能会有所不同,但通常都允许您定义公告的文本、链接、颜色、位置等。
8 \  t. |; N; N8 L# L0 V. K0 `/ m5 e: S
4. 将公告添加到您的网站上。在插件设置页面中完成公告的设置后,您可以通过编辑 WordPress 主题的代码或使用插件提供的方法将公告添加到您的网站中。不同插件可能使用不同的添加方法,具体请查看详细说明或联系插件作者。
. C8 O8 {) C/ j& c/ B  q1 s+ D' A
注意,如果您使用的 WordPress 主题已经包含了公告功能,或使用了其他公告插件,可能会导致冲突或功能重复。如果您遇到了这样的问题,请查看主题文档或联系主题作者以获取解决方案。
回复

使用道具 举报

332

主题

513

回帖

3376

积分

管理员

积分
3376
QQ
 楼主| 发表于 2023-5-18 08:34:51 来自手机 | 显示全部楼层
如果是自己开发的话,具体要怎么做?8 B0 X8 J7 X& k( X8 m

+ P1 T; a! w, q如果您自己开发 WordPress 主题或插件,并且需要在后台中增加一个发布全站公告的功能,可以按照以下步骤操作:
& w9 }! ?! Q4 X+ E9 C. T7 x
: X; r' B1 v8 U  y9 z* ?2 A+ e1. 创建一个自定义的 WordPress 后台页面。您可以使用 `add_menu_page()` 或 `add_submenu_page()` 函数来创建一个自定义后台页面,例如:
1 S6 g, I2 g6 |! U9 e$ F3 v7 P7 H3 ]
   ```+ B* U4 o" F$ U" \8 L4 Y
   add_menu_page(
9 P) ~4 c- S0 I       '全站公告',
* |2 b/ a0 W% D. f       '全站公告',
7 D( U6 X! `8 a8 Y       'manage_options', //需要的用户权限
0 q+ O$ @* |% _       'site-wide-notice', //后台页面的 slug, m7 s4 X! E; {" H% M
       'render_site_wide_notice_page', //用于渲染后台页面内容的函数' [# u, d! u5 T2 q# w1 Z3 l
       'dashicons-megaphone', //用于显示在菜单中的图标
, P; p  y0 r+ j# Y, Y& ~) j$ ?3 Y% q       30 //菜单项的位置8 y# ~$ N* {2 T4 x2 b% c+ |
   );
+ b1 j7 Q5 s% ?8 C: E9 X7 }   ```+ ^& t$ q" a. \

  Y0 k& i* C3 I/ C! H. F5 D2 X   在该示例中,我们使用 `add_menu_page()` 函数来创建了一个名为“全站公告”的菜单项,并指定需要的用户权限(`manage_options`),在后台页面的 slug 为 `site-wide-notice`,用于渲染后台页面内容的函数为 `render_site_wide_notice_page`,在菜单中显示的图标为 `dashicons-megaphone`,菜单项的位置为 30。# C/ u; O" J9 @# B' q

% Q9 b6 H- Z7 D# S: I2. 编写用于显示和保存全站公告内容的代码。您可以在自定义后台页面中创建一个表单,让用户输入公告的标题、内容等信息,并将这些信息保存到 WordPress 数据库中的某个表中。例如:
, Y5 {! `8 r  ~
( R( B( ~' M! P7 h5 Z* D8 k9 q   ```
/ i4 V8 v/ l. e; r) d( e) d' _   function render_site_wide_notice_page() {
" E' g/ ~# g: [- _+ }      // 渲染后台页面内容
" S) @$ W! f9 g      echo '<div class="wrap">+ w  g$ E! d, ]1 @
          <h2>全站公告</h2>
5 ^' c$ }5 j  d5 @! b% F          <form method="post" action="">
) c& K3 ?" I! r" F; [              <label for="title">公告标题:</label>; U, f7 Q, l& E+ @* O
              <input type="text" name="title" value="'.get_option('site_wide_notice_title').'"><br><br>8 V: ]5 y* L  g* X
              <label for="content">公告内容:</label>
3 m4 O. u3 w. L              <textarea name="content">'.get_option('site_wide_notice_content').'</textarea><br><br>2 ]! W0 p& M- ]! ?
              <input type="submit" name="submit" value="保存设置">; C0 w9 d0 @/ P9 Z
          </form>' R+ ]0 G2 B8 s0 `2 V0 U
      </div>';  |; `' c- \" m! W6 P. \) V7 k2 D: @

6 |. ]: x8 E! o      // 处理表单数据
& V1 J" b2 h& z- H8 V      if (isset($_POST['submit'])) {% j+ b: t" A0 g
          update_option('site_wide_notice_title', sanitize_text_field($_POST['title']));
& s4 q, y; T) M" {' c, u          update_option('site_wide_notice_content', sanitize_text_field($_POST['content']));  Z! M- r. i' Z$ }2 F! Y
      }& D1 k( U/ P8 C& G8 H7 V, }
   }
0 e( e" Y4 r' E) U  K* s" {& k5 n   ```6 ?$ \" c! E1 a8 X7 K* y

9 [7 L; W7 \9 ~' |" X7 N# l0 g; d   在该示例中,我们创建了一个表单,让用户输入公告的标题和内容,并使用 `update_option()` 函数将这些数据保存到名为 `site_wide_notice_title` 和 `site_wide_notice_content` 的 WordPress 配置项中。如果用户点击提交按钮,则将表单数据更新到配置项。
4 \  N6 m4 ^9 T- n( u- }7 Q$ w9 `! j: F
3. 在 WordPress 主题中显示全站公告。您可以通过在 WordPress 主题的 `header.php` 文件中添加代码,将公告内容显示在网站的顶部或其他位置。例如:
4 B' B7 J/ Y* Z# W6 B
0 m6 T* G: S: Y- T/ D   ```
, e4 @' d5 X+ ~, Y. Z4 ^   <?php
! t7 T5 S1 a8 `9 q6 P$ ?   $site_wide_notice_title = get_option('site_wide_notice_title');7 H* n+ N/ E. i  o8 F0 n0 ~
   $site_wide_notice_content = get_option('site_wide_notice_content');; C; p$ x9 D- S$ {. T4 c$ p( U
   if (!empty($site_wide_notice_title) || !empty($site_wide_notice_content)) {) a7 Z. d+ a2 w& h, E' G& }$ G
       echo '<div class="site-wide-notice">';
5 r* i6 Y4 l% N       if (!empty($site_wide_notice_title)) {3 ?% M' h7 f. X) q
           echo '<h3>'.$site_wide_notice_title.'</h3>';
# \4 K: P7 |" T) O0 l1 C       }; g  n$ Y0 T: x
       if (!empty($site_wide_notice_content)) {
, d+ B/ v  T' b5 A/ Y8 [# U           echo '<p>'.$site_wide_notice_content.'</p>';
3 a. c; r5 y( T6 }& W6 H: G       }! c/ o2 S0 Z- }; C: }* D
       echo '</div>';$ z, j, l3 j: t* ]6 @4 O& R- y
   }
3 v9 R4 }' E. D/ `, f7 [0 V1 B   ?>
" y0 Y8 v: N+ k7 p$ ~4 b% w& O   ```& Z/ Q% Y0 R9 o- I$ y& t: Z# H  T( g

% X# F! y7 Q. ^   在该示例中,我们检查 WordPress 配置项中名为 `site_wide_notice_title` 和 `site_wide_notice_content` 的值是否为空,如果不为空,则在 `header.php` 文件中添加一个名为 `site-wide-notice` 的容器,将公告标题和内容显示在其中。1 I' h8 }" n. C" z$ Q6 ~4 M  t! j
  d/ |% T: A- h
请注意,本示例仅提供了一个框架,具体实现可能会根据您的需求和实际情况有所不同,您需要根据自己的需要进行修改和调整。同时,为了确保安全性,您还会需要对用户输入的数据进行适当的验证和过滤,例如使用 `sanitize_text_field()` 函数来过滤表单数据。
回复

使用道具 举报

332

主题

513

回帖

3376

积分

管理员

积分
3376
QQ
 楼主| 发表于 2023-5-18 09:26:50 来自手机 | 显示全部楼层
那如果需要发布多条公告,并进行管理,要如何实现?! K, g+ u0 R( s

& }, a$ F  G& v1 S' G) w7 r4 z您可以创建一个自定义的 WordPress文章类型,例如“公告”,并对其进行自定义化,以实现发布多条公告并进行管理的功能。以下是具体步骤:7 T6 n! x/ u' z+ E9 p% Y

' o( x* S4 Z" G0 q7 T1. 创建一个自定义的文章类型:在你的主题 `functions.php` 文件中,添加以下代码:2 q1 x2 U* x. \6 M- I

, U1 v8 c7 ]- ~6 r) u- H7 {```
% ^3 n- W- B/ D0 p  b+ P% Ffunction create_custom_post_type() {
/ G/ x2 c* E  z0 v) L- J. ?/ ^* d    $args = array(1 O9 Y- F( \4 h2 R( r+ s3 r
        'labels' => array(
7 z% Q% q* b% |; a; d7 M            'name' => '公告',8 {2 V3 |3 P! S% P* Y% n
            'singular_name' => '公告'" Q% O! [: E! C4 }
        ),  c  d; U7 E5 \
        'public' => true,+ [0 R* z) w' n
        'has_archive' => true,
6 j6 f- i* U  ~) x$ @        'supports' => array('title', 'editor', 'thumbnail', 'excerpt', 'custom-fields', 'revisions'),/ K! X/ s6 M% Z' d% K2 F3 \
        'taxonomies' => array('category', 'post_tag'),
4 w1 R- k# Q; {# Q        'menu_icon' => 'dashicons-megaphone',
  Y! o, C5 l6 z        'menu_position' => 5,
$ ~2 v0 [2 o3 D        'rewrite' => array('slug' => 'site-wide-notices')% q, B5 ?. V/ P( G* J
    );
8 `# X7 m( v" w    register_post_type('site-wide-notices', $args);
' T+ y' S- J& B5 S6 T. b; n4 g}/ {( i% B' p5 _, H
add_action('init', 'create_custom_post_type');
8 N) G2 e6 V7 N$ p8 e```; C; M2 W( \0 A4 B+ f, ^9 a2 k# ~& B
% X/ S, n" p1 w! I
在示例中,我们注册了一个名为 "site-wide-notices" 的新的文章类型,并定义了文章类型名称、缩略名、文章类型支持的功能、分类法、管理菜单图标等设置。5 K% f5 t9 W, o" d+ _/ L
. f0 W; g( X' l. [# x2 p
2. 在你的 WordPress 后台中创建新文章类型“公告”:现在,你就可以在 WordPress 后台中通过导航到“公告”菜单,来添加、编辑或删除公告了。您可以在编辑公告的页面中添加标题、内容、特色图像或其他自定义的元数据字段。
6 g9 y. T5 J/ D- ]( t# x
# Q* d) Z( a+ F2 _" m9 R  g3. 在主题中显示公告:在您的 WordPress 主题文件中添加以下代码,以在您的网站上显示公告:
# a1 W" w6 r5 |& [" I* \5 s! N; s) U; T! u( q
```0 @4 \$ \# g# V
$args = array(
* b% u; [4 ~. C7 o    'posts_per_page' => 3, // 显示的公告数量1 J/ x$ ~' r4 t
    'post_type' => 'site-wide-notices', // 公告文章类型
# X: Z5 J/ x( }% y  V  M* a% H    'post_status' => 'publish', // 公告状态/ {* _, V8 d3 m$ ^/ [/ T
    'order' => 'DESC' // 排序方式! G! L6 Y$ K& K  `
);
) v+ i9 ^" A0 C4 x3 Y
- [. y9 U% o- u8 @0 @- `$notices = new WP_Query($args);. f2 c' O  E. v6 C  V
if ($notices->have_posts()) :
9 o* T7 C8 z+ k, a6 i8 a7 f    while ($notices->have_posts()) : $notices->the_post(); ?>
/ F& J5 K  T( c9 H* k  p        <div class="notice">
4 q5 N0 z9 {8 x% j5 V" f# t5 u, I0 ]            <h3><?php the_title(); ?></h3>
: e5 X& E1 Z% r: O' O; A( a! b$ t            <div class="notice-content"><?php the_content(); ?></div>! @/ @$ j% s& x9 z* ?) Q! D! }7 [
        </div>- g1 A3 c, [8 @
    <?php endwhile;
0 _) L3 v  j3 K5 z+ telse :
* B8 z) i2 m5 ?& U    echo "暂无公告";. X  f- ~2 `1 s/ T$ e6 B
endif;
( E5 W  J' P: y1 k/ P0 uwp_reset_query();( J/ h2 s' X$ I
```
, o  S+ V1 `( q! \: M, y3 f8 C& {5 A/ o) O  e' n$ V
这段代码将使用 WordPress 的 `WP_Query` 类从公告文章类型中获取最新发布的 3 条公告,并在前端页面中循环遍历并显示公告标题和内容等信息。. o8 i( T7 l# F3 G7 [( @
" V2 H* V4 }; b: O
以上便是实现 Wordpress 后台发布多条全站公告的基本步骤。需要注意的是,自定义文章类型可对应多篇文章,具体根据您的需求进行调整。
回复

使用道具 举报

332

主题

513

回帖

3376

积分

管理员

积分
3376
QQ
 楼主| 发表于 2023-5-18 09:27:55 来自手机 | 显示全部楼层
如果不想修改functions.php,有其他更好的办法吗?  k; t( a8 p  M" H

& _* y6 Q, ~  ^  d如果您不想修改主题 `functions.php` 文件,也可以创建一个自定义插件来添加新的文章类型。$ A# u9 z# F/ a  ~/ k; h

! T1 y% F& x9 o* K" K4 y5 \; S以下是创建自定义插件的步骤:
; [3 @: q' c: t( u% C( m+ a2 ]
+ [* F/ X( e0 G' V0 K$ @1 I1. 创建新插件:在 WordPress 插件目录中创建一个新的子目录,例如 `site-wide-notices-plugin`,然后在该目录中创建一个新的 PHP 文件,例如 `site-wide-notices-plugin.php`,并在文件头部添加必需的标记,例如:0 B# B  {2 h7 ]3 f) l

6 F; z3 b/ E' a" D9 x" T! f4 T   ```( y$ R$ e" T/ S
   <?php
, Y& L; m+ h: I3 H2 Z9 l# F  y   /*! B/ M3 A% d% D
   Plugin Name: Site Wide Notices Plugin
' c, m8 O6 n! l* E   Description: Adds a new custom post type for site-wide notices.
* L$ z" `. Z7 T/ ~   Version: 1.0
9 t. j6 d: ]; k2 v   Author: Your Name5 H1 |4 D5 Q/ l7 |- ^7 h
   Author URI: http://example.com+ e3 H  t( R1 k1 W3 C5 O7 D- H
   */3 s$ {; F6 J- j. I( Y
$ s9 l" m' e2 r; l* m8 x
   // Add plugin code here...
  c! z: e; w- s4 R: N; O: R4 @- I) f   ```
3 E# F. d; S. D) V, p' m2 o+ z* J/ J5 H' B. K3 A$ S  ~
   在示例中,我们创建了一个名为 `Site Wide Notices Plugin` 的新插件,该插件添加了一个新的自定义文章类型,并指定了版本、作者和作者 URI 等元信息。
9 P/ A% T' q$ S. D$ L/ P% ]1 o; ^; b' [
2. 在插件中注册新的文章类型:在 PHP 文件中添加以下代码,用于注册一个名为“site-wide-notices”的自定义文章类型:
3 n6 j1 r5 M, P  c  W. s& ~+ H
3 \5 q. p& l8 b8 M$ g   ```
2 J; m! P2 L! G( c  [% c! J# A. C% y   add_action('init', 'create_custom_post_type');
- G7 i7 W; s7 h' H. ~8 u   function create_custom_post_type() {
: g0 `) D" Z( t$ M( M8 D      $labels = array(
$ k7 H3 @1 |; ^! w          'name' => 'Site Wide Notices',% ?7 h; i- u1 Z" t; V
          'singular_name' => 'Site Wide Notice',9 ]. i- H. t- m/ N6 j& b% R" C* G
          'add_new' => 'Add New',. a' q# E4 y4 I" Y) U, R' M
          'add_new_item' => 'Add New Site Wide Notice',/ N3 k; B) l! e  {8 b! @2 l
          'edit_item' => 'Edit Site Wide Notice',( l& N% f1 z4 J8 t  S) Z2 X
          'new_item' => 'New Site Wide Notice',& k7 W. [: J, n
          'view_item' => 'View Site Wide Notice',5 ?9 O, L& D8 G9 @; {
          'search_items' => 'Search Site Wide Notices',
4 ~; G/ X- H( N& u* N3 ^1 k0 _          'not_found' => 'No site-wide notices found',/ `( {) g# Y: W  T( u
          'not_found_in_trash' => 'No site-wide notices found in trash'
- V+ g5 {  G! v      );
, }3 ?$ I( v' a) }- d% K# C
$ O5 y' h) Z; q' e: ^$ O      $args = array(8 x  v) G- H% ^
          'labels' => $labels,
& n, m! z/ @" M          'public' => true,0 K4 w2 S0 S5 z" D
          'has_archive' => true,
6 Q4 [8 o& c& G. P9 v9 k          'supports' => array('title', 'editor', 'thumbnail', 'excerpt', 'custom-fields', 'revisions'),& M" O" I  |' ~" a5 ~
          'taxonomies' => array('category', 'post_tag'),
# U4 ]# X& ?8 \6 t/ U- c$ g: I' Q          'menu_icon' => 'dashicons-megaphone',( O& S( n  S" @# g4 H( k: Z% ?
          'menu_position' => 5,
2 N1 i- @. F7 [1 Z/ l% j$ h; Q9 M          'rewrite' => array('slug' => 'site-wide-notices')& @' {  @/ e7 ?$ p1 i, x# I3 D
      );7 q: q) y. |: Z! A% A) S& M. P

3 e2 i1 F5 f. Q6 q' J      register_post_type('site-wide-notices', $args);
* f5 \5 o( c# k7 S) G: A- N   }
' N' B% f1 N4 u( M  O% b* D  r# M   ```. ~- x: W0 @9 s$ ?4 g. f* n1 J
/ p7 y1 p. S) K: M) s
   在示例中,我们使用 `register_post_type()` 函数注册一个新的文章类型,并定义了该文章类型的名称、标签和其他设置。
% k- g4 O/ ~1 t/ a, d# p7 N5 j$ K! I, n7 [. G
3. 在后台中添加公告编辑页面:您可以使用 `add_meta_box()` 函数在后台中添加公告编辑页面,并自定义字段和元数据,例如:
2 ?9 x) R$ U: F/ y( k
9 d* ?+ v6 I9 I$ Z/ l   ```6 W! g! `& k3 _
   add_action('add_meta_boxes', 'add_site_wide_notices_boxes');
+ l' }7 U4 ~* ^2 L2 q   function add_site_wide_notices_boxes() {
# K+ q% ^2 P, i- }/ E$ A      add_meta_box('notice-details', 'Notice Details', 'notice_details_meta_box', 'site-wide-notices', 'normal', 'high');' y- {# ?/ b8 Y1 E6 Y' g* |3 p+ o1 [! B
   }$ A; Y6 @: \# I; ~/ V
: C& F9 d$ ~8 Y& [* ^
   function notice_details_meta_box($post) {
1 F' d% d) G; @: u2 U3 ~' s9 N3 n      wp_nonce_field(basename(__FILE__), 'notices_nonce');) X! t9 S, z, {3 x- O
      $notice_title = get_post_meta($post->ID, 'notice_title', true);
) w. f  U! J. {$ h6 V      $notice_content = get_post_meta($post->ID, 'notice_content', true);% O6 m: L6 Z, ~2 f( ]. w8 e
      ?>
. L7 _) ]- f* I( [9 u3 t      <p>
! Q9 D  v' y" u6 Z# D8 s5 A! l0 u  K          <label for="notice-title">Notice Title</label><br>: b, O' q" Y' Z* h/ _9 s  f
          <input type="text" id="notice-title" name="notice_title" style="width: 100%;" value="<?php echo $notice_title; ?>">& ~% n- R) f6 T/ P  @2 H
      </p>5 O5 S& f$ S: Z( z' D
      <p>7 }8 p. ~/ k1 x: x7 C
          <label for="notice-content">Notice Content</label><br>  i) x, p  N' _4 M
          <?php wp_editor($notice_content, 'notice-content', array('textarea_rows' => 10)); ?>
# H8 i/ D3 X: G' z! G( ]      </p>
5 Z1 L2 B3 L' i' O      <?php
) T! O8 `7 h- @1 `7 ]- D   }3 }# ~* d# u. J: m& l( w
$ S1 m( ~! r* d" _% p2 Y* h" [
   add_action('save_post', 'save_site_wide_notice_meta_box');
3 _7 Q# d* M! x0 j; V7 v  d4 y   function save_site_wide_notice_meta_box($post_id) {
. _8 G. |+ x" ]- {; }      if (!isset($_POST['notices_nonce']) || !wp_verify_nonce($_POST['notices_nonce'], basename(__FILE__)))6 |8 y4 A% ]/ t1 G/ r
         return;2 ~) a' h! @9 P4 m
      if (defined('DOING_AUTOSAVE') && DOING_AUTOSAVE)
1 \* a6 u! x, @! z8 Y' @0 M$ O         return;
, J1 F. a7 c/ r7 u
8 f: V8 S7 Y3 C  d0 N, v      if (isset($_POST['notice_title'])) {
9 }* q( p! h! l: A          update_post_meta($post_id, 'notice_title', sanitize_text_field($_POST['notice_title']));+ L# i: f# M( b: I
      }
: ^$ \( H9 D1 p6 X      if (isset($_POST['notice_content'])) {- ^# N9 c- i# \  @% S# X* F% V
          update_post_meta($post_id, 'notice_content', wp_kses_post($_POST['notice_content']));
' v5 m' |; D9 O% l6 d      }
2 J) Y% R1 }3 P5 V- M$ [2 D   }. h' d. p, n5 z  ~: j7 ?
   ```4 I& a4 c& F: Q- _# s

; m. @8 I- _8 y: `   在示例中,我们使用 `add_meta_box()` 函数添加了一个名为 `notice-details` 的元框,用于在编辑页面上显示自定义字段和元数据。在 `notice-details_meta_box()` 函数中,我们使用 `wp_editor()` 函数添加了一个可视化编辑器,用于编辑公告内容。在 `save_site_wide_notice_meta_box()` 函数中,我们使用 `update_post_meta()` 函数将公告标题和内容保存到 WordPress 数据库中。- C( W. L* i5 t9 i! s2 V; H
! f8 X4 K1 q) X- b3 f  C
4. 在前端页面中显示公告:在 WordPress 主题文件中添加以下代码,以在您的网站上显示公告:; k# ~& u8 L! L& g
, V( c9 ]+ z# s6 C0 k% B  }& o
   ```
* D7 A7 _9 x9 b4 z   $args = array($ P4 N2 r0 B+ b" L: ~2 g" n
      'post_type' => 'site-wide-notices',
8 {7 ?+ ?  E# T      'posts_per_page' => 3,
$ S5 j, y. {) m; A" _      'order' => 'DESC',
5 B9 q0 {, A7 I3 M* ?" k! T      'orderby' => 'date'5 ?: r) s& ^# ^! v! Z; \7 S2 \
   );3 j% ?) ]! V4 C
   $query = new WP_Query($args);; v: }$ N) I# [6 c+ Z' p% h' R/ |
   if ($query->have_posts()) :) l8 H- M( @; n, V+ O, N
      while ($query->have_posts()) : $query->the_post(); ?>( E* \0 l; n1 b# e
          <div class="notice">
9 I& ?' c( `5 u! [              <h3><?php the_title(); ?></h3>
2 L; z& n! b; O& p# z; f* \+ U  |# A* V              <div class="notice-content"><?php the_content(); ?></div>( I( J- ~0 }6 E6 _* m+ G
          </div>' s8 e; Q& c7 w# B
      <?php endwhile;
: n1 b5 R" K$ }% [9 \# u! l" M, K      wp_reset_postdata();
5 O7 A2 d8 S$ q$ W   endif;& ]$ _/ V) o! m9 ?
   ```- K5 O! l9 h- V7 A) v4 d- g: t4 t
0 A. ~) m* Z3 Q0 D. \4 C. e
   在示例中,我们使用 `WP_Query` 类从 `site-wide-notices` 文章类型中获取最近发布的 3 条公告,并在前端页面中循环遍历并显示标题和内容等信息。
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-11-26 23:58 , Processed in 0.071311 second(s), 3 queries , Redis On.

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

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