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

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

[复制链接]

338

主题

520

回帖

3460

积分

管理员

积分
3460
QQ
发表于 2023-5-18 08:34:20 来自手机 | 显示全部楼层 |阅读模式
您可以使用以下方法来快速在 WordPress 后台增加一个全站公告的功能:/ k* A; i3 y+ E3 D4 T& I! }

, R8 c  f3 g9 t* W- g  I" A. x1. 在 WordPress 插件库中寻找可用的公告插件,例如 WP Notification Bars、Announcements、SSP Elegant Notification Bar 等。1 i/ [1 N- s% e' z, o. _

! C% \/ Y: L3 R2. 安装并激活您选择的插件。您可以在 WordPress 后台的「插件」->「添加新插件」界面中搜索并安装插件,然后在「插件」->「已安装插件」界面中激活它。
) f  [5 z* c4 |: T3 H/ Z- g+ t0 }& m7 g2 \
3. 在插件的设置页面中配置您的公告内容和样式。不同插件的设置选项和功能可能会有所不同,但通常都允许您定义公告的文本、链接、颜色、位置等。- d! J4 H3 s. n; E

0 F+ \2 K" \+ g4 O4. 将公告添加到您的网站上。在插件设置页面中完成公告的设置后,您可以通过编辑 WordPress 主题的代码或使用插件提供的方法将公告添加到您的网站中。不同插件可能使用不同的添加方法,具体请查看详细说明或联系插件作者。, u1 V" k* F6 K: D5 e# t
/ x- [. E$ q+ y, G7 w
注意,如果您使用的 WordPress 主题已经包含了公告功能,或使用了其他公告插件,可能会导致冲突或功能重复。如果您遇到了这样的问题,请查看主题文档或联系主题作者以获取解决方案。
回复

使用道具 举报

338

主题

520

回帖

3460

积分

管理员

积分
3460
QQ
 楼主| 发表于 2023-5-18 08:34:51 来自手机 | 显示全部楼层
如果是自己开发的话,具体要怎么做?
, d% s% p6 s/ ?. ]5 Z$ N
9 Q& K; O: ~7 Q如果您自己开发 WordPress 主题或插件,并且需要在后台中增加一个发布全站公告的功能,可以按照以下步骤操作:- a- I0 w* `# ]  H1 B

+ R" z' [8 L7 |( h" {1. 创建一个自定义的 WordPress 后台页面。您可以使用 `add_menu_page()` 或 `add_submenu_page()` 函数来创建一个自定义后台页面,例如:
1 F8 C$ A& t4 y  T
4 ^' b5 n' t- p" F   ```
8 o9 U1 |- I3 I8 a! E   add_menu_page(
* j6 K- g9 ^, Y4 k) \       '全站公告',' a1 @/ M8 q6 y' N+ H5 U$ ~
       '全站公告',
3 A# G6 g& i9 s# B2 P       'manage_options', //需要的用户权限  e+ D, r. @. B( l  Y
       'site-wide-notice', //后台页面的 slug
. f1 w  b6 I- E' u       'render_site_wide_notice_page', //用于渲染后台页面内容的函数
7 ]8 _; \; Z3 p8 }5 K  f4 g       'dashicons-megaphone', //用于显示在菜单中的图标' t) ^6 o- d: |2 h: [
       30 //菜单项的位置5 q+ G7 c, k# P3 U4 n
   );- K5 A* [1 V: P/ i4 V; W1 i- i
   ```6 v& n1 a! |, t, y% R

2 o( }: P" B* I+ M$ Q0 A   在该示例中,我们使用 `add_menu_page()` 函数来创建了一个名为“全站公告”的菜单项,并指定需要的用户权限(`manage_options`),在后台页面的 slug 为 `site-wide-notice`,用于渲染后台页面内容的函数为 `render_site_wide_notice_page`,在菜单中显示的图标为 `dashicons-megaphone`,菜单项的位置为 30。9 j9 }5 f' Y7 c* V) n5 r4 t  C

. h! s5 |; t' b( G9 ]. @4 B& [2. 编写用于显示和保存全站公告内容的代码。您可以在自定义后台页面中创建一个表单,让用户输入公告的标题、内容等信息,并将这些信息保存到 WordPress 数据库中的某个表中。例如:
8 F% h; G8 o0 J2 p
% [$ c8 t* y0 h. R* D* L   ```
1 y4 @. U; e2 L4 F  U   function render_site_wide_notice_page() {' {& O* ~9 c4 r% F
      // 渲染后台页面内容* I( N+ m# \9 I5 w5 U2 T5 ~
      echo '<div class="wrap">8 g& E4 P$ j. v( K
          <h2>全站公告</h2>2 Q% s! Q1 j1 y1 V
          <form method="post" action="">
( G1 ~: E' r' l' }              <label for="title">公告标题:</label>
  [! o$ A* g/ \4 C( v3 W              <input type="text" name="title" value="'.get_option('site_wide_notice_title').'"><br><br>
$ x1 i$ b* ^/ n              <label for="content">公告内容:</label>& W. y( t- a9 G; I
              <textarea name="content">'.get_option('site_wide_notice_content').'</textarea><br><br>
- O, \3 h1 X! u0 Z1 h              <input type="submit" name="submit" value="保存设置">1 V' Q8 {. L9 S( p: v' j
          </form>% A  J# x% ^& y2 H' d; u& l/ B! h
      </div>';4 S8 p# H& t! B) K& K
' y/ B: g% C" D; t, h' |
      // 处理表单数据4 u# g5 k: q% F1 m! z
      if (isset($_POST['submit'])) {% s2 @8 y; U3 C" r" F4 z
          update_option('site_wide_notice_title', sanitize_text_field($_POST['title']));. w, [9 ?4 f6 o: ^( @2 j
          update_option('site_wide_notice_content', sanitize_text_field($_POST['content']));+ E3 B* _' R# L. @* G3 e
      }. Q! o9 o' ^' S1 H
   }# x9 F, W5 M4 v( ]/ ~) S
   ```
9 q& k2 \0 p( O2 _1 r  d3 y9 a5 s0 {! H  ^
   在该示例中,我们创建了一个表单,让用户输入公告的标题和内容,并使用 `update_option()` 函数将这些数据保存到名为 `site_wide_notice_title` 和 `site_wide_notice_content` 的 WordPress 配置项中。如果用户点击提交按钮,则将表单数据更新到配置项。" c. Q3 K8 J, }/ n. E- Y% Y

) g- j, v- l: r3. 在 WordPress 主题中显示全站公告。您可以通过在 WordPress 主题的 `header.php` 文件中添加代码,将公告内容显示在网站的顶部或其他位置。例如:2 G8 F: Z( n2 N& T
6 _4 C+ M- w7 @0 w9 A6 x
   ```
4 F; ]& l9 S6 j6 W6 G$ {) A   <?php: i( [0 Z3 r6 x- U( o  s6 T
   $site_wide_notice_title = get_option('site_wide_notice_title');; `% L# _( w. g9 L8 y
   $site_wide_notice_content = get_option('site_wide_notice_content');# O( |$ r: q* L( U  d( H4 C( a
   if (!empty($site_wide_notice_title) || !empty($site_wide_notice_content)) {
+ B0 f# Y. q% j. ]' Y- \6 g  E) R2 _       echo '<div class="site-wide-notice">';
; \5 L2 w8 K% v1 V# O, p. U5 t       if (!empty($site_wide_notice_title)) {* v$ B7 t+ A1 d9 K4 x7 g0 f) ^
           echo '<h3>'.$site_wide_notice_title.'</h3>';
; e5 b1 L* Z' h+ |       }
. s" H8 o) x5 C% o2 h! P! M  \       if (!empty($site_wide_notice_content)) {
+ x: X/ t  {/ T. _' l           echo '<p>'.$site_wide_notice_content.'</p>';4 c: L4 ?$ b! R9 D  E
       }4 x0 N! P4 m! f/ f+ C# X& ~# F
       echo '</div>';7 J: _$ r4 O  _
   }
7 C( O3 r# F' Y( a8 v$ ^+ N   ?>  N1 Z3 }& v4 p  W0 w$ T3 q
   ```
2 c, h5 ]7 \+ W7 K$ V) h; W9 q: u! H. S4 i& o+ {& s9 U8 }% Y
   在该示例中,我们检查 WordPress 配置项中名为 `site_wide_notice_title` 和 `site_wide_notice_content` 的值是否为空,如果不为空,则在 `header.php` 文件中添加一个名为 `site-wide-notice` 的容器,将公告标题和内容显示在其中。
! D  a$ v# w) e% @4 [
; B. T! V4 z8 K% j; T请注意,本示例仅提供了一个框架,具体实现可能会根据您的需求和实际情况有所不同,您需要根据自己的需要进行修改和调整。同时,为了确保安全性,您还会需要对用户输入的数据进行适当的验证和过滤,例如使用 `sanitize_text_field()` 函数来过滤表单数据。
回复

使用道具 举报

338

主题

520

回帖

3460

积分

管理员

积分
3460
QQ
 楼主| 发表于 2023-5-18 09:26:50 来自手机 | 显示全部楼层
那如果需要发布多条公告,并进行管理,要如何实现?& ]8 I- T  G$ x5 r9 ^+ a

; o6 e% F" C, N+ {$ R& V( `您可以创建一个自定义的 WordPress文章类型,例如“公告”,并对其进行自定义化,以实现发布多条公告并进行管理的功能。以下是具体步骤:( H. Y$ x& u+ k- t" D$ U

7 I, ?7 M3 F  @" {( C. s7 z: l1. 创建一个自定义的文章类型:在你的主题 `functions.php` 文件中,添加以下代码:: D) s, V8 b1 G" X7 A
# G- O$ w- C6 o: x& q
```. F1 e. O7 \" r2 e6 `$ k
function create_custom_post_type() {
4 ^, N9 ~% @8 I( I    $args = array(; h4 ?" O* ?/ s
        'labels' => array(4 j' k7 K  |0 d' B0 S
            'name' => '公告',- d( X% j4 d/ L
            'singular_name' => '公告'
8 ^: l% e9 G- P4 `5 z' `        ),  ]; u+ U& h) F& v; p& @5 ^3 j
        'public' => true,
0 N- Z0 a7 Z  _$ A2 A        'has_archive' => true,0 i8 u2 s% z/ l' A; M
        'supports' => array('title', 'editor', 'thumbnail', 'excerpt', 'custom-fields', 'revisions'),
0 G2 z& x/ }$ ^& B& R! Q4 r        'taxonomies' => array('category', 'post_tag'),
' l, I  [% _( O7 n        'menu_icon' => 'dashicons-megaphone',- U7 l5 V( {4 P7 N! x
        'menu_position' => 5,
9 T) n3 T& I/ `! q4 E# W        'rewrite' => array('slug' => 'site-wide-notices')
/ h: K! E9 s7 v* N    );$ }  r; C, h3 ]4 ]9 P2 c7 [5 y
    register_post_type('site-wide-notices', $args);5 y$ N9 c6 k5 \. b) n. {
}
$ Y/ H$ y6 ?: b) i* r% d* W+ uadd_action('init', 'create_custom_post_type');
6 A; e5 q& `$ d```
# E6 r( D$ c3 H" p/ J5 n8 y- u: ^5 x# ?! w) S% M
在示例中,我们注册了一个名为 "site-wide-notices" 的新的文章类型,并定义了文章类型名称、缩略名、文章类型支持的功能、分类法、管理菜单图标等设置。$ M% O  G0 C3 [$ I! i! a% z' `8 T! c

; K+ f- M& \" f2 p6 m; ]2. 在你的 WordPress 后台中创建新文章类型“公告”:现在,你就可以在 WordPress 后台中通过导航到“公告”菜单,来添加、编辑或删除公告了。您可以在编辑公告的页面中添加标题、内容、特色图像或其他自定义的元数据字段。
- B  N3 H2 e7 K- r" I$ m" _/ G1 p4 P
, m: }0 u3 O% k8 h; F  N. K( s3. 在主题中显示公告:在您的 WordPress 主题文件中添加以下代码,以在您的网站上显示公告:
( ]1 k0 ?6 ?( x8 n
: H  i* A0 x0 k$ J8 f" f( ]```
9 s# J  d# X" I; e: `; B5 c$args = array(
, g* I0 K! r: p. }$ v    'posts_per_page' => 3, // 显示的公告数量$ |$ _0 t( t. T' |; g7 i
    'post_type' => 'site-wide-notices', // 公告文章类型
! \8 m: I; v8 z2 [* G- F, c) E, _    'post_status' => 'publish', // 公告状态* }  I0 |4 _0 B2 n4 E5 v, S
    'order' => 'DESC' // 排序方式' w4 z4 R) e5 P$ i
);1 }3 x* X& }! _' B4 W
+ W/ E5 d2 Q. }% ]& v7 n3 Z/ v
$notices = new WP_Query($args);
% N2 ^8 L; {" Z  F8 ?8 g* nif ($notices->have_posts()) :! _) u  \# N/ y2 R4 f' j
    while ($notices->have_posts()) : $notices->the_post(); ?>
5 P' C  J6 a9 r6 m  y1 W        <div class="notice">
! e6 G' f, L5 g            <h3><?php the_title(); ?></h3>
( _6 Q0 E7 K6 b5 ~7 o, x            <div class="notice-content"><?php the_content(); ?></div>
4 x* V! Q4 P! h7 j: T0 u1 Z; \' n        </div>
% O7 n' k3 a- O4 K& [0 [/ w    <?php endwhile;8 m, W5 \$ S1 s0 {- i9 @& F4 D
else :' D3 c  O. T# ^; `2 S
    echo "暂无公告";/ r- m; f* m& b/ }' T4 o3 g" [
endif;  O: t7 f# M$ T. o# P1 ^& \
wp_reset_query();
3 B. y& Q/ s; X! R```
) Q+ e- N8 j# P$ n( Q8 f8 O% r0 |6 u' n# `4 V$ P' _
这段代码将使用 WordPress 的 `WP_Query` 类从公告文章类型中获取最新发布的 3 条公告,并在前端页面中循环遍历并显示公告标题和内容等信息。, ~3 h' Y3 M2 _6 @$ B* P
5 Z0 k0 |) M* x/ u. B
以上便是实现 Wordpress 后台发布多条全站公告的基本步骤。需要注意的是,自定义文章类型可对应多篇文章,具体根据您的需求进行调整。
回复

使用道具 举报

338

主题

520

回帖

3460

积分

管理员

积分
3460
QQ
 楼主| 发表于 2023-5-18 09:27:55 来自手机 | 显示全部楼层
如果不想修改functions.php,有其他更好的办法吗?
( [8 g& ]; ]* ]) f
2 \* C% Z( a; `' Q1 R+ D0 m% Q如果您不想修改主题 `functions.php` 文件,也可以创建一个自定义插件来添加新的文章类型。& c  Y& Y+ n7 ~  i

& _/ a3 X8 q) |) Y& B以下是创建自定义插件的步骤:+ Q0 |$ k- r; {

# G$ |0 D9 z5 D' j1. 创建新插件:在 WordPress 插件目录中创建一个新的子目录,例如 `site-wide-notices-plugin`,然后在该目录中创建一个新的 PHP 文件,例如 `site-wide-notices-plugin.php`,并在文件头部添加必需的标记,例如:2 R2 y' [2 r4 t) Y2 n$ ^7 C

7 y& m+ T" @0 v# e   ```
8 Q" n' f+ r; M  j& j   <?php
) a. ], I4 `% }% z   /*
; r" g. ?+ A: Z   Plugin Name: Site Wide Notices Plugin
! O( n; D; _/ N7 a   Description: Adds a new custom post type for site-wide notices./ q4 d& s  o/ l1 f7 j
   Version: 1.02 D- g( [5 Y8 p, _) `0 {) \0 M
   Author: Your Name3 J* g9 O, b( R( _1 Y
   Author URI: http://example.com0 m2 @- j' y  R. B$ N" N
   */
0 {- g8 p9 ?9 K( P" X3 }- p1 V9 u; O( v, F8 K$ j
   // Add plugin code here...
2 I+ l) U& M3 W2 ^, Q   ```
' e  W: R9 M3 m  h" E. M$ w  j
   在示例中,我们创建了一个名为 `Site Wide Notices Plugin` 的新插件,该插件添加了一个新的自定义文章类型,并指定了版本、作者和作者 URI 等元信息。
: K8 A9 x7 q3 I- t. a: _. B
- F' t: r$ G$ p; a, |2. 在插件中注册新的文章类型:在 PHP 文件中添加以下代码,用于注册一个名为“site-wide-notices”的自定义文章类型:
% D5 E# F" O$ W, j) ]
8 L5 [* k4 ]. n   ```' C- l( t& b6 d4 ~0 Q  k6 H. _
   add_action('init', 'create_custom_post_type');
$ D  v0 ^/ C+ L" l* X5 y0 ], S   function create_custom_post_type() {  s3 L9 t8 A. S5 o& Z
      $labels = array(
( B7 C' v7 K" u: f# n- D          'name' => 'Site Wide Notices',: _% C: f3 r/ c( n: M& M, ^8 U  {
          'singular_name' => 'Site Wide Notice',
+ ^* v+ v$ o  T. x          'add_new' => 'Add New',+ E0 ^# h6 |5 e6 S9 L
          'add_new_item' => 'Add New Site Wide Notice',# s7 y9 Q* {$ _! l& V
          'edit_item' => 'Edit Site Wide Notice',
$ ], C' ?! |% k+ d          'new_item' => 'New Site Wide Notice',
, j# ?$ Z  F( n! Z' j& m3 y4 q+ I; n          'view_item' => 'View Site Wide Notice'," @7 f6 m+ L6 ~* d) R/ c
          'search_items' => 'Search Site Wide Notices',# l) K4 q3 k1 O& b3 E
          'not_found' => 'No site-wide notices found',
4 |8 y5 {% v" Q          'not_found_in_trash' => 'No site-wide notices found in trash'
, k0 X# K7 {7 @      );
, M4 T  K0 V2 w- ^6 W6 `" _8 ]2 r  R/ A# I' \
      $args = array() l' k, c% N/ }% w
          'labels' => $labels,
+ ^6 q8 W" K0 _0 F          'public' => true,1 J% J& j* q+ E. x1 V1 l- w
          'has_archive' => true,; v: {* W6 G2 e3 j; V) N% S
          'supports' => array('title', 'editor', 'thumbnail', 'excerpt', 'custom-fields', 'revisions'),
6 o& e0 W$ {. A" _  N* @! a7 b/ m          'taxonomies' => array('category', 'post_tag'),
; R/ {% P; V( M, s$ D  @          'menu_icon' => 'dashicons-megaphone',
8 p0 K: a( G) p- U4 F* Q          'menu_position' => 5,
) Z; D) \1 U3 k* A( @          'rewrite' => array('slug' => 'site-wide-notices')
0 }7 b$ {& |# p. t6 q      );
- t5 A6 F: E3 W' v2 V0 N
. Y8 [$ Y1 H. Y3 G      register_post_type('site-wide-notices', $args);
2 @+ A& [% X$ M3 k   }
# t: m& Q9 |; w( _  i   ```
. {- z" V1 ]8 T$ G4 H1 K/ S; H
, s; n! w, M8 R5 s5 e6 w2 W   在示例中,我们使用 `register_post_type()` 函数注册一个新的文章类型,并定义了该文章类型的名称、标签和其他设置。* @: c4 o4 g  J$ N
& W( `; }+ L2 N) P
3. 在后台中添加公告编辑页面:您可以使用 `add_meta_box()` 函数在后台中添加公告编辑页面,并自定义字段和元数据,例如:
9 E1 W  v/ w9 z/ E* v
8 @% u' l: g9 ~" m   ```# {0 W' e3 p* f, B+ m
   add_action('add_meta_boxes', 'add_site_wide_notices_boxes');# B3 x& n7 U' [7 O5 p; X; D
   function add_site_wide_notices_boxes() {
: A/ w" S, W* K. E. [" w- F0 d      add_meta_box('notice-details', 'Notice Details', 'notice_details_meta_box', 'site-wide-notices', 'normal', 'high');' a0 s& u- ~! e$ h! z6 O
   }$ k) l3 m' M7 l( Y: H9 d4 _

9 P  V# U& U  ]2 [" m( i2 g0 ^, {3 ^- e   function notice_details_meta_box($post) {
, x5 w# x/ V$ ~* f, z& P) K' O7 ]      wp_nonce_field(basename(__FILE__), 'notices_nonce');: c  u- S- V( x! M/ {& T6 g
      $notice_title = get_post_meta($post->ID, 'notice_title', true);7 B' f0 K9 G* Z" R0 t, v8 {
      $notice_content = get_post_meta($post->ID, 'notice_content', true);
# J+ B3 e/ W0 i+ @; C0 q* ~      ?>
6 K. W$ ?/ J& c# }# h* Z      <p>  c3 s9 f! n& B% R4 V0 i" E. r  C( T& T7 H
          <label for="notice-title">Notice Title</label><br>) M9 \$ e" t( T5 ~" x8 \
          <input type="text" id="notice-title" name="notice_title" style="width: 100%;" value="<?php echo $notice_title; ?>">1 d  }: r) q* F" \# }
      </p>
7 C  I) o/ A  t) s8 e4 J      <p>
; ~3 B6 s7 L7 @          <label for="notice-content">Notice Content</label><br>' v8 B/ O! _% R* l& s
          <?php wp_editor($notice_content, 'notice-content', array('textarea_rows' => 10)); ?>; D( y) N4 L- P" x
      </p>
$ Q& J% r* _* i+ y7 ]& V! I& K/ O      <?php8 o4 I  _1 b; J' |* x# d
   }8 w8 X. ^* E/ v2 z2 [' e

, s/ T2 s- V4 S6 e$ C# @" S( t   add_action('save_post', 'save_site_wide_notice_meta_box');/ r* {( T! d6 a* D7 r7 @2 z
   function save_site_wide_notice_meta_box($post_id) {4 c/ H* J& i. V$ ?
      if (!isset($_POST['notices_nonce']) || !wp_verify_nonce($_POST['notices_nonce'], basename(__FILE__)))
! @/ ?1 j$ u! P* x) y8 {; A         return;
+ [- f, F: [3 y3 i/ F- _      if (defined('DOING_AUTOSAVE') && DOING_AUTOSAVE)
5 F5 A5 r/ ^+ C+ a4 p5 t1 i3 C' _         return;9 W$ W* q7 {% ?6 v! Z6 ?6 B0 [

% e& g) a, R8 y  i9 }      if (isset($_POST['notice_title'])) {
8 b% v. e+ u" o# S5 Z5 J& q          update_post_meta($post_id, 'notice_title', sanitize_text_field($_POST['notice_title']));4 c' M+ X5 n3 H8 q, [, i% J/ ~3 X, E
      }
4 P+ s- i  \& E9 x, b9 A$ t      if (isset($_POST['notice_content'])) {0 c& m7 {: w9 M6 O+ |, w3 x; P
          update_post_meta($post_id, 'notice_content', wp_kses_post($_POST['notice_content']));
+ Y1 p" n- ]( E' M      }
' L% X; S4 P2 k# _* U+ J6 P   }# n) ?# e# Q+ z" J- B
   ```: C! U# x  v( M( ~+ ^& [2 U$ Y; L
& H0 q+ w  ~9 o
   在示例中,我们使用 `add_meta_box()` 函数添加了一个名为 `notice-details` 的元框,用于在编辑页面上显示自定义字段和元数据。在 `notice-details_meta_box()` 函数中,我们使用 `wp_editor()` 函数添加了一个可视化编辑器,用于编辑公告内容。在 `save_site_wide_notice_meta_box()` 函数中,我们使用 `update_post_meta()` 函数将公告标题和内容保存到 WordPress 数据库中。
9 W- `1 Y. o. F9 N* r
; X+ V+ d6 X4 H1 o6 ?/ I4. 在前端页面中显示公告:在 WordPress 主题文件中添加以下代码,以在您的网站上显示公告:' Y1 |  A( u& N# w/ M

# E$ E- q( a, @   ```
" S) S( M3 ~8 l* l5 l   $args = array(
5 w4 |" [3 O- a0 }/ i' ^      'post_type' => 'site-wide-notices',
5 t- u3 H# s0 K      'posts_per_page' => 3,4 ~" m4 z& {. g* m% p- L) ?# v
      'order' => 'DESC',, j  n) K" }) k' w0 _6 Y
      'orderby' => 'date'$ n2 D: `; D9 W# y  B
   );
4 [7 ?7 y7 z+ ~% ~' n/ ]   $query = new WP_Query($args);
1 h8 r6 v, O* n$ n. Q) U   if ($query->have_posts()) :0 V6 w& ^" Y/ w9 {# `8 G
      while ($query->have_posts()) : $query->the_post(); ?>
2 O! i& I* j2 r9 a$ @          <div class="notice">) C6 u6 _* m! j1 c
              <h3><?php the_title(); ?></h3>
2 V* u* X8 e. e! f              <div class="notice-content"><?php the_content(); ?></div>; ]( q9 f- q6 d; K0 k+ ~- n
          </div>  h& V- D1 \. o9 ~. s7 |7 R
      <?php endwhile;
' `* h  E' Z* F( i" j% Q      wp_reset_postdata();
& @, m  Y; K% V+ v8 a* B* ~   endif;! V& |6 N2 F8 t6 h& x; t
   ```3 @' s2 A' ~7 O  _5 B5 o
( @+ a$ S) S7 J4 v. z" e  U
   在示例中,我们使用 `WP_Query` 类从 `site-wide-notices` 文章类型中获取最近发布的 3 条公告,并在前端页面中循环遍历并显示标题和内容等信息。
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2026-1-2 02:59 , Processed in 0.025440 second(s), 3 queries , Redis On.

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

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