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

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

[复制链接]

347

主题

565

回帖

3685

积分

管理员

积分
3685
QQ
发表于 2023-5-18 08:34:20 来自手机 | 显示全部楼层 |阅读模式
您可以使用以下方法来快速在 WordPress 后台增加一个全站公告的功能:  I0 ?  r1 I5 ?5 @
- J; I! A- v2 L
1. 在 WordPress 插件库中寻找可用的公告插件,例如 WP Notification Bars、Announcements、SSP Elegant Notification Bar 等。
- _2 [: k( A  {& P6 Z$ t) ^. \5 `/ s* j- ]: E, r, c! l
2. 安装并激活您选择的插件。您可以在 WordPress 后台的「插件」->「添加新插件」界面中搜索并安装插件,然后在「插件」->「已安装插件」界面中激活它。6 ?& a  n2 w# X% P
5 |! t' N' K) z
3. 在插件的设置页面中配置您的公告内容和样式。不同插件的设置选项和功能可能会有所不同,但通常都允许您定义公告的文本、链接、颜色、位置等。
* ]: D0 F/ T; x* p/ u. y, ]1 X. f; H5 q
4. 将公告添加到您的网站上。在插件设置页面中完成公告的设置后,您可以通过编辑 WordPress 主题的代码或使用插件提供的方法将公告添加到您的网站中。不同插件可能使用不同的添加方法,具体请查看详细说明或联系插件作者。" M0 }3 I+ _" D* A: v2 \  J3 r
/ {  e: x, f0 R3 O% L1 V: e
注意,如果您使用的 WordPress 主题已经包含了公告功能,或使用了其他公告插件,可能会导致冲突或功能重复。如果您遇到了这样的问题,请查看主题文档或联系主题作者以获取解决方案。
回复

使用道具 举报

347

主题

565

回帖

3685

积分

管理员

积分
3685
QQ
 楼主| 发表于 2023-5-18 08:34:51 来自手机 | 显示全部楼层
如果是自己开发的话,具体要怎么做?, P$ |' O; V# L7 }# j- U  m; f
' U" T! R  c' k4 S% M
如果您自己开发 WordPress 主题或插件,并且需要在后台中增加一个发布全站公告的功能,可以按照以下步骤操作:
) i* |! n! o( g  W9 y+ L! o  i9 A/ |6 L5 I* V, U$ e& L
1. 创建一个自定义的 WordPress 后台页面。您可以使用 `add_menu_page()` 或 `add_submenu_page()` 函数来创建一个自定义后台页面,例如:
/ L, s8 I/ W# Y2 v0 U- |. m' s2 O- V2 \: @
   ```) ]; Q, }* X0 S" p' _; J: E
   add_menu_page(
2 |2 h: G3 i* b! P/ x: X- X       '全站公告',
7 [9 G/ J/ y2 C* i; P- D9 _. d       '全站公告',5 o1 s7 w# r" v, r% p
       'manage_options', //需要的用户权限
8 W2 [5 M- G" E; g! k8 d  y' N       'site-wide-notice', //后台页面的 slug
: d& p1 Y: ?. f" r7 _( j       'render_site_wide_notice_page', //用于渲染后台页面内容的函数
$ @( _3 O6 x. ~* j- @* F7 s       'dashicons-megaphone', //用于显示在菜单中的图标
, o/ r9 g! P, `4 ]' b; ?       30 //菜单项的位置$ q) ]6 R# D/ M  ~) h- o
   );( U4 l. r( ^; E- z. K8 ]
   ```* I) @; k+ F6 n; a( S0 Q, A. ?

! b; |1 Z7 b" j   在该示例中,我们使用 `add_menu_page()` 函数来创建了一个名为“全站公告”的菜单项,并指定需要的用户权限(`manage_options`),在后台页面的 slug 为 `site-wide-notice`,用于渲染后台页面内容的函数为 `render_site_wide_notice_page`,在菜单中显示的图标为 `dashicons-megaphone`,菜单项的位置为 30。* q$ L: |& Q/ G: {
; v# [6 A8 E! z* i6 ]/ H  t$ \+ \
2. 编写用于显示和保存全站公告内容的代码。您可以在自定义后台页面中创建一个表单,让用户输入公告的标题、内容等信息,并将这些信息保存到 WordPress 数据库中的某个表中。例如:
$ B, p/ e( F) Y
1 M# U! ^" t. G# r   ```5 U8 c' ?7 o9 s9 C+ d# J! ^
   function render_site_wide_notice_page() {
( F( m- k+ x# ~& Z. e: E5 F      // 渲染后台页面内容
# |# Z+ u2 {! O      echo '<div class="wrap">
' }; |( Z$ K& Z          <h2>全站公告</h2>
3 d4 u# D# `' p7 I# {" {' b" L          <form method="post" action="">0 a5 N( P1 G7 t' C( S, C
              <label for="title">公告标题:</label>
6 ]9 W! Y9 A  V              <input type="text" name="title" value="'.get_option('site_wide_notice_title').'"><br><br>
/ E- a0 W3 x9 L3 m9 O5 M              <label for="content">公告内容:</label>
7 c3 c! H2 P- q- c              <textarea name="content">'.get_option('site_wide_notice_content').'</textarea><br><br>& t/ A- M9 s" Z
              <input type="submit" name="submit" value="保存设置">3 Z9 ]% t- h+ q# D: Y7 j8 \
          </form>( T* f& r" B1 @5 |* n! [
      </div>';
4 Y: V$ N" g: L: V+ U& F- A7 H; h( z2 y( `+ o4 K
      // 处理表单数据
- ]8 M2 w+ |+ c) `+ z      if (isset($_POST['submit'])) {5 ~1 p1 i$ s( h' x
          update_option('site_wide_notice_title', sanitize_text_field($_POST['title']));
: M" r4 B( n% K6 H6 O. ]) E          update_option('site_wide_notice_content', sanitize_text_field($_POST['content']));
0 |( a% E  q1 s, I$ n' @      }+ |& r) _3 ~- T
   }- e. B2 G7 Y5 s* t
   ```
4 \) e/ O# h4 n& w( i" l# N, I% ?: Q  G
   在该示例中,我们创建了一个表单,让用户输入公告的标题和内容,并使用 `update_option()` 函数将这些数据保存到名为 `site_wide_notice_title` 和 `site_wide_notice_content` 的 WordPress 配置项中。如果用户点击提交按钮,则将表单数据更新到配置项。% @2 @5 `1 }  I1 [. P" {5 @
2 X5 z) p# }. f" v% z# @
3. 在 WordPress 主题中显示全站公告。您可以通过在 WordPress 主题的 `header.php` 文件中添加代码,将公告内容显示在网站的顶部或其他位置。例如:) U, L- a( |+ x$ R9 u  W

! N$ Q( S8 h1 I, ~0 Q   ```
. O( J+ m9 \5 N   <?php
" M- ~3 f, l: N4 z* i   $site_wide_notice_title = get_option('site_wide_notice_title');& `! ?) Z& S+ u( ?
   $site_wide_notice_content = get_option('site_wide_notice_content');% s4 n5 t3 y. G) M+ Z
   if (!empty($site_wide_notice_title) || !empty($site_wide_notice_content)) {
+ x, H  @0 J( M8 b# o$ b       echo '<div class="site-wide-notice">';' n4 j4 X! p& Y1 W
       if (!empty($site_wide_notice_title)) {2 P# {0 E, k1 D# E' ?# m+ j
           echo '<h3>'.$site_wide_notice_title.'</h3>';8 F( j1 o3 k' E6 Z& g% j
       }
9 U4 ]) f  q# t3 n       if (!empty($site_wide_notice_content)) {; d; B& P7 Y7 ~' I' Q
           echo '<p>'.$site_wide_notice_content.'</p>';5 M/ d7 _# t  g& U" Y/ h4 b5 l
       }
: p4 ^3 B: P5 B6 @# ~- {7 ^       echo '</div>';/ S5 e; c  n1 J; {& E
   }) L7 B  z0 a! d; L6 S3 i; H3 h8 o" V
   ?>
0 I; d7 l9 C4 C4 O/ L   ```
1 E7 R+ ]; D! R; P! g0 s* D# i. I" k2 S
   在该示例中,我们检查 WordPress 配置项中名为 `site_wide_notice_title` 和 `site_wide_notice_content` 的值是否为空,如果不为空,则在 `header.php` 文件中添加一个名为 `site-wide-notice` 的容器,将公告标题和内容显示在其中。
5 A" f1 t. K0 C& N( J2 {. E2 }7 x/ q' u# l/ ^+ y1 F
请注意,本示例仅提供了一个框架,具体实现可能会根据您的需求和实际情况有所不同,您需要根据自己的需要进行修改和调整。同时,为了确保安全性,您还会需要对用户输入的数据进行适当的验证和过滤,例如使用 `sanitize_text_field()` 函数来过滤表单数据。
回复

使用道具 举报

347

主题

565

回帖

3685

积分

管理员

积分
3685
QQ
 楼主| 发表于 2023-5-18 09:26:50 来自手机 | 显示全部楼层
那如果需要发布多条公告,并进行管理,要如何实现?, |+ K& V' d5 i8 L" ?6 ~

2 q0 a' c* K) S/ l7 H$ V您可以创建一个自定义的 WordPress文章类型,例如“公告”,并对其进行自定义化,以实现发布多条公告并进行管理的功能。以下是具体步骤:0 e+ N2 R0 O2 |) j( A7 |
4 R- e: m( p' D8 {4 |1 u; I
1. 创建一个自定义的文章类型:在你的主题 `functions.php` 文件中,添加以下代码:+ E' z& d; S$ T/ R1 }

& D8 y9 P2 n! d( s) s. _0 y* [```
. b5 S$ s6 i2 N* C0 S4 @+ xfunction create_custom_post_type() {
* U8 t# A$ K& R/ b# V    $args = array(
5 J: T+ d6 J, e6 V: `# C        'labels' => array(3 f, c9 l6 Y9 S, A8 @8 Y* }
            'name' => '公告',/ H0 p" B. f5 s& ^+ E8 V  Z
            'singular_name' => '公告'
' L8 Q. {# j, J$ L% ]( \        ),. m, @& K2 S; J6 e0 E5 i
        'public' => true,
* N+ ~4 f/ P& Z1 {4 r9 c2 Q        'has_archive' => true,/ o" j3 v! h7 E* D( s$ y
        'supports' => array('title', 'editor', 'thumbnail', 'excerpt', 'custom-fields', 'revisions'),
8 \3 C" j# ]+ n        'taxonomies' => array('category', 'post_tag'),
. j/ C7 d) G! z0 _4 n8 |        'menu_icon' => 'dashicons-megaphone',
& C0 h( Q1 o/ Z5 O, m8 v: i        'menu_position' => 5,
' T7 m! E8 }4 j/ E0 o" X        'rewrite' => array('slug' => 'site-wide-notices')
% O1 n' v/ _$ e    );
9 Z- u, _% H% a4 j% Z    register_post_type('site-wide-notices', $args);7 t# `1 K7 |: W$ h3 w
}
/ w, J% \& G7 R) E! Badd_action('init', 'create_custom_post_type');  ?$ B( l! _( v! v0 d$ Z
```6 V- m9 K/ C2 Z& a2 o! C) f
* {" I% H# W) R
在示例中,我们注册了一个名为 "site-wide-notices" 的新的文章类型,并定义了文章类型名称、缩略名、文章类型支持的功能、分类法、管理菜单图标等设置。
1 D7 y* A0 R  t' B: @: [' ?0 w4 X# H  w
2. 在你的 WordPress 后台中创建新文章类型“公告”:现在,你就可以在 WordPress 后台中通过导航到“公告”菜单,来添加、编辑或删除公告了。您可以在编辑公告的页面中添加标题、内容、特色图像或其他自定义的元数据字段。; y) H# w" H. b# E( ~- v. t
/ b, G) D3 c) l! @& x
3. 在主题中显示公告:在您的 WordPress 主题文件中添加以下代码,以在您的网站上显示公告:
* R/ ?7 b) Z. Z, l' ^( |
+ I" d: m* o+ s; ~1 L```5 Z* |# D: h% w9 Q! L' G( P
$args = array(- m# L8 L# c. }; Z0 Q
    'posts_per_page' => 3, // 显示的公告数量5 T' m# E) O$ O# U3 F/ ^
    'post_type' => 'site-wide-notices', // 公告文章类型
) m5 i- h, c  d! P5 X( \5 P    'post_status' => 'publish', // 公告状态; s/ P% u8 G% d. c5 v8 W9 N
    'order' => 'DESC' // 排序方式
: {2 q$ w& S4 `7 @- J# X% z7 [);
& u! ~9 b$ _0 u# ]/ o6 z* l4 q1 {: F  A4 A" v1 {5 ~
$notices = new WP_Query($args);) w* O3 Q# y8 R: Y" y1 |
if ($notices->have_posts()) :: V1 d6 i+ W& z( I, A- I
    while ($notices->have_posts()) : $notices->the_post(); ?>( M' P6 {: i+ Q5 G
        <div class="notice">8 e7 f3 C% s9 ]$ e/ Z  t, {
            <h3><?php the_title(); ?></h3>) e2 c" J  S, A- H8 M+ n
            <div class="notice-content"><?php the_content(); ?></div>3 h* N3 j+ j0 U. C* [7 y( S
        </div>
  D0 A% x9 a0 S) ?% C7 X    <?php endwhile;
! O# ?7 w) j, s& H0 |/ Pelse :1 ]7 _& f; z0 c% I
    echo "暂无公告";. y! F# q1 W7 @, w1 c
endif;& d4 l' U0 i5 m+ P  V5 _
wp_reset_query();# V; Y& {1 o" e
```2 v8 v/ k$ N7 |8 Q- g
1 P, l( r2 |) I& i. `
这段代码将使用 WordPress 的 `WP_Query` 类从公告文章类型中获取最新发布的 3 条公告,并在前端页面中循环遍历并显示公告标题和内容等信息。
# @8 F* S; G& J3 ?* {3 ~. C) q, I) n+ W' O7 }0 j- y
以上便是实现 Wordpress 后台发布多条全站公告的基本步骤。需要注意的是,自定义文章类型可对应多篇文章,具体根据您的需求进行调整。
回复

使用道具 举报

347

主题

565

回帖

3685

积分

管理员

积分
3685
QQ
 楼主| 发表于 2023-5-18 09:27:55 来自手机 | 显示全部楼层
如果不想修改functions.php,有其他更好的办法吗?6 ?# S0 [! n4 t* x" F

$ A+ a8 H; h# m如果您不想修改主题 `functions.php` 文件,也可以创建一个自定义插件来添加新的文章类型。6 P- U0 t( M$ R' n" t. N

2 [6 z; K9 c# p1 k3 w6 S, J6 Z以下是创建自定义插件的步骤:
3 w- O6 d8 }$ |  V, q
9 C% M# T8 j7 Z2 X6 k1. 创建新插件:在 WordPress 插件目录中创建一个新的子目录,例如 `site-wide-notices-plugin`,然后在该目录中创建一个新的 PHP 文件,例如 `site-wide-notices-plugin.php`,并在文件头部添加必需的标记,例如:" v* ]9 N& A* Q1 W' g

" k: @( P' K3 S8 Z6 t   ```
6 t) Z, z, M) f5 W! z8 |: Y2 V; e. W   <?php# b( u# {( I$ B3 n1 n9 E, q- M
   /*
- j4 b7 \% C6 _& `% `   Plugin Name: Site Wide Notices Plugin
5 s3 P( c* [, r  k   Description: Adds a new custom post type for site-wide notices.) R; X* Z0 n0 U3 S: F9 E: B9 K- \
   Version: 1.0
, I  ~/ d9 S$ m/ w' k; W% [2 `7 _/ z   Author: Your Name( [* ?/ x9 I. h" L4 }
   Author URI: http://example.com( q( z. O  b5 ]4 s7 T
   */
7 Q$ G+ [* R7 N+ \( {1 n2 i( ]7 @8 Z1 n: t0 h9 K3 z% \
   // Add plugin code here...
6 j" P' N* V& c; ^* f! G   ```
" k/ F$ @6 ^/ D. ?# l9 [6 Y* O+ l
, N7 z3 Z' Q( X3 L. x  k! h& Q   在示例中,我们创建了一个名为 `Site Wide Notices Plugin` 的新插件,该插件添加了一个新的自定义文章类型,并指定了版本、作者和作者 URI 等元信息。
) F3 C% c/ W* @0 @
/ J; |. u  U; W* L$ |4 S2. 在插件中注册新的文章类型:在 PHP 文件中添加以下代码,用于注册一个名为“site-wide-notices”的自定义文章类型:
/ z, F, z( \  U2 G# Q
0 U/ K4 A$ K8 j1 Y' o   ```2 k# f9 D! C  K% A3 Y
   add_action('init', 'create_custom_post_type');
& \3 D1 i" u4 h9 M0 B, b   function create_custom_post_type() {
+ }$ y& ~& V. v. I      $labels = array(0 s6 I  F9 j8 h2 c
          'name' => 'Site Wide Notices',
: L# k3 F; w, k& d          'singular_name' => 'Site Wide Notice',4 @  C, n0 L+ U$ D& ]; b7 ?. @
          'add_new' => 'Add New',
% X* C; K& d( B) y: f1 |6 b          'add_new_item' => 'Add New Site Wide Notice',
' b: B- f( E5 T1 Q) O# M3 S: t          'edit_item' => 'Edit Site Wide Notice',
6 D( E; W+ L" [7 f) N% F0 l          'new_item' => 'New Site Wide Notice',
7 l2 F$ B1 Q) K- [( c          'view_item' => 'View Site Wide Notice',) _' J0 w' Q& q  N% V: O
          'search_items' => 'Search Site Wide Notices',: [1 c& @2 ~" i$ b
          'not_found' => 'No site-wide notices found',
+ X7 _% W2 \' D          'not_found_in_trash' => 'No site-wide notices found in trash'
7 U" r, m- _3 ~7 {5 u4 ]      );
# {' f" L3 c4 V& f& V* E
( m5 Z. _. u" U9 z0 M$ B, v      $args = array(# o' Y+ w! D* T% I$ }
          'labels' => $labels,
# ?6 ]7 [8 `* w; m2 M/ }          'public' => true,
9 I& w  }) C! P* G; }7 [          'has_archive' => true,
+ K  V& R3 j" s5 ?4 P          'supports' => array('title', 'editor', 'thumbnail', 'excerpt', 'custom-fields', 'revisions'),
( f) ?+ _8 a% r; h: G          'taxonomies' => array('category', 'post_tag'),' `& Q5 L( N/ U  M- g& _' m6 q
          'menu_icon' => 'dashicons-megaphone',. W7 p$ w) v& h4 t/ ]
          'menu_position' => 5,% i$ O# y/ `0 T- Q
          'rewrite' => array('slug' => 'site-wide-notices')
" K! W9 ~+ U6 v% f      );
) J# ?3 R; E% s+ F" d; w/ q( `# o& f+ F8 R& F3 P
      register_post_type('site-wide-notices', $args);0 j. ~2 e6 u; H2 b6 ^
   }8 W& \. D' F' K$ `3 a: i5 @
   ```
/ d0 R  g- ?+ V8 c% e, p' w$ r" M. R7 E
   在示例中,我们使用 `register_post_type()` 函数注册一个新的文章类型,并定义了该文章类型的名称、标签和其他设置。+ Q! c* x. p3 K9 L4 Z7 e
: a$ N- ]9 Y8 |2 m8 ], t
3. 在后台中添加公告编辑页面:您可以使用 `add_meta_box()` 函数在后台中添加公告编辑页面,并自定义字段和元数据,例如:
# j6 L, D3 `8 ]
" b* K' m. S( a2 v! N8 V   ```( J* h6 p) y' c' G
   add_action('add_meta_boxes', 'add_site_wide_notices_boxes');
1 s& B! |& e) B   function add_site_wide_notices_boxes() {- ^' }1 s0 o7 f$ G' U: N: ], N! t
      add_meta_box('notice-details', 'Notice Details', 'notice_details_meta_box', 'site-wide-notices', 'normal', 'high');
) l" _5 V# {) Y9 C   }3 X% G% j* e- M  x9 _! Y

, Z9 K  ~6 U/ q$ K4 j" c8 [+ ^   function notice_details_meta_box($post) {
9 r0 n6 I7 ^. y- b1 G* f      wp_nonce_field(basename(__FILE__), 'notices_nonce');
" P  N, x" Z5 e6 l4 |7 U9 v: C      $notice_title = get_post_meta($post->ID, 'notice_title', true);
0 r5 Q! P1 x' @5 L      $notice_content = get_post_meta($post->ID, 'notice_content', true);
3 y6 i/ X! I7 w1 x0 e      ?>
* L' ~* f5 [5 [      <p>
  |  F; b; z& i5 t* s3 r  q          <label for="notice-title">Notice Title</label><br>
& D+ q1 l+ o/ ^7 Z* \/ `8 g          <input type="text" id="notice-title" name="notice_title" style="width: 100%;" value="<?php echo $notice_title; ?>">
9 F2 P2 c7 x' k* R! i      </p>
+ w. S+ w: V1 i' [% v4 H9 g% r1 b$ L      <p>
; d) Y. Z, L. S4 ~          <label for="notice-content">Notice Content</label><br>
7 w: B6 K" j% W* X$ ]5 f  w) q          <?php wp_editor($notice_content, 'notice-content', array('textarea_rows' => 10)); ?>' z  }$ E4 W. o1 W+ ~0 Q% S
      </p>9 h' a: ^; V: n  v6 W
      <?php
2 v1 t+ p. S7 R. c   }2 v( @! W# c6 H$ P$ X: ]' Y

* L" b$ C0 T* q. t5 {/ ]   add_action('save_post', 'save_site_wide_notice_meta_box');
3 o4 H/ N1 j; o& u* |   function save_site_wide_notice_meta_box($post_id) {
& S' s) N1 g1 J! X      if (!isset($_POST['notices_nonce']) || !wp_verify_nonce($_POST['notices_nonce'], basename(__FILE__)))
, o8 ?# ]$ w7 L% c6 y* z( K) v         return;
( j$ z" c5 E1 U+ Y3 a: H+ I      if (defined('DOING_AUTOSAVE') && DOING_AUTOSAVE)* x: `! ?/ z, z* `! l6 W* }$ l
         return;
8 P. [! Z# l; u* _  p* z% L/ Q3 l& p9 T1 h; e/ ^
      if (isset($_POST['notice_title'])) {% w# Q1 ?; z6 G% |' y0 Y+ O
          update_post_meta($post_id, 'notice_title', sanitize_text_field($_POST['notice_title']));
* M9 ^3 Z" C- c0 f1 z7 J      }0 A. ^# Y1 J6 C' y( `; `% D
      if (isset($_POST['notice_content'])) {
/ j9 B2 {0 |. A4 j  ?; s& f          update_post_meta($post_id, 'notice_content', wp_kses_post($_POST['notice_content']));$ i* v" t2 Y& n3 w  J7 D8 }
      }
- s9 ^4 ]/ N5 e" y; S   }( {' o% F- k" Z# [6 ?
   ```5 [8 v: Q; n& u" R
. {1 |/ Y: i6 z% J
   在示例中,我们使用 `add_meta_box()` 函数添加了一个名为 `notice-details` 的元框,用于在编辑页面上显示自定义字段和元数据。在 `notice-details_meta_box()` 函数中,我们使用 `wp_editor()` 函数添加了一个可视化编辑器,用于编辑公告内容。在 `save_site_wide_notice_meta_box()` 函数中,我们使用 `update_post_meta()` 函数将公告标题和内容保存到 WordPress 数据库中。+ U# ^+ S5 f4 z( }$ J; `7 J

5 t% P$ L& a) d- U9 s0 W4. 在前端页面中显示公告:在 WordPress 主题文件中添加以下代码,以在您的网站上显示公告:7 E: Y) {5 E# r
4 l0 C* E7 i- m' }
   ```; g7 ^5 }5 J. O6 Y6 W, ^: z
   $args = array(
( C: I5 Z8 C+ P& s+ L6 A' m7 D      'post_type' => 'site-wide-notices',4 ~$ I' w5 M! G4 r
      'posts_per_page' => 3,
' w9 A6 s+ U1 u" \1 J* G% |5 H  f      'order' => 'DESC',+ w' u7 Y- G  z% Y! T4 ?0 I
      'orderby' => 'date'
; i3 y1 P+ Y" V8 u   );
, V/ S! X- |: Y' M* g6 Y- C- d   $query = new WP_Query($args);
: J* Y) l) i1 O3 X. t   if ($query->have_posts()) :* E+ j" O- I: m, \& [5 T0 v" i
      while ($query->have_posts()) : $query->the_post(); ?>
" h2 f1 [8 `0 R          <div class="notice">
1 }- S; w$ O( p: M6 @6 @7 g  N              <h3><?php the_title(); ?></h3>
# ?2 S7 W# T4 M* `              <div class="notice-content"><?php the_content(); ?></div>
; ]3 o7 ]8 N- a) i2 w  s          </div>, I4 j/ l- N' F; y& h9 P9 Q/ H
      <?php endwhile;2 i$ L* R3 m) G  r& Y7 z
      wp_reset_postdata();. @& |+ X) G; P# W! H7 W& g+ m
   endif;
- ]! H2 X: Z" j! q   ```6 r) J" o/ s8 M. E
4 o4 C& R& R  R2 ~8 z' I5 e
   在示例中,我们使用 `WP_Query` 类从 `site-wide-notices` 文章类型中获取最近发布的 3 条公告,并在前端页面中循环遍历并显示标题和内容等信息。
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2026-2-17 03:35 , Processed in 0.012147 second(s), 3 queries , Redis On.

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

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