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

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

[复制链接]

340

主题

529

回帖

3532

积分

管理员

积分
3532
QQ
发表于 2023-5-18 08:34:20 来自手机 | 显示全部楼层 |阅读模式
您可以使用以下方法来快速在 WordPress 后台增加一个全站公告的功能:/ S  P, }6 E! N+ P/ f
9 R, B2 L$ v" |2 n; S
1. 在 WordPress 插件库中寻找可用的公告插件,例如 WP Notification Bars、Announcements、SSP Elegant Notification Bar 等。: ^3 ^- a* J" d/ d
3 a1 i& L  L' ]$ v3 m7 C
2. 安装并激活您选择的插件。您可以在 WordPress 后台的「插件」->「添加新插件」界面中搜索并安装插件,然后在「插件」->「已安装插件」界面中激活它。
, R( D# o. b, b7 s  G  V! |' t4 M7 h( Y7 g- C+ ?
3. 在插件的设置页面中配置您的公告内容和样式。不同插件的设置选项和功能可能会有所不同,但通常都允许您定义公告的文本、链接、颜色、位置等。% U9 N- e' d: d3 Q
% c. j' {# W) {
4. 将公告添加到您的网站上。在插件设置页面中完成公告的设置后,您可以通过编辑 WordPress 主题的代码或使用插件提供的方法将公告添加到您的网站中。不同插件可能使用不同的添加方法,具体请查看详细说明或联系插件作者。. Z) g0 `4 z5 J1 c7 o) e3 V
' y; o9 m% ^1 r! y$ x7 ^( q, n& `
注意,如果您使用的 WordPress 主题已经包含了公告功能,或使用了其他公告插件,可能会导致冲突或功能重复。如果您遇到了这样的问题,请查看主题文档或联系主题作者以获取解决方案。
回复

使用道具 举报

340

主题

529

回帖

3532

积分

管理员

积分
3532
QQ
 楼主| 发表于 2023-5-18 08:34:51 来自手机 | 显示全部楼层
如果是自己开发的话,具体要怎么做?/ Q* ?. M# G* I! S& h9 l2 x' e1 [
! O* I% W( K" M& m1 e( `0 ~
如果您自己开发 WordPress 主题或插件,并且需要在后台中增加一个发布全站公告的功能,可以按照以下步骤操作:! ~  u8 g$ g0 S+ V
% v! E* U8 N0 h9 |3 p
1. 创建一个自定义的 WordPress 后台页面。您可以使用 `add_menu_page()` 或 `add_submenu_page()` 函数来创建一个自定义后台页面,例如:
8 |1 g' \1 B2 c7 @
' h* V( ?' m1 h3 w2 O   ```
) B7 o9 I3 }7 @# b9 ^) T, k   add_menu_page(4 b& b/ K, H7 j. R+ |% e) x; P
       '全站公告',0 V! D2 _* P# i1 X5 O9 j
       '全站公告',' ?2 {- G7 o3 e' V( Z
       'manage_options', //需要的用户权限
: S; a2 R, i+ Q3 a3 e       'site-wide-notice', //后台页面的 slug
/ A9 c/ I" g' E! g- P       'render_site_wide_notice_page', //用于渲染后台页面内容的函数* `; g+ ~- K( _0 [, t; u& j
       'dashicons-megaphone', //用于显示在菜单中的图标3 d$ c  {% M" b% ?! q/ T) Y- t
       30 //菜单项的位置/ Z- n1 w8 T% L3 I' Z+ ]" Q
   );
, K( p, W! C! b% k   ```: ]0 m$ ], B. L* h4 S$ R( [' E
/ n  o, X+ a! I( y
   在该示例中,我们使用 `add_menu_page()` 函数来创建了一个名为“全站公告”的菜单项,并指定需要的用户权限(`manage_options`),在后台页面的 slug 为 `site-wide-notice`,用于渲染后台页面内容的函数为 `render_site_wide_notice_page`,在菜单中显示的图标为 `dashicons-megaphone`,菜单项的位置为 30。
- B/ B4 K% R. l* ^- I  A5 R
/ A2 U4 b" Q% G! @( C2. 编写用于显示和保存全站公告内容的代码。您可以在自定义后台页面中创建一个表单,让用户输入公告的标题、内容等信息,并将这些信息保存到 WordPress 数据库中的某个表中。例如:
4 x( h6 v2 `5 ~0 s# B) C5 V* A. }1 X( ]
   ```
" M5 n0 }( o$ W0 ?3 Q   function render_site_wide_notice_page() {% g. C" {8 r$ V, m$ g7 N
      // 渲染后台页面内容
" m. ]7 G# I$ h2 j+ d5 D+ d5 |      echo '<div class="wrap">7 _! S& y  N1 m6 R# i
          <h2>全站公告</h2>
7 {$ Z4 j4 A+ c+ U          <form method="post" action="">
# C, ?8 n% `' h/ O# ?+ z) |$ Y/ L              <label for="title">公告标题:</label>
+ f( K7 ^4 l: {3 `              <input type="text" name="title" value="'.get_option('site_wide_notice_title').'"><br><br>1 i) u) Q5 k- T0 [0 Z
              <label for="content">公告内容:</label>+ x! u! p5 G- C
              <textarea name="content">'.get_option('site_wide_notice_content').'</textarea><br><br>* G$ b- o; Y. e; A
              <input type="submit" name="submit" value="保存设置">2 K0 D  z8 |* l/ R; ]
          </form>
; l6 p1 Y4 i8 Y. H      </div>';4 e, V; I. ?6 M! W$ n5 {, E

* e2 V, |: D1 d; f0 m& D- W% D      // 处理表单数据1 |, G) s9 o: f
      if (isset($_POST['submit'])) {" p, b( r& ^$ Q
          update_option('site_wide_notice_title', sanitize_text_field($_POST['title']));
% E2 y9 }2 B- D* y          update_option('site_wide_notice_content', sanitize_text_field($_POST['content']));4 n% C4 ^" X1 A7 F( N7 Z
      }  ]- \+ J$ N( h& }, H5 H
   }
+ q3 y4 }  q, K   ```
; C  E5 z! F5 K% J' ~2 S. E3 o& Y4 R/ v
   在该示例中,我们创建了一个表单,让用户输入公告的标题和内容,并使用 `update_option()` 函数将这些数据保存到名为 `site_wide_notice_title` 和 `site_wide_notice_content` 的 WordPress 配置项中。如果用户点击提交按钮,则将表单数据更新到配置项。. F2 N, z, q3 s: O

$ [4 _0 S* c0 a1 q9 B1 v7 J5 H3. 在 WordPress 主题中显示全站公告。您可以通过在 WordPress 主题的 `header.php` 文件中添加代码,将公告内容显示在网站的顶部或其他位置。例如:0 S/ h; p, X: r  Z/ }1 P

# I6 W9 b6 E* R- {$ ?0 P   ```
! C6 q. G& h, [7 Q/ Y$ t# t   <?php- Q8 @0 P" Y; q2 \% K
   $site_wide_notice_title = get_option('site_wide_notice_title');, y0 ], U8 ?; b5 V  p
   $site_wide_notice_content = get_option('site_wide_notice_content');* M7 b! ~( E7 q- u0 N$ c! H( [
   if (!empty($site_wide_notice_title) || !empty($site_wide_notice_content)) {
% z: C+ s0 h5 R/ ~9 U. q2 |       echo '<div class="site-wide-notice">';
; J% G& j% Y& Q. G( d4 r  H       if (!empty($site_wide_notice_title)) {4 w! v( J- ~: u( g$ M  r$ G1 j
           echo '<h3>'.$site_wide_notice_title.'</h3>';
/ B" E( \/ m" S1 Q3 `% b3 z: _       }
% j8 f- {7 ~. z8 f3 v       if (!empty($site_wide_notice_content)) {" G( V+ ^6 u' X
           echo '<p>'.$site_wide_notice_content.'</p>';, \. x" m- O7 ^7 I
       }; O5 R0 @: S4 o2 p6 K  e6 K
       echo '</div>';
1 z5 d  A3 o# C   }
, d6 q7 O* x/ B0 @/ p1 e1 h   ?>
9 p( t5 |3 O4 l3 R& v   ```: n; ]0 F6 [: j0 \  x

- V5 a: A" N  O+ G6 X& n6 H/ Q/ V   在该示例中,我们检查 WordPress 配置项中名为 `site_wide_notice_title` 和 `site_wide_notice_content` 的值是否为空,如果不为空,则在 `header.php` 文件中添加一个名为 `site-wide-notice` 的容器,将公告标题和内容显示在其中。
* c* d' M/ H! P
6 s0 C9 j5 g2 s/ N0 J- E请注意,本示例仅提供了一个框架,具体实现可能会根据您的需求和实际情况有所不同,您需要根据自己的需要进行修改和调整。同时,为了确保安全性,您还会需要对用户输入的数据进行适当的验证和过滤,例如使用 `sanitize_text_field()` 函数来过滤表单数据。
回复

使用道具 举报

340

主题

529

回帖

3532

积分

管理员

积分
3532
QQ
 楼主| 发表于 2023-5-18 09:26:50 来自手机 | 显示全部楼层
那如果需要发布多条公告,并进行管理,要如何实现?
. i' @& A( i/ R) k# J
1 e. B- L6 e" Y您可以创建一个自定义的 WordPress文章类型,例如“公告”,并对其进行自定义化,以实现发布多条公告并进行管理的功能。以下是具体步骤:
# |+ y. }' U1 ~
- |( K( v5 h  a* S- v  F) m/ r% j1. 创建一个自定义的文章类型:在你的主题 `functions.php` 文件中,添加以下代码:6 U6 D! g2 P& a. v, @
% F5 C0 c/ Q/ B* L. }
```  n0 D$ f! o; [4 M
function create_custom_post_type() {
% _8 i( ]+ O6 z( q! m    $args = array(- D* Q7 q0 Q  j0 T! X2 n: |  g; l
        'labels' => array(
  u: x# Q$ h- s# C- L            'name' => '公告',; ?  y9 d6 m3 }% f* I
            'singular_name' => '公告'
/ i5 ?, w2 S( s9 U        ),
3 b- v% y( N* i$ E& F: k        'public' => true,  U- [4 E) v& _5 l  O# M9 u8 g0 y
        'has_archive' => true,
7 q1 K$ k6 @( n' A        'supports' => array('title', 'editor', 'thumbnail', 'excerpt', 'custom-fields', 'revisions'),$ [# ]% \$ z4 }1 ]7 B( x% {
        'taxonomies' => array('category', 'post_tag'),7 H4 |5 o) x' C5 |
        'menu_icon' => 'dashicons-megaphone',  l$ n/ j4 ?$ w0 d
        'menu_position' => 5,
0 }0 `2 M- N, I' ?. l1 X        'rewrite' => array('slug' => 'site-wide-notices')3 E8 q2 h4 T$ k; S
    );# I3 U" r+ o! k6 O8 i: |$ U: W1 d: r
    register_post_type('site-wide-notices', $args);
+ ]2 _3 Y8 W5 U+ F! A+ T}/ |% Z- T8 Q1 O6 |
add_action('init', 'create_custom_post_type');
& B! ~" x8 p" o$ j4 k* j6 W5 I```
" u: ]% E1 v2 Z
/ s' J3 U' _! ^, O在示例中,我们注册了一个名为 "site-wide-notices" 的新的文章类型,并定义了文章类型名称、缩略名、文章类型支持的功能、分类法、管理菜单图标等设置。/ K: l, O) \. L

3 s$ I. [% i1 x: o1 Y2. 在你的 WordPress 后台中创建新文章类型“公告”:现在,你就可以在 WordPress 后台中通过导航到“公告”菜单,来添加、编辑或删除公告了。您可以在编辑公告的页面中添加标题、内容、特色图像或其他自定义的元数据字段。/ R7 o0 e, u( y3 O2 n& W# o

7 j- Z) ~5 X& t5 T; `- F  o3. 在主题中显示公告:在您的 WordPress 主题文件中添加以下代码,以在您的网站上显示公告:( x) h  k6 ^3 _" B

; @! i3 ^! K% Z1 W5 m4 `' Z* h```
7 w7 V% Y5 F1 s- A% x0 V( B- P$args = array(5 G' b4 s$ e1 {# v
    'posts_per_page' => 3, // 显示的公告数量9 }% S) Q- X# s- G0 [
    'post_type' => 'site-wide-notices', // 公告文章类型
5 a  i! F/ e/ a# I3 t# F) q7 g    'post_status' => 'publish', // 公告状态
- @6 ?9 m; _* w% s4 c3 K3 ]& t    'order' => 'DESC' // 排序方式
5 t3 c) S7 U" `; R; `" H);8 [+ h: Z. z, J: l3 J

; ~" o1 _3 M% L: g6 ?5 f9 Y. K7 N$notices = new WP_Query($args);( L  P4 x- e$ L
if ($notices->have_posts()) :
  w& L: Y, ^) R( m7 P7 d    while ($notices->have_posts()) : $notices->the_post(); ?>
6 t1 W8 f9 M* e& d        <div class="notice">3 X$ h% U/ {/ s& s
            <h3><?php the_title(); ?></h3>
$ z" ?2 K& ?+ L/ I: f$ m( G7 e( j# m: u            <div class="notice-content"><?php the_content(); ?></div>
. Y" P* D. f! R  L. g" J" h        </div>
+ T% t! [0 ?2 g# J    <?php endwhile;
' A) H/ o1 b; C1 |$ c/ Pelse :! ?/ K- Y( Z* i# a& o
    echo "暂无公告";
  Q( j% b- ~; z  d- P* l& F+ c# yendif;
5 s1 t7 \2 S7 U2 pwp_reset_query();/ W& M- o% K7 F4 J; S! E0 |6 O
```
/ e5 [9 O4 D+ u8 i: M4 w, Y$ }0 [6 \) w
, M' f0 Q3 g5 I5 N3 ~这段代码将使用 WordPress 的 `WP_Query` 类从公告文章类型中获取最新发布的 3 条公告,并在前端页面中循环遍历并显示公告标题和内容等信息。
- U0 k7 K' i; h; i* y( q
! X' m2 J" G5 N3 Q% h) W以上便是实现 Wordpress 后台发布多条全站公告的基本步骤。需要注意的是,自定义文章类型可对应多篇文章,具体根据您的需求进行调整。
回复

使用道具 举报

340

主题

529

回帖

3532

积分

管理员

积分
3532
QQ
 楼主| 发表于 2023-5-18 09:27:55 来自手机 | 显示全部楼层
如果不想修改functions.php,有其他更好的办法吗?
6 O3 R, c# Q  B) O, ~
  X: n3 J/ E9 W/ H9 d% H! c2 V如果您不想修改主题 `functions.php` 文件,也可以创建一个自定义插件来添加新的文章类型。
8 S  K! P: a; n
) g& M4 \, j5 a0 |; G9 O, j$ |以下是创建自定义插件的步骤:
1 T6 y$ J0 I% ?8 a9 Z
7 q% A+ ~% l% x& Q4 p' C( ^, m1. 创建新插件:在 WordPress 插件目录中创建一个新的子目录,例如 `site-wide-notices-plugin`,然后在该目录中创建一个新的 PHP 文件,例如 `site-wide-notices-plugin.php`,并在文件头部添加必需的标记,例如:
2 n2 w: z+ ^. h/ {( s) D9 l
2 G% Q# a) X# t) M8 h) V   ```
$ A: V: y. I, l7 k. L   <?php
" s+ H3 P4 T9 t6 P   /*
: Y& K* d7 P3 c* w   Plugin Name: Site Wide Notices Plugin
+ }8 }- c/ @* \. C8 {$ v5 Z   Description: Adds a new custom post type for site-wide notices.4 O# C' H' G& R; A9 }  m0 N
   Version: 1.0
3 U' F2 _0 R: K  j   Author: Your Name* v6 O0 j# W  r
   Author URI: http://example.com
" q* `5 L- A% n6 A* e* H   */
, m2 D/ ~5 N; Z$ ^4 Z3 p, T, I" a* J; S* G$ k! w
   // Add plugin code here..." ~4 O1 X! O! d( J
   ```
4 k  h: @. d* I$ {. j
1 \! @6 \* q6 s% y9 S5 {" c# y2 j% B   在示例中,我们创建了一个名为 `Site Wide Notices Plugin` 的新插件,该插件添加了一个新的自定义文章类型,并指定了版本、作者和作者 URI 等元信息。
( D6 ^& ?" _' Z. u
* K2 b( ~8 [4 X$ l  J2. 在插件中注册新的文章类型:在 PHP 文件中添加以下代码,用于注册一个名为“site-wide-notices”的自定义文章类型:
1 w; m6 V) R: c+ N' q, P  r* |& b; [1 w. A$ v  u' O( Q+ R: X
   ```5 L8 R, N) u$ K' q  V0 D
   add_action('init', 'create_custom_post_type');
. t- D( A! f% {  ~& e   function create_custom_post_type() {
" W: j! x0 `; a0 _7 O      $labels = array(
* }& v3 j9 @7 H* B" ^          'name' => 'Site Wide Notices',
! k0 ~6 F$ z8 C9 l  n4 u/ c          'singular_name' => 'Site Wide Notice',
+ |& t( M+ K: g( E" |+ g3 p( R          'add_new' => 'Add New',# T3 T5 _) `6 W. i( \; X
          'add_new_item' => 'Add New Site Wide Notice',
7 b( t& I: t$ I          'edit_item' => 'Edit Site Wide Notice',' k) N% \3 J! H( j4 o
          'new_item' => 'New Site Wide Notice',$ O3 q8 G! r4 X& f6 ~  H
          'view_item' => 'View Site Wide Notice',0 S5 D$ S7 E% |! B- ~  X, Y. k& r
          'search_items' => 'Search Site Wide Notices',
/ T' [( C5 d: V8 j. P2 v! y          'not_found' => 'No site-wide notices found',% M+ k/ k& F) ^. L7 A$ i3 P
          'not_found_in_trash' => 'No site-wide notices found in trash'
4 T: W. s5 n3 r: O3 K      );1 L1 Z3 s- B7 e: B' `8 _
# S% W2 X/ h$ Y$ U4 t
      $args = array(
1 [- }$ {5 T( J  D- n" a          'labels' => $labels,
) s$ \& |" M& W: G5 |          'public' => true,0 {# |6 y* c/ T. X& P
          'has_archive' => true,
+ N# F0 @8 {' Z2 w5 P# x          'supports' => array('title', 'editor', 'thumbnail', 'excerpt', 'custom-fields', 'revisions'),1 X: h* y: d! j1 r2 }
          'taxonomies' => array('category', 'post_tag'),
1 b' C" C" {4 O8 c; u3 i          'menu_icon' => 'dashicons-megaphone',9 J* v% g7 B2 a
          'menu_position' => 5,' k' Y0 H! a; o% t1 v
          'rewrite' => array('slug' => 'site-wide-notices')
  I( {) w" h9 E  _3 [      );: o, y2 |! Z! T, ^

8 U0 ^/ i! P, |; V& l      register_post_type('site-wide-notices', $args);
% q/ ]( x# n9 c0 v% O   }& R; C1 P. A# ^; A  \4 E) i
   ```/ x: f" @. B- _: E* R& a

0 ?0 f5 c/ a+ [  O, T   在示例中,我们使用 `register_post_type()` 函数注册一个新的文章类型,并定义了该文章类型的名称、标签和其他设置。$ M! A. ]6 u$ Z1 r, e& l
# e9 t/ X2 q, L8 f( W
3. 在后台中添加公告编辑页面:您可以使用 `add_meta_box()` 函数在后台中添加公告编辑页面,并自定义字段和元数据,例如:1 O& S. i* C* G0 X

# j# E5 o1 I" R6 Q4 r: K3 p) Z   ```. L; g5 j$ G% k: u! f3 ?
   add_action('add_meta_boxes', 'add_site_wide_notices_boxes');: X! h5 A9 q6 {. K) _5 I* \1 a
   function add_site_wide_notices_boxes() {
* l6 l5 k# h( g7 Y      add_meta_box('notice-details', 'Notice Details', 'notice_details_meta_box', 'site-wide-notices', 'normal', 'high');
+ R% ?6 w* R/ K. ~6 [+ C   }
! S  e- |9 G2 E( S3 U) h7 M+ j1 i  v
   function notice_details_meta_box($post) {
1 ^! ^' x! r4 [8 d) P/ A) U; f' B      wp_nonce_field(basename(__FILE__), 'notices_nonce');
8 H/ ~$ Q5 [9 W, O      $notice_title = get_post_meta($post->ID, 'notice_title', true);
. q3 I6 y' y" b: e- k8 ?! l' ~0 c      $notice_content = get_post_meta($post->ID, 'notice_content', true);
. B) m) _$ l* w/ k: M  e      ?>0 d* N; s, Q1 H1 _* c
      <p>
6 B3 }. t% C( F. e          <label for="notice-title">Notice Title</label><br>  S/ p) _) n8 t) R8 G1 O" a
          <input type="text" id="notice-title" name="notice_title" style="width: 100%;" value="<?php echo $notice_title; ?>">
+ [' u* U9 b% q1 U3 }/ ^      </p>% U9 U+ j! a5 b4 }
      <p>8 n, s9 I; ?5 c( d* g7 o6 D/ P
          <label for="notice-content">Notice Content</label><br>
5 f' d9 g0 ~+ g/ C          <?php wp_editor($notice_content, 'notice-content', array('textarea_rows' => 10)); ?>
. `( h# @% D* x      </p>4 w4 O  I( I5 m  x7 M
      <?php  I& T7 L/ G" o. ^! B) Q  n2 g
   }5 D) N8 C0 E% L( v7 z, `" ]& ?2 o
* E) U, f$ [) k% K. j, B5 e
   add_action('save_post', 'save_site_wide_notice_meta_box');$ L) y6 G7 C/ L# s" J
   function save_site_wide_notice_meta_box($post_id) {
6 J9 {0 K/ {8 z      if (!isset($_POST['notices_nonce']) || !wp_verify_nonce($_POST['notices_nonce'], basename(__FILE__)))5 }! S/ G3 x; L1 _* t
         return;
! {0 u. J( G8 D( f      if (defined('DOING_AUTOSAVE') && DOING_AUTOSAVE)
! n" C! G2 o: ^8 @7 N8 ~6 h         return;
0 S2 O, L# ^8 l& b9 m/ Y
/ h$ u1 o6 d1 |4 Y& Z& O      if (isset($_POST['notice_title'])) {6 N  y; F7 [- q6 ]
          update_post_meta($post_id, 'notice_title', sanitize_text_field($_POST['notice_title']));- E& f8 q# @6 y' w! d; b6 A* h
      }
- E1 H' B" q# F% e$ g( r, d      if (isset($_POST['notice_content'])) {
  m0 F8 S* n6 l) F4 X1 G5 B. r          update_post_meta($post_id, 'notice_content', wp_kses_post($_POST['notice_content']));
' c$ Z% e4 m$ @1 t, e      }
6 j4 Q1 o) L$ {  h   }
  H9 q# \+ ~* X, A8 ]2 [   ```" P- c1 C, j+ O* C2 k$ r
& u: ]/ d; z; o' j) M; Y
   在示例中,我们使用 `add_meta_box()` 函数添加了一个名为 `notice-details` 的元框,用于在编辑页面上显示自定义字段和元数据。在 `notice-details_meta_box()` 函数中,我们使用 `wp_editor()` 函数添加了一个可视化编辑器,用于编辑公告内容。在 `save_site_wide_notice_meta_box()` 函数中,我们使用 `update_post_meta()` 函数将公告标题和内容保存到 WordPress 数据库中。
5 T1 b0 c' n7 I3 J) X
- f3 @7 [: c: u$ k6 E4. 在前端页面中显示公告:在 WordPress 主题文件中添加以下代码,以在您的网站上显示公告:9 o0 n3 V9 \& L& n
. H  c% _- \: N* p1 g# h
   ```; V$ s' T* e' w7 ]% S. ^
   $args = array(
, {( y+ q  f* P* |0 Z0 r* y) s4 n      'post_type' => 'site-wide-notices',& ?! W0 h* {/ N" |2 ^( J& t6 x
      'posts_per_page' => 3,- N: F6 m$ \! T7 R  v9 A1 N
      'order' => 'DESC',
& \4 j& G; ^( t, x  [" ~      'orderby' => 'date'
$ T9 G4 h" M( h4 n  O4 \+ H   );
  L6 N8 n5 y- Z" b   $query = new WP_Query($args);' a; T3 Z6 i0 N, k$ w3 X& _- x
   if ($query->have_posts()) :
% o+ ?6 Q$ H% P: I3 V7 C: I6 K9 v      while ($query->have_posts()) : $query->the_post(); ?>
( y7 ?# Q/ _2 V: |5 q, A          <div class="notice">: G7 K+ P5 A* ~9 F- C' f. U9 I
              <h3><?php the_title(); ?></h3>
( S- e# {  E3 G8 G1 v, f& E              <div class="notice-content"><?php the_content(); ?></div>
* k* N. ~5 t. w+ K9 N          </div>. g) J& P" `, k/ ?# \" g4 k& D8 ?
      <?php endwhile;6 _% J6 D& @) Q; w$ z: D
      wp_reset_postdata();
  b: }* ]& }) N. H8 U0 m  v" m   endif;
8 `7 ]0 r3 K4 \4 @+ [% l4 k   ```, D9 {' u4 Z; W2 [9 P# E

9 j" |: {" o7 _" j: P   在示例中,我们使用 `WP_Query` 类从 `site-wide-notices` 文章类型中获取最近发布的 3 条公告,并在前端页面中循环遍历并显示标题和内容等信息。
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2026-1-20 03:54 , Processed in 0.015642 second(s), 3 queries , Redis On.

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

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