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

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

[复制链接]

334

主题

519

回帖

3402

积分

管理员

积分
3402
QQ
发表于 2023-5-18 08:34:20 来自手机 | 显示全部楼层 |阅读模式
您可以使用以下方法来快速在 WordPress 后台增加一个全站公告的功能:8 y1 ^+ D' Y. h: L7 F' O9 P
9 \! m* m- d2 V0 [1 R. M
1. 在 WordPress 插件库中寻找可用的公告插件,例如 WP Notification Bars、Announcements、SSP Elegant Notification Bar 等。  f6 O; r/ h4 X  v. G  L
5 m3 B. {: X' ]2 b5 D
2. 安装并激活您选择的插件。您可以在 WordPress 后台的「插件」->「添加新插件」界面中搜索并安装插件,然后在「插件」->「已安装插件」界面中激活它。2 Q& s: j- V3 z6 w

8 j: K# U0 c: t7 v$ _3. 在插件的设置页面中配置您的公告内容和样式。不同插件的设置选项和功能可能会有所不同,但通常都允许您定义公告的文本、链接、颜色、位置等。& q+ I0 w' o% ~) O! o

" }+ g9 _& j- j( T" H3 _4. 将公告添加到您的网站上。在插件设置页面中完成公告的设置后,您可以通过编辑 WordPress 主题的代码或使用插件提供的方法将公告添加到您的网站中。不同插件可能使用不同的添加方法,具体请查看详细说明或联系插件作者。! J3 D0 s' p* }+ D3 i; U' X, _* \
& p4 e' V* X  ]. S! m8 f
注意,如果您使用的 WordPress 主题已经包含了公告功能,或使用了其他公告插件,可能会导致冲突或功能重复。如果您遇到了这样的问题,请查看主题文档或联系主题作者以获取解决方案。
回复

使用道具 举报

334

主题

519

回帖

3402

积分

管理员

积分
3402
QQ
 楼主| 发表于 2023-5-18 08:34:51 来自手机 | 显示全部楼层
如果是自己开发的话,具体要怎么做?) _6 f* Q) c5 c7 z2 R' |% B
# R! i" j& j7 P% a' }5 w
如果您自己开发 WordPress 主题或插件,并且需要在后台中增加一个发布全站公告的功能,可以按照以下步骤操作:: F, Z& n9 @9 y

* c/ O! l( M, u$ U, l1. 创建一个自定义的 WordPress 后台页面。您可以使用 `add_menu_page()` 或 `add_submenu_page()` 函数来创建一个自定义后台页面,例如:# }& y$ R% Y' e" C  |$ p

& m8 s* l  c5 [3 |9 @2 _   ```
: |6 S& `; z4 `8 u. |   add_menu_page(" V& o  ^1 r% K& [7 {& @6 \
       '全站公告',
/ q5 H3 S0 \% U: N# w       '全站公告',
' S/ E+ I7 w& l4 i, y8 G4 o' p9 x/ ^       'manage_options', //需要的用户权限
; `( h& ~% U- D7 U       'site-wide-notice', //后台页面的 slug
7 y# M+ r+ S0 s* A; l9 n       'render_site_wide_notice_page', //用于渲染后台页面内容的函数
, K; i4 d2 l8 v       'dashicons-megaphone', //用于显示在菜单中的图标
0 |1 h( d. d) i       30 //菜单项的位置
; W, h1 j3 V( q   );, D; [6 ]4 U# v
   ```
7 n: F0 c' C  x. t1 `2 M; I+ Z4 |( h4 X/ R6 J
   在该示例中,我们使用 `add_menu_page()` 函数来创建了一个名为“全站公告”的菜单项,并指定需要的用户权限(`manage_options`),在后台页面的 slug 为 `site-wide-notice`,用于渲染后台页面内容的函数为 `render_site_wide_notice_page`,在菜单中显示的图标为 `dashicons-megaphone`,菜单项的位置为 30。# f9 K% A8 T- [9 g1 o+ V6 D
5 {" C! |; m5 O
2. 编写用于显示和保存全站公告内容的代码。您可以在自定义后台页面中创建一个表单,让用户输入公告的标题、内容等信息,并将这些信息保存到 WordPress 数据库中的某个表中。例如:9 k/ z5 h# e7 t
; Y2 N2 L4 ~  g3 S  E. H7 L9 G
   ```
1 f- K" B2 p/ i) o- j. j8 c   function render_site_wide_notice_page() {
, p# z6 q5 s/ T+ Z* c, H: m      // 渲染后台页面内容; H* S3 ]# W6 C5 d
      echo '<div class="wrap">" K# r  K4 A8 O# B7 M" L' u
          <h2>全站公告</h2>
; A( s8 F& W4 S; z4 Q* W2 m# m          <form method="post" action="">$ v1 \6 c0 W& H; w6 B/ D% R
              <label for="title">公告标题:</label>( l) E0 @# f( R, P
              <input type="text" name="title" value="'.get_option('site_wide_notice_title').'"><br><br>' _: [! L8 P3 Z
              <label for="content">公告内容:</label>
; ]+ l4 C. u; L6 b' ]4 }4 n              <textarea name="content">'.get_option('site_wide_notice_content').'</textarea><br><br>
- J9 B# ]$ M0 _" Q7 ~              <input type="submit" name="submit" value="保存设置">* a" v; B0 s* I7 @% J
          </form>
2 `% {7 g* M. l0 D. K7 l  R      </div>';; X, b7 q' r- I3 b2 D* n9 J% O3 Z
- x+ y6 N9 X9 y5 a& O' u4 E
      // 处理表单数据
9 t. g/ I( U5 f4 _1 c      if (isset($_POST['submit'])) {
( J# {3 i' a; x9 l          update_option('site_wide_notice_title', sanitize_text_field($_POST['title']));7 r, H  J, v1 k, s: [) P4 w
          update_option('site_wide_notice_content', sanitize_text_field($_POST['content']));1 P; q" C' m! U; J4 I: W2 u  y# j
      }
# E8 ?, ~3 t, r9 Q   }
9 W4 K( a4 W. s: P& B   ```
$ _1 _5 y2 e: g. @( p! }7 h9 d. k/ M0 u, s9 `
   在该示例中,我们创建了一个表单,让用户输入公告的标题和内容,并使用 `update_option()` 函数将这些数据保存到名为 `site_wide_notice_title` 和 `site_wide_notice_content` 的 WordPress 配置项中。如果用户点击提交按钮,则将表单数据更新到配置项。
: L% Q, `& H: _
/ ^" r: s2 b* n0 I* j/ Q3. 在 WordPress 主题中显示全站公告。您可以通过在 WordPress 主题的 `header.php` 文件中添加代码,将公告内容显示在网站的顶部或其他位置。例如:
( v* O! {8 F& b1 z2 l% J. }0 w( M8 e0 C
   ```6 ^/ k& ^$ B, N' b; {$ ~
   <?php
2 ]; \, J. L- I: D) f   $site_wide_notice_title = get_option('site_wide_notice_title');
, H- S# c% O* O' B1 G   $site_wide_notice_content = get_option('site_wide_notice_content');2 F/ K& }; e( s  y8 Z
   if (!empty($site_wide_notice_title) || !empty($site_wide_notice_content)) {" ?6 d4 r4 P0 z  K7 L8 x+ y+ m) q
       echo '<div class="site-wide-notice">';
" L- O# f: D, {  z       if (!empty($site_wide_notice_title)) {
( m% t$ m+ \6 O/ h+ t% t$ m# V           echo '<h3>'.$site_wide_notice_title.'</h3>';# P3 d$ I, o, ^$ t9 ?. S! I
       }4 P# T7 ^( Y/ [4 U3 v& E3 D' j
       if (!empty($site_wide_notice_content)) {, p8 D. o1 b/ j5 D
           echo '<p>'.$site_wide_notice_content.'</p>';# k4 k2 I1 |: ]5 T$ S
       }# W' N6 ^6 q! |2 x: o
       echo '</div>';8 k) |2 A1 O  R! d4 L9 x: _
   }9 P6 ?- g, K1 Y7 t6 a9 Z2 U. b3 o
   ?>
( g0 I. h! w' c& c6 V   ```* j7 @- n2 J7 e  _4 ?" r& b

+ p; D. l4 e( K2 ?! K! I8 n2 X   在该示例中,我们检查 WordPress 配置项中名为 `site_wide_notice_title` 和 `site_wide_notice_content` 的值是否为空,如果不为空,则在 `header.php` 文件中添加一个名为 `site-wide-notice` 的容器,将公告标题和内容显示在其中。
' M% q2 a$ l* ~& @5 g7 Q1 @# X/ I7 t7 f
请注意,本示例仅提供了一个框架,具体实现可能会根据您的需求和实际情况有所不同,您需要根据自己的需要进行修改和调整。同时,为了确保安全性,您还会需要对用户输入的数据进行适当的验证和过滤,例如使用 `sanitize_text_field()` 函数来过滤表单数据。
回复

使用道具 举报

334

主题

519

回帖

3402

积分

管理员

积分
3402
QQ
 楼主| 发表于 2023-5-18 09:26:50 来自手机 | 显示全部楼层
那如果需要发布多条公告,并进行管理,要如何实现?# m8 r: w; ]3 R) F  B  b

% P9 f" N+ S; a$ X) k! a9 v您可以创建一个自定义的 WordPress文章类型,例如“公告”,并对其进行自定义化,以实现发布多条公告并进行管理的功能。以下是具体步骤:  @# X( \  ?/ ^7 E" G& E
, X+ b% G( g& g9 O0 a
1. 创建一个自定义的文章类型:在你的主题 `functions.php` 文件中,添加以下代码:6 i# ]# G+ m% E7 b' h8 Q
# T1 ]. h6 ^7 w% _( @
```: ^0 A- }3 V2 d& H; B5 e
function create_custom_post_type() {
/ g% t/ H- I# n, G: q; Q! I    $args = array(& J( q" U2 J3 e9 S
        'labels' => array(
) |, ~) [8 A1 y& H# `            'name' => '公告',
/ x& F. s- Q1 P( U5 m7 a7 P+ E$ W            'singular_name' => '公告': @. M" ~8 o) s! F" j6 {
        ),
+ h" \: @! G! `" b        'public' => true,! R2 W( m! c2 F4 |) j) S5 j( Y
        'has_archive' => true,7 B; S- B. p# i9 k7 P
        'supports' => array('title', 'editor', 'thumbnail', 'excerpt', 'custom-fields', 'revisions'),8 W6 w$ L1 o! x  i8 ~2 c3 r
        'taxonomies' => array('category', 'post_tag'),) H& V' ~# J1 Y1 U3 O
        'menu_icon' => 'dashicons-megaphone',  K' D4 b* i3 I8 X0 H
        'menu_position' => 5,4 @; r5 T. [+ U% c
        'rewrite' => array('slug' => 'site-wide-notices')6 C, b5 n2 G0 D5 x' t4 b
    );
/ v$ X# I7 Z$ p- K    register_post_type('site-wide-notices', $args);
* c! A& l& ?6 j. z/ T8 }/ |; D}7 w" f4 J1 G# p8 H5 [# H' g
add_action('init', 'create_custom_post_type');
8 d5 c+ V* w, W```1 R, b3 X6 g6 H4 V; |2 G5 K
" n* O: W0 u7 A
在示例中,我们注册了一个名为 "site-wide-notices" 的新的文章类型,并定义了文章类型名称、缩略名、文章类型支持的功能、分类法、管理菜单图标等设置。
, Q; y3 g% I; z6 R
; ^+ w7 s. j* }6 u2. 在你的 WordPress 后台中创建新文章类型“公告”:现在,你就可以在 WordPress 后台中通过导航到“公告”菜单,来添加、编辑或删除公告了。您可以在编辑公告的页面中添加标题、内容、特色图像或其他自定义的元数据字段。7 S$ E: `# N9 Q( I" Q6 ]" \

$ U1 Y* _& h' F/ u" e, P" v% ?3. 在主题中显示公告:在您的 WordPress 主题文件中添加以下代码,以在您的网站上显示公告:
! P/ g. g1 u. o) [- T! I; [
4 \$ K& e& p5 m: _9 V```
9 [* j/ [) ~& J* @$args = array(5 Q6 x8 U, a+ b& z$ h/ H
    'posts_per_page' => 3, // 显示的公告数量
) H3 {) o1 O0 w6 K    'post_type' => 'site-wide-notices', // 公告文章类型
: I( O$ x- C# Z1 {    'post_status' => 'publish', // 公告状态8 w8 m0 K8 G' j( ?3 r2 O; S* d
    'order' => 'DESC' // 排序方式' d) \; `8 J2 A+ i
);) m& I9 s$ f$ {, c

# j2 W0 b4 w4 z) J. W* P: p5 x7 M$ ?$notices = new WP_Query($args);
2 f: Y6 z. y* Z" F" U. Q3 l1 uif ($notices->have_posts()) :
* }. O: |) Q7 z1 S: X5 G, X    while ($notices->have_posts()) : $notices->the_post(); ?>
5 ^7 a  F% U( x        <div class="notice">
, _4 L! c' S+ ^/ X3 O            <h3><?php the_title(); ?></h3>
3 q* J; H( T. }) {1 M            <div class="notice-content"><?php the_content(); ?></div>% M3 ^+ p! P9 Q" y  d: _
        </div>
* I- u; p' c: T9 C3 \* \" u8 [    <?php endwhile;; x8 G# p5 L; r9 }
else :/ j& e3 H# F* ^! g" \; Y  }
    echo "暂无公告";3 C# W2 K* J  M8 k
endif;
% S" s6 j# Z+ z, e* q$ Kwp_reset_query();
, T" U* R; M. s/ B2 l: |```
, q. F0 [1 Y1 D0 j- t8 }* C8 a5 v' R0 n8 @4 {' g' D; K
这段代码将使用 WordPress 的 `WP_Query` 类从公告文章类型中获取最新发布的 3 条公告,并在前端页面中循环遍历并显示公告标题和内容等信息。
) K* R" a  Y9 Y- [0 y0 d; G2 t" M. t0 I+ b1 h# `5 `, ?6 n
以上便是实现 Wordpress 后台发布多条全站公告的基本步骤。需要注意的是,自定义文章类型可对应多篇文章,具体根据您的需求进行调整。
回复

使用道具 举报

334

主题

519

回帖

3402

积分

管理员

积分
3402
QQ
 楼主| 发表于 2023-5-18 09:27:55 来自手机 | 显示全部楼层
如果不想修改functions.php,有其他更好的办法吗?2 |# @' K( u+ }. e

- ]: L7 m% E- a$ m8 W1 f- Z: M$ ~. i4 R如果您不想修改主题 `functions.php` 文件,也可以创建一个自定义插件来添加新的文章类型。  _7 C2 h2 P9 u& q9 \
- D- g# L+ a, A! ?3 P
以下是创建自定义插件的步骤:
! Y1 e9 Y+ U6 x/ V2 ^( R/ a# [$ Z) q7 B$ o
1. 创建新插件:在 WordPress 插件目录中创建一个新的子目录,例如 `site-wide-notices-plugin`,然后在该目录中创建一个新的 PHP 文件,例如 `site-wide-notices-plugin.php`,并在文件头部添加必需的标记,例如:
3 i( E3 p$ W: H2 N7 Z5 y: z( U* B7 S
   ```) `$ T# E& s( d. J5 \" L
   <?php+ I, ^: K5 @) i& z; x  b7 k
   /*
. B) ~7 H6 ?( Z. l3 ^+ J* r   Plugin Name: Site Wide Notices Plugin
1 b/ g$ R" @. ^" v' G  Z  H; k   Description: Adds a new custom post type for site-wide notices.
9 \1 A' F2 z" g5 L+ y- p  |1 k   Version: 1.09 G8 f8 M& I+ O) @( D
   Author: Your Name  w7 l5 M; V% K5 c% }
   Author URI: http://example.com2 p+ r' A) M$ k6 U& I3 j# _
   */- ?5 `& s8 w; ~- f' @. E
& v* e1 I8 P  w8 {  B
   // Add plugin code here...
6 c) q) B. c5 J8 m1 E3 h( F   ```2 Q& Q* W1 |0 Q6 K- S/ a

3 |2 v$ ~8 k9 N- w   在示例中,我们创建了一个名为 `Site Wide Notices Plugin` 的新插件,该插件添加了一个新的自定义文章类型,并指定了版本、作者和作者 URI 等元信息。% }" |4 {! U  e! A! Z3 x! T

, X6 c; [, e* @% B! @) O; W2. 在插件中注册新的文章类型:在 PHP 文件中添加以下代码,用于注册一个名为“site-wide-notices”的自定义文章类型:
  G/ E" \( j) n4 t& U5 ?* m6 g
7 `" j# L( P/ p   ```; K3 X! I; a( ~5 r! B9 C8 B3 @
   add_action('init', 'create_custom_post_type');' U& m: |% l) e; e
   function create_custom_post_type() {
" z/ i+ p3 e* B$ o0 F4 S      $labels = array(
3 }2 b* a# B, y( B0 g          'name' => 'Site Wide Notices',
! R5 @5 |0 T. n; u! l5 N5 P          'singular_name' => 'Site Wide Notice',3 v: c8 H' D- A7 g# ]
          'add_new' => 'Add New',
, ^' W8 s% H+ K( [9 i, L: G          'add_new_item' => 'Add New Site Wide Notice',
( q- M, p9 t7 \. v( E          'edit_item' => 'Edit Site Wide Notice',  r6 q, e4 b% _/ L1 m0 k2 w; C
          'new_item' => 'New Site Wide Notice',
  C7 n1 Y8 T) m2 s$ I* Z5 z          'view_item' => 'View Site Wide Notice',7 c& K0 W6 ]& y8 k0 A' K5 w
          'search_items' => 'Search Site Wide Notices'," S% m) p* d$ P3 d2 @0 o
          'not_found' => 'No site-wide notices found',' P  h* _! @! z3 l% s
          'not_found_in_trash' => 'No site-wide notices found in trash'2 m- T2 a# y: b4 t( H
      );% n) V. q+ t8 Y8 T+ P# S, O

5 c3 Q7 j% F0 }9 _. X0 M      $args = array(# ?. u3 i! \1 }" P1 I8 ]
          'labels' => $labels,
3 U4 p8 T0 V3 m7 O( X2 R          'public' => true,2 e. w, d: H" N% }8 A
          'has_archive' => true,' z2 c1 @1 g; S/ ~7 X- m0 G
          'supports' => array('title', 'editor', 'thumbnail', 'excerpt', 'custom-fields', 'revisions'),0 N% Q, J& o# Z0 \
          'taxonomies' => array('category', 'post_tag'),! F0 i) `# A$ n5 z
          'menu_icon' => 'dashicons-megaphone',* X, U& ]" b' z6 T  [1 I
          'menu_position' => 5,
3 e* C- y  X. }5 w  O& q* g8 |          'rewrite' => array('slug' => 'site-wide-notices')( @8 ^, O  o8 y+ s* {
      );$ H/ g* X4 S9 t3 c/ V! P4 w
- r" n* o, }; R$ `/ a
      register_post_type('site-wide-notices', $args);. g. N* I0 o. L% P7 h% O& W
   }: Q  \( b, p  \. C7 V
   ```( b% G' s* d# u+ |4 A' L: L

& e# @2 Q$ p  P  G9 }  F   在示例中,我们使用 `register_post_type()` 函数注册一个新的文章类型,并定义了该文章类型的名称、标签和其他设置。0 o6 l7 f/ Q( a5 |/ Z, }/ X

! U8 T4 V4 J/ q2 Q1 c/ @3. 在后台中添加公告编辑页面:您可以使用 `add_meta_box()` 函数在后台中添加公告编辑页面,并自定义字段和元数据,例如:
: q" a- p5 m; x6 c# T
% w- W+ p" k) C! k   ```5 M" L* y; v% G2 y
   add_action('add_meta_boxes', 'add_site_wide_notices_boxes');
) ]- l1 B- y" g4 M   function add_site_wide_notices_boxes() {
) n; O3 d+ m2 p$ F      add_meta_box('notice-details', 'Notice Details', 'notice_details_meta_box', 'site-wide-notices', 'normal', 'high');
% _* Q2 ^# S$ p) m: z   }( `1 s( e9 p- G1 [( P

* `! @/ H# U# N" x' B# h1 ]   function notice_details_meta_box($post) {) i4 `: [/ m! S
      wp_nonce_field(basename(__FILE__), 'notices_nonce');
$ Y4 t$ E* _& V  d7 y$ g      $notice_title = get_post_meta($post->ID, 'notice_title', true);
- K% Y0 K/ o! y$ M; q/ V- D/ c      $notice_content = get_post_meta($post->ID, 'notice_content', true);
5 _7 s* `$ C% ?0 f6 m- g0 X      ?>' |* X0 ^) r' E0 k, A/ u/ X: ^. }& G
      <p>9 \3 `. V0 T3 Y& Y% D( K" C8 z* a' t
          <label for="notice-title">Notice Title</label><br>' |: `0 `. e! c# e; W
          <input type="text" id="notice-title" name="notice_title" style="width: 100%;" value="<?php echo $notice_title; ?>">, W8 R; P' l! b
      </p>% Y; A: i. O4 _+ R6 `/ Z
      <p>
, u6 C4 V+ a( q; A) E0 d2 r+ K- t          <label for="notice-content">Notice Content</label><br>
( d" C4 n) c# L/ O+ Q2 \2 e          <?php wp_editor($notice_content, 'notice-content', array('textarea_rows' => 10)); ?>* H' Y: Q8 k; f4 s+ |1 L; a
      </p>) E! p7 ^7 d; g2 q
      <?php
/ @4 L; a) L8 ]: X) G   }! Y* L* p3 @4 {. v( ?/ K, {

; ]) N, Q& ]0 X8 ~* _9 U# P- V1 Y   add_action('save_post', 'save_site_wide_notice_meta_box');/ S* [8 [0 M; t# L3 s3 j
   function save_site_wide_notice_meta_box($post_id) {
, Q7 D8 t0 F1 w4 z$ _" y      if (!isset($_POST['notices_nonce']) || !wp_verify_nonce($_POST['notices_nonce'], basename(__FILE__)))
3 G+ ~. _; n6 N8 \* j         return;
9 B8 J$ r: N. z0 T      if (defined('DOING_AUTOSAVE') && DOING_AUTOSAVE)
( n4 W! k$ C8 V6 l         return;
, \5 n3 K" `( i# Q6 C; n# \: x
, T2 U" S) P3 k      if (isset($_POST['notice_title'])) {: ^! T' Q, E$ y- X
          update_post_meta($post_id, 'notice_title', sanitize_text_field($_POST['notice_title']));
3 ]4 q$ n- c+ D; Q6 c      }2 Z$ M4 C' h$ t( p
      if (isset($_POST['notice_content'])) {
8 q  B! h3 ~# {; `3 b' J( D          update_post_meta($post_id, 'notice_content', wp_kses_post($_POST['notice_content']));+ [, Q: n! o- {9 F, n7 \
      }) h; R- A0 p+ q# |2 q' U3 W
   }! D7 M" C! r, F; Q6 H
   ```
( s) z/ k4 F2 B' a- m; q" O* l4 J6 W3 M- @$ h& G% h
   在示例中,我们使用 `add_meta_box()` 函数添加了一个名为 `notice-details` 的元框,用于在编辑页面上显示自定义字段和元数据。在 `notice-details_meta_box()` 函数中,我们使用 `wp_editor()` 函数添加了一个可视化编辑器,用于编辑公告内容。在 `save_site_wide_notice_meta_box()` 函数中,我们使用 `update_post_meta()` 函数将公告标题和内容保存到 WordPress 数据库中。
# Z9 W/ E3 F2 m. a2 m3 V7 |+ O2 S  F% z- V
4. 在前端页面中显示公告:在 WordPress 主题文件中添加以下代码,以在您的网站上显示公告:
) w1 f0 U4 `8 V" O* ~. M+ }% M1 P4 l  {+ ~3 l
   ```
8 n: x& N6 G+ c' G6 x   $args = array(2 m5 D  I+ s( W% D7 L9 }3 d7 v
      'post_type' => 'site-wide-notices',
' R- C+ N- {$ H: W+ V0 V$ C      'posts_per_page' => 3,
% C! I1 y: f9 s# w; T      'order' => 'DESC',$ `, K7 X4 L5 s6 r
      'orderby' => 'date'8 p, t& f$ J0 C+ G# l% y8 u4 u" m
   );
. x3 q- C5 ~! |* r6 a) F   $query = new WP_Query($args);
* A* q) f! ]( _) z  F; B   if ($query->have_posts()) :
- S; u3 D& f& Y# j4 [      while ($query->have_posts()) : $query->the_post(); ?>
3 C3 [! K. O! D' T: J          <div class="notice">% m' Q" T$ U, I, s1 E) J* l
              <h3><?php the_title(); ?></h3>% n7 _/ |+ I8 J" J/ M  z* I
              <div class="notice-content"><?php the_content(); ?></div>: \  b) E2 z% `0 N- \& D
          </div>3 L+ n3 y7 M' H7 U
      <?php endwhile;
5 \7 j& ?5 N- l      wp_reset_postdata();" j& ~) i% r$ \; _7 W) A; E) A; u
   endif;: k; W  S! g- _7 R8 M
   ```# t% }) x; `- R6 D
3 B6 ^# K3 z- _1 \  ~9 i
   在示例中,我们使用 `WP_Query` 类从 `site-wide-notices` 文章类型中获取最近发布的 3 条公告,并在前端页面中循环遍历并显示标题和内容等信息。
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-12-5 16:42 , Processed in 0.069605 second(s), 3 queries , Redis On.

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

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