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

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

[复制链接]

328

主题

502

回帖

3274

积分

管理员

积分
3274
QQ
发表于 2023-5-18 08:34:20 来自手机 | 显示全部楼层 |阅读模式
您可以使用以下方法来快速在 WordPress 后台增加一个全站公告的功能:7 T# u* Q8 z. K$ P. z& x; I

' m+ w: @* C  H1. 在 WordPress 插件库中寻找可用的公告插件,例如 WP Notification Bars、Announcements、SSP Elegant Notification Bar 等。
4 J: e/ G7 i! P  y% z! L4 ~% }, Q
2. 安装并激活您选择的插件。您可以在 WordPress 后台的「插件」->「添加新插件」界面中搜索并安装插件,然后在「插件」->「已安装插件」界面中激活它。
& b- Q0 t& c5 u- K( G- j# t; l5 E4 d, m
3. 在插件的设置页面中配置您的公告内容和样式。不同插件的设置选项和功能可能会有所不同,但通常都允许您定义公告的文本、链接、颜色、位置等。7 H9 ~; g2 e, ]" f) ]
# Y. k1 p9 R6 ?
4. 将公告添加到您的网站上。在插件设置页面中完成公告的设置后,您可以通过编辑 WordPress 主题的代码或使用插件提供的方法将公告添加到您的网站中。不同插件可能使用不同的添加方法,具体请查看详细说明或联系插件作者。! Z# s8 T, N! v6 z. X

; m- z: T" v* Z4 Y- k9 @注意,如果您使用的 WordPress 主题已经包含了公告功能,或使用了其他公告插件,可能会导致冲突或功能重复。如果您遇到了这样的问题,请查看主题文档或联系主题作者以获取解决方案。
回复

使用道具 举报

328

主题

502

回帖

3274

积分

管理员

积分
3274
QQ
 楼主| 发表于 2023-5-18 08:34:51 来自手机 | 显示全部楼层
如果是自己开发的话,具体要怎么做?; i7 ?9 ]& ~9 M3 [$ m
: S, }' w1 Y3 W& U. M( |  s
如果您自己开发 WordPress 主题或插件,并且需要在后台中增加一个发布全站公告的功能,可以按照以下步骤操作:% r8 W" I/ U1 x9 e! L

, ?2 A, a4 `9 M* [1. 创建一个自定义的 WordPress 后台页面。您可以使用 `add_menu_page()` 或 `add_submenu_page()` 函数来创建一个自定义后台页面,例如:& o: U  k3 S7 `# B

9 _$ P6 T4 G: i+ m, \0 E# D" @   ```
& P6 u2 f4 v/ Y   add_menu_page(  i( t  @# D9 a5 ]2 j
       '全站公告',/ N* w* i; U7 f+ v
       '全站公告',) X! {9 X! d: S" l- ~3 V4 z
       'manage_options', //需要的用户权限1 L; H( g; ?' s& C( [9 A! J
       'site-wide-notice', //后台页面的 slug
2 f2 ]( b! l. x% d4 e9 k       'render_site_wide_notice_page', //用于渲染后台页面内容的函数
  {# x; o3 V2 I8 u: R2 t2 o       'dashicons-megaphone', //用于显示在菜单中的图标9 d, ~) H+ e; F% Q* y$ Q
       30 //菜单项的位置
+ I" D2 v& n0 x( D: J( k" \   );
0 T2 Z$ a4 E$ ~. i   ```0 p9 F0 W7 }8 x5 p

, S0 @3 H5 I: D   在该示例中,我们使用 `add_menu_page()` 函数来创建了一个名为“全站公告”的菜单项,并指定需要的用户权限(`manage_options`),在后台页面的 slug 为 `site-wide-notice`,用于渲染后台页面内容的函数为 `render_site_wide_notice_page`,在菜单中显示的图标为 `dashicons-megaphone`,菜单项的位置为 30。2 h3 V# |  q7 ]" |" Z. n: r

8 Y) z; i5 D- H% @+ K! g% T2. 编写用于显示和保存全站公告内容的代码。您可以在自定义后台页面中创建一个表单,让用户输入公告的标题、内容等信息,并将这些信息保存到 WordPress 数据库中的某个表中。例如:1 n5 i( L# h" x  p$ E" p# C6 B. _
5 w( r/ n' p- M
   ```
2 R: g4 A  ^/ b  y" ]   function render_site_wide_notice_page() {
8 ?/ w1 J$ H7 N0 L      // 渲染后台页面内容- p& I. `, W3 L" O6 \9 X" V
      echo '<div class="wrap">$ h+ U. P) q) ~. I. M
          <h2>全站公告</h2>( ~$ X) W0 d3 V  m
          <form method="post" action="">+ e' N. g- @4 u4 w) Q* n
              <label for="title">公告标题:</label>
& u3 m" r5 H0 _              <input type="text" name="title" value="'.get_option('site_wide_notice_title').'"><br><br>
. _+ q2 d) ?' ]3 o1 S' l              <label for="content">公告内容:</label>- q: X) M9 x2 r2 F. y
              <textarea name="content">'.get_option('site_wide_notice_content').'</textarea><br><br>8 d4 A' w  Y8 g5 s5 t
              <input type="submit" name="submit" value="保存设置">
- Y1 n' P+ o- _# L& ~          </form>
8 L; I. r+ R1 V      </div>';/ [$ r* P7 p2 j: H( f: ^

" l4 G2 M" ^. c% V      // 处理表单数据& j8 d  N0 J5 Q, N
      if (isset($_POST['submit'])) {6 @- l7 |# ^- q9 J0 r* b& Z8 x8 \7 g
          update_option('site_wide_notice_title', sanitize_text_field($_POST['title']));
5 J$ o! Y3 ^  {          update_option('site_wide_notice_content', sanitize_text_field($_POST['content']));  V2 m# d, j8 r5 [1 Y. {' T" ~
      }
1 |0 I! a: T+ c/ t) E1 T( w   }2 L- b. B) U5 t2 Q
   ```; [# N  n; w$ n0 B3 _* ^4 f1 w
$ u' q0 M4 d$ W: l4 @- G3 S4 y
   在该示例中,我们创建了一个表单,让用户输入公告的标题和内容,并使用 `update_option()` 函数将这些数据保存到名为 `site_wide_notice_title` 和 `site_wide_notice_content` 的 WordPress 配置项中。如果用户点击提交按钮,则将表单数据更新到配置项。" r" s) ^: G* }" k; v5 s
5 x, D" J5 N0 n  a% Q
3. 在 WordPress 主题中显示全站公告。您可以通过在 WordPress 主题的 `header.php` 文件中添加代码,将公告内容显示在网站的顶部或其他位置。例如:9 j; \  W6 l( I! N+ f! e

- }$ ?# X; L  ?) f- H   ```
6 [3 w  t& u/ T- V5 {   <?php) m& m/ j5 x- h9 r4 B6 n$ ?  `1 ^) Q
   $site_wide_notice_title = get_option('site_wide_notice_title');
1 _$ m6 z! {/ ^1 g% |9 Z, W   $site_wide_notice_content = get_option('site_wide_notice_content');1 S+ a" P1 b$ @/ H( f4 `! j
   if (!empty($site_wide_notice_title) || !empty($site_wide_notice_content)) {2 Q$ w3 [: v0 s) t
       echo '<div class="site-wide-notice">';. s& n9 G( d# z" H) o+ v7 M4 M  J7 e
       if (!empty($site_wide_notice_title)) {! W6 K( [: N1 w  ~# p
           echo '<h3>'.$site_wide_notice_title.'</h3>';1 s. ?# Y& `) r, B: C
       }
; Z- [+ d/ Q4 @1 ~; R4 x3 `       if (!empty($site_wide_notice_content)) {
! S2 T+ o; b) A+ B% y4 y/ Y           echo '<p>'.$site_wide_notice_content.'</p>';) r6 Z4 s, G' }2 X) w" F6 O+ f
       }
4 X* A6 z( @2 j$ E2 _       echo '</div>';
( v  F4 o- Z! Y! L   }4 e- l/ f% w# m" A& X
   ?>
- q, a9 |/ t$ c  ]+ {- l% @   ```
1 T# q+ B; D# t% l3 e& D+ _' ^6 r: M+ d% l7 o; n# X: i# Z. v
   在该示例中,我们检查 WordPress 配置项中名为 `site_wide_notice_title` 和 `site_wide_notice_content` 的值是否为空,如果不为空,则在 `header.php` 文件中添加一个名为 `site-wide-notice` 的容器,将公告标题和内容显示在其中。
2 j) z9 y3 a  I" M& _" i3 Q7 ^- I6 G+ H8 I. [' x" A8 v' [; y' g
请注意,本示例仅提供了一个框架,具体实现可能会根据您的需求和实际情况有所不同,您需要根据自己的需要进行修改和调整。同时,为了确保安全性,您还会需要对用户输入的数据进行适当的验证和过滤,例如使用 `sanitize_text_field()` 函数来过滤表单数据。
回复

使用道具 举报

328

主题

502

回帖

3274

积分

管理员

积分
3274
QQ
 楼主| 发表于 2023-5-18 09:26:50 来自手机 | 显示全部楼层
那如果需要发布多条公告,并进行管理,要如何实现?
* G" V; r+ S# a" J+ d( V- u% _$ @) D, o
您可以创建一个自定义的 WordPress文章类型,例如“公告”,并对其进行自定义化,以实现发布多条公告并进行管理的功能。以下是具体步骤:
( L: _6 V3 m4 E, u/ E! i
3 b- q5 [4 I- G3 ]2 }2 p, f6 }1. 创建一个自定义的文章类型:在你的主题 `functions.php` 文件中,添加以下代码:9 W) E: L- d9 l) |' Y
+ y7 T" r2 l% ]
```* c  y# |. ]  r9 l
function create_custom_post_type() {
% _& [/ q! _5 T0 @0 i1 i$ G    $args = array(" h( {  D6 Y. c) F
        'labels' => array(; C' W" x) r, w* e
            'name' => '公告',
% `" {# ^5 u  k; \1 ?' T% {            'singular_name' => '公告'0 ~. V9 ^5 z$ [2 j# o& E/ J
        ),
6 a4 C% H: ^4 [' J; r        'public' => true,
6 w- }3 D5 P8 N* `" w; M5 U        'has_archive' => true,3 Z" g! t( ~! O
        'supports' => array('title', 'editor', 'thumbnail', 'excerpt', 'custom-fields', 'revisions'),3 Y" ^& z8 g8 {/ d) u
        'taxonomies' => array('category', 'post_tag'),( F  L9 l, Y% c
        'menu_icon' => 'dashicons-megaphone',
+ W& \6 }  Q+ t  J- |        'menu_position' => 5,
" V" ~2 z0 L9 r+ E        'rewrite' => array('slug' => 'site-wide-notices')$ ~( K$ i9 S) |9 F3 M" q
    );) w. e. Y) \6 z6 [$ L7 X
    register_post_type('site-wide-notices', $args);
5 J3 ?8 m6 t, U2 q}) S, H; A/ ]- N/ y2 K; b
add_action('init', 'create_custom_post_type');) ^- G' l! X3 |4 J0 U& G
```
# h. a6 ^( y; K  \9 n& I5 ^* p8 S
1 p- ?' P. D7 t+ Y在示例中,我们注册了一个名为 "site-wide-notices" 的新的文章类型,并定义了文章类型名称、缩略名、文章类型支持的功能、分类法、管理菜单图标等设置。
+ g3 y& @, K+ v% l% s% C
( l5 X( p3 d$ E2. 在你的 WordPress 后台中创建新文章类型“公告”:现在,你就可以在 WordPress 后台中通过导航到“公告”菜单,来添加、编辑或删除公告了。您可以在编辑公告的页面中添加标题、内容、特色图像或其他自定义的元数据字段。1 c' z/ u/ \+ m, w

+ n" u4 n: g0 p" T# x% W3. 在主题中显示公告:在您的 WordPress 主题文件中添加以下代码,以在您的网站上显示公告:7 f* ^& Y$ G, ~8 Y

, Y5 p4 R! t4 P# X5 P, y7 w```
2 L9 ^, r/ n2 y* H$args = array(% N& S7 }9 W/ A; K* R, l
    'posts_per_page' => 3, // 显示的公告数量
% O" M9 L9 v, S3 M; I# I- }    'post_type' => 'site-wide-notices', // 公告文章类型- J- k. t3 K, S
    'post_status' => 'publish', // 公告状态( o- N. }8 `; v* f
    'order' => 'DESC' // 排序方式2 D% u. V. Q& A# O* z. M. i: z4 f
);
5 m- I9 R, ]! q- ^# ^, V4 F
, }( L2 ~6 J. q$ V$notices = new WP_Query($args);, v5 u- z" y: y3 v0 i
if ($notices->have_posts()) :
3 E# Y) {, n0 J9 k% H, g    while ($notices->have_posts()) : $notices->the_post(); ?>7 V+ }$ g, V- w3 Z
        <div class="notice">9 |3 \+ Z+ [! [% M6 c) W
            <h3><?php the_title(); ?></h3>$ M# |2 V  H! E
            <div class="notice-content"><?php the_content(); ?></div>
% {$ T& T+ J0 B. g        </div>
- |3 E+ @9 _5 e4 D8 ]  s    <?php endwhile;3 l7 x1 H4 }& w' f0 E/ e
else :
) U$ e: t6 v2 d2 h    echo "暂无公告";
# P, T) W5 L$ q9 z% B+ mendif;& V# V6 H, q' r5 p2 i7 q1 a
wp_reset_query();
8 S" v( H6 l  m1 Q6 K, ````
3 X3 f+ ]) [; ]" e7 G
( I% h! a6 H! m& H4 c7 O这段代码将使用 WordPress 的 `WP_Query` 类从公告文章类型中获取最新发布的 3 条公告,并在前端页面中循环遍历并显示公告标题和内容等信息。5 @3 |. w8 k  g7 S, ^& [
% c, P( r2 ^$ p/ S- v# w
以上便是实现 Wordpress 后台发布多条全站公告的基本步骤。需要注意的是,自定义文章类型可对应多篇文章,具体根据您的需求进行调整。
回复

使用道具 举报

328

主题

502

回帖

3274

积分

管理员

积分
3274
QQ
 楼主| 发表于 2023-5-18 09:27:55 来自手机 | 显示全部楼层
如果不想修改functions.php,有其他更好的办法吗?
+ p% X/ [3 E- |( h# o* _0 z. E# n' z! G) i: a& s' f9 m
如果您不想修改主题 `functions.php` 文件,也可以创建一个自定义插件来添加新的文章类型。
& t3 v, O" {% {- E5 P; X& J: I. m" k( Z$ o# p
以下是创建自定义插件的步骤:( ~, u6 p9 u( ?2 h

  }, S9 V, {& h5 G+ R+ }# E% O- V1. 创建新插件:在 WordPress 插件目录中创建一个新的子目录,例如 `site-wide-notices-plugin`,然后在该目录中创建一个新的 PHP 文件,例如 `site-wide-notices-plugin.php`,并在文件头部添加必需的标记,例如:
' b- q; b3 J) ?7 p0 C/ q2 e# s+ |0 S! H. i" F9 l5 P
   ```
) r# ~- {9 ^' i6 |$ C. i3 |; X0 u$ w   <?php5 V- l% d+ a3 ]+ O8 k$ e; W3 F
   /*  S3 \+ \9 Y' l  Y1 O7 s( a- ?' n
   Plugin Name: Site Wide Notices Plugin$ F' B1 o1 f+ z/ m) E9 v; b% U
   Description: Adds a new custom post type for site-wide notices.
3 ?" O; Y1 x. d3 j5 S   Version: 1.0
" d! C8 a0 N$ p# _' d: w   Author: Your Name, y2 D) F4 Z" {, n
   Author URI: http://example.com6 {3 y. u- `7 _1 K' v5 h
   */
' T/ N; D5 G5 ?) i( l: U" M/ a# ?1 U. ^; o
   // Add plugin code here...
  ~. H4 y+ c, u; c- c9 R% j   ```
) g! ?1 x* m! h) j4 C5 w. M, v7 {' J0 r
   在示例中,我们创建了一个名为 `Site Wide Notices Plugin` 的新插件,该插件添加了一个新的自定义文章类型,并指定了版本、作者和作者 URI 等元信息。
% A, H5 j& O6 Z: }! A( c3 y/ h! \# c1 e" b/ E) w1 j( d
2. 在插件中注册新的文章类型:在 PHP 文件中添加以下代码,用于注册一个名为“site-wide-notices”的自定义文章类型:, z& D- p# I" k# D/ U

$ r8 I# C: f2 K: W) J$ ~   ```7 [( |1 ~: z, R! @% r. d) O: ?, r( d
   add_action('init', 'create_custom_post_type');% y! {* Z. r3 N& ]: v" T
   function create_custom_post_type() {
9 X+ T6 t4 y/ ~  L      $labels = array(3 H* R9 k5 Q8 ?5 c$ d4 N4 `& [
          'name' => 'Site Wide Notices',
( x+ `5 c8 t& n8 t9 v6 g          'singular_name' => 'Site Wide Notice',- \4 ]2 k- `: L* k
          'add_new' => 'Add New',8 p7 L: g3 |+ V) t, a
          'add_new_item' => 'Add New Site Wide Notice',- J: x8 b8 ?) S$ Q6 L
          'edit_item' => 'Edit Site Wide Notice',6 ^; |( n* K2 z- [6 |6 t
          'new_item' => 'New Site Wide Notice',+ f5 i9 B/ N4 x
          'view_item' => 'View Site Wide Notice',
8 u8 O( s4 Q5 `$ J          'search_items' => 'Search Site Wide Notices',- q0 g$ _1 c4 l! l& }% C
          'not_found' => 'No site-wide notices found',
5 ^+ H, I! B+ K7 `/ }          'not_found_in_trash' => 'No site-wide notices found in trash'
. G1 n% ]# w  _# h+ S: q      );
5 I( Q* C) V3 u; V8 E1 r
! q8 C+ b; I7 A      $args = array(/ j/ T9 H8 ?; [1 R- t
          'labels' => $labels,) W& m- D! T+ Y3 f  C7 `$ ?  _
          'public' => true,- U: _% Z( D$ t/ W- \6 f4 A/ E
          'has_archive' => true,# ?1 }  |8 s) T) I
          'supports' => array('title', 'editor', 'thumbnail', 'excerpt', 'custom-fields', 'revisions'),# r& R6 T  _$ x/ G$ s
          'taxonomies' => array('category', 'post_tag'),
/ ^. D8 j. K3 X          'menu_icon' => 'dashicons-megaphone',
$ u  X( y% d7 @2 G" j: @/ d          'menu_position' => 5,4 v; ?) M$ o  M
          'rewrite' => array('slug' => 'site-wide-notices')
; B4 W& d: S2 {. C      );
) M# N; l  q" x" l, o) {% {
# D5 ~! e, V5 U7 y" s! I3 b6 f      register_post_type('site-wide-notices', $args);
; ]: ~7 {* @5 t$ h: T4 N   }
, E8 ?& q! X5 e' v* w; p" J" z   ```
5 J8 ]3 m7 o; P1 T; S) v  Y' k& a5 j1 S8 ~9 w+ r
   在示例中,我们使用 `register_post_type()` 函数注册一个新的文章类型,并定义了该文章类型的名称、标签和其他设置。
' {# c% P  m) m6 C# f" I4 N8 J* Z* d! ~, T0 g% f! O) a
3. 在后台中添加公告编辑页面:您可以使用 `add_meta_box()` 函数在后台中添加公告编辑页面,并自定义字段和元数据,例如:
, Y# I4 D& b' i  }# _; `) ~6 d" i9 z% W* a+ b  y# k9 Y, c7 S* W0 z5 ~
   ```3 ^7 @/ p1 i5 G) ]2 b
   add_action('add_meta_boxes', 'add_site_wide_notices_boxes');1 j! A( a: t. ~5 z. }
   function add_site_wide_notices_boxes() {
, {& p. B1 f6 O# x      add_meta_box('notice-details', 'Notice Details', 'notice_details_meta_box', 'site-wide-notices', 'normal', 'high');' o& n8 P' W; D; n
   }4 ^! U$ z/ E) V; |6 o

2 r+ i# D$ x7 p! q. a# S   function notice_details_meta_box($post) {
, ]6 j+ C# `" C. `1 i9 G      wp_nonce_field(basename(__FILE__), 'notices_nonce');
2 Q+ d: X% a8 `+ N' p4 U3 W' ]- A      $notice_title = get_post_meta($post->ID, 'notice_title', true);7 T" ^5 a) H" Z0 [  X' J) t
      $notice_content = get_post_meta($post->ID, 'notice_content', true);% U$ \& }& w) q7 N
      ?>
& U' r! Y" G4 @1 f      <p>
( _6 X/ _( _6 }$ {( a; B2 Z. P0 C! z* F          <label for="notice-title">Notice Title</label><br>+ E8 A5 l+ M! u" c
          <input type="text" id="notice-title" name="notice_title" style="width: 100%;" value="<?php echo $notice_title; ?>">
0 r: c- W5 v& ]      </p>
% {& ?' R1 h6 F% k! }6 M6 V+ m      <p>7 m6 `: t4 i5 n( U( n
          <label for="notice-content">Notice Content</label><br>
% T" G( @- F) ?2 n+ B: l' g- C          <?php wp_editor($notice_content, 'notice-content', array('textarea_rows' => 10)); ?>
' ~+ p1 b. q- @3 H2 ]      </p>
- h% Y$ f4 i+ M% ]" M      <?php7 j7 \+ Q4 m+ n' ^/ z! K) m3 i
   }% q; Y% X" B2 e/ x
: T) \; w: t% ^8 `
   add_action('save_post', 'save_site_wide_notice_meta_box');
9 R5 G- L# c& w( |( u" O   function save_site_wide_notice_meta_box($post_id) {. y9 H2 e. R  T( p
      if (!isset($_POST['notices_nonce']) || !wp_verify_nonce($_POST['notices_nonce'], basename(__FILE__)))
! v+ k5 g* d% {* G         return;
* X7 x+ `# I( ]      if (defined('DOING_AUTOSAVE') && DOING_AUTOSAVE): f4 }: k: L! c& Z! B
         return;
. o* L; s$ M  w) |+ c" Z
4 m! ~. O' y- G3 `: p# i; `! m; w7 F      if (isset($_POST['notice_title'])) {
6 K$ y( v; z5 R% T: @4 x) o9 K          update_post_meta($post_id, 'notice_title', sanitize_text_field($_POST['notice_title']));
4 T" V+ ]/ S" z      }
- s8 B' I  L+ M4 W$ h      if (isset($_POST['notice_content'])) {0 E  P1 y" m3 X& d
          update_post_meta($post_id, 'notice_content', wp_kses_post($_POST['notice_content']));. R" F/ M2 G7 G; p/ S: N; p
      }! H1 r* y) _. i2 d) C' N0 ~
   }
% l  J% p7 x) |# B' v) o) ^3 _   ```
, M' Y' v- S; k# A" _$ K1 Z; j& Z& F  _& Y5 y) L
   在示例中,我们使用 `add_meta_box()` 函数添加了一个名为 `notice-details` 的元框,用于在编辑页面上显示自定义字段和元数据。在 `notice-details_meta_box()` 函数中,我们使用 `wp_editor()` 函数添加了一个可视化编辑器,用于编辑公告内容。在 `save_site_wide_notice_meta_box()` 函数中,我们使用 `update_post_meta()` 函数将公告标题和内容保存到 WordPress 数据库中。
0 l$ d, J+ z. C9 ^/ B* B' g" y. ^( Z, z6 E7 m
4. 在前端页面中显示公告:在 WordPress 主题文件中添加以下代码,以在您的网站上显示公告:
3 d9 g+ W1 d9 x+ P; z9 T+ [. r1 x- W5 }& x8 s. v- V9 {. A
   ```
9 Y7 d+ B* r2 r! J' |! y  K: a6 N   $args = array(: a) n9 h. k. [
      'post_type' => 'site-wide-notices',4 p6 y3 v  q3 [& {; L
      'posts_per_page' => 3,
+ p/ R5 o0 d% x3 D1 w      'order' => 'DESC',* e. g4 L$ Z" C1 _, m: |
      'orderby' => 'date'7 Z* [2 V  M( i! K1 B0 L
   );% T/ F1 ~2 ?5 U4 Z" S; |5 ]" a' F
   $query = new WP_Query($args);3 t2 A9 g7 m' Y6 b- t5 M- F
   if ($query->have_posts()) :7 v! L  V; h. z9 i: r
      while ($query->have_posts()) : $query->the_post(); ?>  G8 p3 s" {- \/ L9 x
          <div class="notice">$ D% ?1 x3 T- S; A# x' \* U) H6 B7 w1 _
              <h3><?php the_title(); ?></h3>3 v* `) ~, Z$ a
              <div class="notice-content"><?php the_content(); ?></div>" [. E4 ?- g4 a0 d+ T
          </div>9 e" t9 ^6 s( v) Q$ V  N3 \
      <?php endwhile;# s: L7 X! v% }- z4 R7 a
      wp_reset_postdata();( `# f9 v( W  f$ C8 k6 J7 m+ V
   endif;
0 r/ N; ^( H' A" Z  m; z2 ?* g1 U   ```( H) k. }6 ]; D! W$ l8 I# J: `& |
! ~  p- G/ A, i3 a
   在示例中,我们使用 `WP_Query` 类从 `site-wide-notices` 文章类型中获取最近发布的 3 条公告,并在前端页面中循环遍历并显示标题和内容等信息。
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-10-17 22:26 , Processed in 0.084620 second(s), 4 queries , Redis On.

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

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