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

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

[复制链接]

331

主题

511

回帖

3355

积分

管理员

积分
3355
QQ
发表于 2023-5-18 08:34:20 来自手机 | 显示全部楼层 |阅读模式
您可以使用以下方法来快速在 WordPress 后台增加一个全站公告的功能:
* \, F2 p( _  [; W( Y
& d) S( o; X$ Y5 f4 m! y1. 在 WordPress 插件库中寻找可用的公告插件,例如 WP Notification Bars、Announcements、SSP Elegant Notification Bar 等。( P! Q8 F0 ^% `' a! _# x1 ]

* X/ L  }' F9 i2. 安装并激活您选择的插件。您可以在 WordPress 后台的「插件」->「添加新插件」界面中搜索并安装插件,然后在「插件」->「已安装插件」界面中激活它。6 `5 i3 a4 A" {2 [4 U4 j# b% ~3 U2 T

" t9 x1 ?% N9 g3. 在插件的设置页面中配置您的公告内容和样式。不同插件的设置选项和功能可能会有所不同,但通常都允许您定义公告的文本、链接、颜色、位置等。; f% _  x* z/ G  V7 \) A! e' b0 D

6 @3 V+ a' L" }4. 将公告添加到您的网站上。在插件设置页面中完成公告的设置后,您可以通过编辑 WordPress 主题的代码或使用插件提供的方法将公告添加到您的网站中。不同插件可能使用不同的添加方法,具体请查看详细说明或联系插件作者。
0 y# H+ X+ p3 ?$ p3 l' |
% V4 b) \* P( N3 r* \8 D/ D注意,如果您使用的 WordPress 主题已经包含了公告功能,或使用了其他公告插件,可能会导致冲突或功能重复。如果您遇到了这样的问题,请查看主题文档或联系主题作者以获取解决方案。
回复

使用道具 举报

331

主题

511

回帖

3355

积分

管理员

积分
3355
QQ
 楼主| 发表于 2023-5-18 08:34:51 来自手机 | 显示全部楼层
如果是自己开发的话,具体要怎么做?+ B% v0 r) T7 `3 R" Z0 U! d7 g
( h* c4 o; ~  z( u! p2 V" t
如果您自己开发 WordPress 主题或插件,并且需要在后台中增加一个发布全站公告的功能,可以按照以下步骤操作:2 Z. E$ U5 ^! t9 K
: s8 j6 j7 s/ \& x7 L6 A
1. 创建一个自定义的 WordPress 后台页面。您可以使用 `add_menu_page()` 或 `add_submenu_page()` 函数来创建一个自定义后台页面,例如:9 N# b% _2 W7 x) D, i; ^" L) x

, p# q: h; Y3 P   ```
1 h/ |3 @+ h" d   add_menu_page($ K: ^" j+ N- t3 ^/ @( ~2 S
       '全站公告'," e  S' r' N" u) n! B( C! R
       '全站公告',! N, M& `/ C6 S3 M# k4 }
       'manage_options', //需要的用户权限
8 o! Y3 Z0 f  I       'site-wide-notice', //后台页面的 slug6 P3 b2 D# d4 \# e
       'render_site_wide_notice_page', //用于渲染后台页面内容的函数% A, Z& O$ r5 ?. j
       'dashicons-megaphone', //用于显示在菜单中的图标
3 X; U. l9 E3 y! l( x- u+ }+ g       30 //菜单项的位置$ l' b' g0 u! R$ c, |' C" O4 S" M
   );: a  \" Q) a5 C) p* i( y! U
   ```6 N9 S& e( n/ C* N. n9 q

  F- ?+ y+ S: w6 D( p1 \5 ]% G   在该示例中,我们使用 `add_menu_page()` 函数来创建了一个名为“全站公告”的菜单项,并指定需要的用户权限(`manage_options`),在后台页面的 slug 为 `site-wide-notice`,用于渲染后台页面内容的函数为 `render_site_wide_notice_page`,在菜单中显示的图标为 `dashicons-megaphone`,菜单项的位置为 30。# u! i/ `& i  f
2 B! b' `/ G% a' ]9 @
2. 编写用于显示和保存全站公告内容的代码。您可以在自定义后台页面中创建一个表单,让用户输入公告的标题、内容等信息,并将这些信息保存到 WordPress 数据库中的某个表中。例如:
' a8 W; @. G% z+ v
! ?: \9 X, ~# Q   ```! d8 `2 n- D8 B7 C9 M2 M
   function render_site_wide_notice_page() {
$ ~, B! Z9 ?9 D3 T# E. y+ O      // 渲染后台页面内容( }; t# r  K# _2 y/ @% U7 u) s
      echo '<div class="wrap">
& R% H$ X1 z3 ?, F5 b' H          <h2>全站公告</h2>3 }" N8 D& `- a9 @5 S7 r
          <form method="post" action="">. {7 V5 E3 C6 Y4 ?# G# U
              <label for="title">公告标题:</label>4 q/ T- b4 W- i5 ]$ I
              <input type="text" name="title" value="'.get_option('site_wide_notice_title').'"><br><br>
$ E! r5 k* Y7 l" k, z! y. Z! T              <label for="content">公告内容:</label>
7 j* |+ U; L7 y0 k) i% v              <textarea name="content">'.get_option('site_wide_notice_content').'</textarea><br><br>- i: t3 m6 }# Y& F* X8 A
              <input type="submit" name="submit" value="保存设置">
3 w; ~* |0 n% \4 |          </form>
& G$ X# [& f1 m0 e, i2 H- ]      </div>';
& x- `5 c$ i! l: U, ^
2 w0 S- `$ [. ?: M5 m' \      // 处理表单数据
4 \! G* c# C; y1 h- N      if (isset($_POST['submit'])) {+ L2 p2 R  Z* y- E- {1 |
          update_option('site_wide_notice_title', sanitize_text_field($_POST['title']));
3 W* a1 x! W7 z5 ~, D9 A! B          update_option('site_wide_notice_content', sanitize_text_field($_POST['content']));
& X9 o! _. v5 f3 y, s! o. M& _      }/ y- i! T3 E. i; f
   }) P2 b7 E  m/ _1 P3 X
   ```5 h) |0 J# v8 m2 x2 Z' \! }2 n

& ]( D- k/ }/ ^# s   在该示例中,我们创建了一个表单,让用户输入公告的标题和内容,并使用 `update_option()` 函数将这些数据保存到名为 `site_wide_notice_title` 和 `site_wide_notice_content` 的 WordPress 配置项中。如果用户点击提交按钮,则将表单数据更新到配置项。
- j* d. N# u6 e6 A
- l+ O6 f9 @  P  f3. 在 WordPress 主题中显示全站公告。您可以通过在 WordPress 主题的 `header.php` 文件中添加代码,将公告内容显示在网站的顶部或其他位置。例如:) z- a: c* s. K# a# Q( M$ k
# A! Q) t7 W" F
   ```/ ^4 d. V2 b) o5 j, Y% }# o
   <?php' h% `4 u" n+ E  {1 T& {" J, B9 I
   $site_wide_notice_title = get_option('site_wide_notice_title');
5 [" T6 P. F) h4 D# S. ~) Q   $site_wide_notice_content = get_option('site_wide_notice_content');  j) O! W: W* W* R; L; \! f7 z
   if (!empty($site_wide_notice_title) || !empty($site_wide_notice_content)) {
# X" T0 S8 `, c% J+ |; u2 E       echo '<div class="site-wide-notice">';: f" q$ h3 J% `4 k0 W- H
       if (!empty($site_wide_notice_title)) {
7 ^& O4 t7 T! M5 q: n# m           echo '<h3>'.$site_wide_notice_title.'</h3>';
% e% t3 ~  G4 l( l$ \' Z2 v3 \       }) b9 ^4 J/ k* \9 O
       if (!empty($site_wide_notice_content)) {; C* I* r+ V  p/ X
           echo '<p>'.$site_wide_notice_content.'</p>';9 ~+ O, a) F3 N: l' U4 C( p# L
       }6 {5 o9 H( \+ u
       echo '</div>';2 B! T- v. l5 P
   }; s4 l* P  i" ?
   ?>
& n* j' p9 X  Q! C& G) S) x2 m9 M   ```3 T1 l. M' j$ ]+ Q! m. k
( D" n% D  i0 X+ X
   在该示例中,我们检查 WordPress 配置项中名为 `site_wide_notice_title` 和 `site_wide_notice_content` 的值是否为空,如果不为空,则在 `header.php` 文件中添加一个名为 `site-wide-notice` 的容器,将公告标题和内容显示在其中。9 }, @3 E1 P+ r# E

% q7 [3 I. T* X7 f' r3 N1 T5 W& k* a请注意,本示例仅提供了一个框架,具体实现可能会根据您的需求和实际情况有所不同,您需要根据自己的需要进行修改和调整。同时,为了确保安全性,您还会需要对用户输入的数据进行适当的验证和过滤,例如使用 `sanitize_text_field()` 函数来过滤表单数据。
回复

使用道具 举报

331

主题

511

回帖

3355

积分

管理员

积分
3355
QQ
 楼主| 发表于 2023-5-18 09:26:50 来自手机 | 显示全部楼层
那如果需要发布多条公告,并进行管理,要如何实现?% ^- R: y$ S/ m7 b" ~
2 z5 U/ Y. r4 d8 |' C. R$ @
您可以创建一个自定义的 WordPress文章类型,例如“公告”,并对其进行自定义化,以实现发布多条公告并进行管理的功能。以下是具体步骤:
$ I1 a' u0 Y1 n7 Z' E
- s% c. R3 F) ^  O1. 创建一个自定义的文章类型:在你的主题 `functions.php` 文件中,添加以下代码:9 K3 x3 L0 n2 C3 P) C

/ v5 W4 f8 b" Q6 m5 X```
# r5 m' J" Z$ @, r/ Q# pfunction create_custom_post_type() {. r+ w) v; y; O4 }: f' Q
    $args = array(
1 b* s+ D: g3 M7 R. c/ n4 ?8 z        'labels' => array(1 z' J; l5 v) @
            'name' => '公告',
2 h' h0 T9 V+ l            'singular_name' => '公告'
/ w/ v+ K4 {- H" i+ I! Z# S        ),( c  D  D! E& F8 {8 q( W% h
        'public' => true,
/ E6 q3 S, L0 D. k4 m        'has_archive' => true,
8 R3 D: T8 l  b) h) d        'supports' => array('title', 'editor', 'thumbnail', 'excerpt', 'custom-fields', 'revisions'),* s- i7 {9 W/ d) O. r
        'taxonomies' => array('category', 'post_tag'),1 d. E" }/ c0 V
        'menu_icon' => 'dashicons-megaphone',
* A3 s6 U( @: w        'menu_position' => 5,
; m2 [9 W0 A: D% e; U( {0 b        'rewrite' => array('slug' => 'site-wide-notices')6 f- V, [& f; m4 k
    );
3 ~8 \" l  G6 v    register_post_type('site-wide-notices', $args);
  a$ |' s: ]5 N% o) U4 _}9 h* w1 B+ Y6 p% f  B  ?
add_action('init', 'create_custom_post_type');0 e! H. i, z" M) N! r# |1 Z
```
6 z, X' g# \& e; t, m
0 z. S+ Q$ m+ K0 S( \在示例中,我们注册了一个名为 "site-wide-notices" 的新的文章类型,并定义了文章类型名称、缩略名、文章类型支持的功能、分类法、管理菜单图标等设置。
0 ^( q- \( U" A; N/ e' `/ n" U* T( K3 n
2. 在你的 WordPress 后台中创建新文章类型“公告”:现在,你就可以在 WordPress 后台中通过导航到“公告”菜单,来添加、编辑或删除公告了。您可以在编辑公告的页面中添加标题、内容、特色图像或其他自定义的元数据字段。- |) H) K) ~; a+ l( f- o4 D9 f
- U/ `; }0 w6 V0 S0 ~7 C( v) U* j
3. 在主题中显示公告:在您的 WordPress 主题文件中添加以下代码,以在您的网站上显示公告:
% a! B6 `% q  z/ j( ~# L: Z$ e' D0 t; w# q1 l; p
```
& `+ J9 E3 }$ ~! H( H3 v* l$args = array(* t2 [/ W) g& [- n; i4 g
    'posts_per_page' => 3, // 显示的公告数量, o, d, t) \2 [- O* F, g; I; u8 r
    'post_type' => 'site-wide-notices', // 公告文章类型9 n) J  C: M1 B) o
    'post_status' => 'publish', // 公告状态" `  q- _# T. q$ ?& J* ^" g4 K
    'order' => 'DESC' // 排序方式+ G( s9 H) T$ S7 d
);1 G* j4 p( [# Y

$ r7 k* b! b9 Z6 k+ C. K  E. L$notices = new WP_Query($args);
* W" {" p' r6 D4 J% qif ($notices->have_posts()) :" {( a" t! j) E& n# P( c
    while ($notices->have_posts()) : $notices->the_post(); ?>
' P, O. ?/ Y; X# {3 U        <div class="notice">
- k2 x$ q0 P3 C( Q            <h3><?php the_title(); ?></h3>7 M$ U* m, U3 T, ?8 `1 Q3 i' F3 e
            <div class="notice-content"><?php the_content(); ?></div>
. C; Y# P3 k' f- ]6 X0 N- v# v        </div>3 L8 k  |% x/ x! V
    <?php endwhile;4 z4 o& ^7 M) O: h
else :
6 [+ {4 Y7 C+ I" n2 u: s    echo "暂无公告";! ^8 [1 c0 E8 ?8 m  b
endif;  ~* Y) j2 P1 b) L8 N( w
wp_reset_query();% t" h  R& z% @8 N
```
' u1 ~* k  q; i8 D7 N# E. S1 a: {, ^9 D6 ^" L; ~& V
这段代码将使用 WordPress 的 `WP_Query` 类从公告文章类型中获取最新发布的 3 条公告,并在前端页面中循环遍历并显示公告标题和内容等信息。
0 L7 a1 b7 K4 ~! R1 V6 h6 w" e- L
$ }- h) B; Z1 P; ^& S; ?4 N: ^; `. K以上便是实现 Wordpress 后台发布多条全站公告的基本步骤。需要注意的是,自定义文章类型可对应多篇文章,具体根据您的需求进行调整。
回复

使用道具 举报

331

主题

511

回帖

3355

积分

管理员

积分
3355
QQ
 楼主| 发表于 2023-5-18 09:27:55 来自手机 | 显示全部楼层
如果不想修改functions.php,有其他更好的办法吗?
, s' i( P  s7 |9 b1 f7 m/ L. u+ _5 v4 f3 M) Q9 N
如果您不想修改主题 `functions.php` 文件,也可以创建一个自定义插件来添加新的文章类型。2 T. c5 R- U( e0 {

$ p% S+ y& L" o+ [5 N9 f以下是创建自定义插件的步骤:
7 {; L, Y' I9 z, `% s3 @  n- c% K9 z5 ]) Q& ]
1. 创建新插件:在 WordPress 插件目录中创建一个新的子目录,例如 `site-wide-notices-plugin`,然后在该目录中创建一个新的 PHP 文件,例如 `site-wide-notices-plugin.php`,并在文件头部添加必需的标记,例如:" V: Z6 C& z0 T5 s6 g9 V

" Q$ E1 K5 z' X7 D   ```2 R' h( J0 `9 d
   <?php% r9 Y. k9 |) _  o: j9 d
   /*
9 M$ D3 |( {- h   Plugin Name: Site Wide Notices Plugin- ~) T4 c8 \+ }
   Description: Adds a new custom post type for site-wide notices.
! Z4 i' p! y" N6 k- k   Version: 1.0* z# |, b. U# g# U" j
   Author: Your Name- ~8 @, P1 l( F  R
   Author URI: http://example.com
+ X* Y$ B! t3 C   */
" z. c- @. D1 |; o. l: h
' s: [+ d# M& v4 Y9 Q  k   // Add plugin code here...3 \4 R" K6 g4 G( i3 d- V5 q6 A8 R
   ```# b% u% }( A0 d+ l* [6 ~
2 B3 N5 g: b9 ^. G
   在示例中,我们创建了一个名为 `Site Wide Notices Plugin` 的新插件,该插件添加了一个新的自定义文章类型,并指定了版本、作者和作者 URI 等元信息。
  Q& `: b" w* n, W/ z0 z) ]; F3 {' |$ H* J0 H, d
2. 在插件中注册新的文章类型:在 PHP 文件中添加以下代码,用于注册一个名为“site-wide-notices”的自定义文章类型:  Z5 J& z* u* q& y3 G
* N% ]5 T# D* b2 M% K" _; T
   ```
7 @# A" a1 N6 L- J! b# q   add_action('init', 'create_custom_post_type');
; [5 B7 i0 m3 _$ U; `' `   function create_custom_post_type() {6 `6 G# r7 F8 I& g" E) J
      $labels = array(
4 T6 W" c. f$ u  K) s          'name' => 'Site Wide Notices',
" j' e- J. G9 ]          'singular_name' => 'Site Wide Notice',
+ v% A9 L2 O: G% e          'add_new' => 'Add New',
8 }, N; x: S. ^# g) S* M/ B          'add_new_item' => 'Add New Site Wide Notice',2 K' b) G+ K1 B1 }" L
          'edit_item' => 'Edit Site Wide Notice',
: V2 U7 m, Q+ x) b' _          'new_item' => 'New Site Wide Notice',
( ^/ ^+ g  A: U" O% {7 K# x          'view_item' => 'View Site Wide Notice',
# ?: Z( h; `; ~: @0 L7 H          'search_items' => 'Search Site Wide Notices',% h. L4 ]& x; Y# t5 g/ R
          'not_found' => 'No site-wide notices found',
2 P: V7 x  t9 P0 ]          'not_found_in_trash' => 'No site-wide notices found in trash'0 f( e- V8 U* R2 r
      );
# |1 Z( G+ [- }. ^5 U# L1 V( K8 N! @0 @
: l: F# B- i9 M      $args = array(* a+ R) ?8 {& H' k8 c3 V0 i
          'labels' => $labels,
) O0 i8 J  q0 V" h6 ^# h          'public' => true,: m. W  _2 q; ~. I2 I8 Q
          'has_archive' => true,
0 G* H" H2 V# C! t% f+ m$ X8 r& d          'supports' => array('title', 'editor', 'thumbnail', 'excerpt', 'custom-fields', 'revisions'),1 Z3 [0 F8 m9 X% M6 X2 c0 a5 a
          'taxonomies' => array('category', 'post_tag'),$ x5 N) [9 F% l6 Z' a7 i% V! f2 ~; f
          'menu_icon' => 'dashicons-megaphone',
. Z# v1 P9 r- M' S          'menu_position' => 5,
0 p: e' O7 ^8 u7 ~/ d9 ?6 M2 q) @          'rewrite' => array('slug' => 'site-wide-notices')( P8 p0 ~& O6 T
      );3 N$ ^! e( S: @- p) j7 M2 y
- h0 F: P# O0 H
      register_post_type('site-wide-notices', $args);6 e; L/ }. C, ?
   }! R* C; N; T5 ]
   ```" h/ s) U& m; c2 ]! l. g9 x
  I6 ^) j6 [' k  M1 I: C# Y
   在示例中,我们使用 `register_post_type()` 函数注册一个新的文章类型,并定义了该文章类型的名称、标签和其他设置。8 o& i6 ^" b) k3 h

. ^7 B6 Y8 L6 U0 g8 Z( M$ W, d3. 在后台中添加公告编辑页面:您可以使用 `add_meta_box()` 函数在后台中添加公告编辑页面,并自定义字段和元数据,例如:
" B& z9 S+ C* ~6 f
) |$ Y) d1 t+ z3 U) F7 _' e   ```
' l4 c! f3 J: B   add_action('add_meta_boxes', 'add_site_wide_notices_boxes');
" v# `! X# v9 G   function add_site_wide_notices_boxes() {
2 K% Z6 w' D) n* J      add_meta_box('notice-details', 'Notice Details', 'notice_details_meta_box', 'site-wide-notices', 'normal', 'high');6 C: i" w/ p7 p& c' q
   }* U$ V. a& h; R

0 T, A' }/ k1 ^3 y$ @! x" t   function notice_details_meta_box($post) {
9 U- }( D, ]0 v      wp_nonce_field(basename(__FILE__), 'notices_nonce');
. s1 V4 j! [( ^) |5 f: N      $notice_title = get_post_meta($post->ID, 'notice_title', true);
' Y+ ?, g6 ?) j, }5 ?$ l+ L      $notice_content = get_post_meta($post->ID, 'notice_content', true);0 ]8 a+ g& x( B3 z1 L
      ?>. `: X! e1 M1 W# c8 O; {. R
      <p>- i  L& O$ I: x) u9 d* F
          <label for="notice-title">Notice Title</label><br># }4 M# ^" t! I$ O5 w$ K
          <input type="text" id="notice-title" name="notice_title" style="width: 100%;" value="<?php echo $notice_title; ?>">4 E  u% B: m0 Z' ?# M7 M, K
      </p>- v' Y! A& q% R: |) {
      <p>
+ |5 F$ u$ D* _( @! i4 {! J, e/ ?          <label for="notice-content">Notice Content</label><br>/ o, x# B/ R0 n# I+ K
          <?php wp_editor($notice_content, 'notice-content', array('textarea_rows' => 10)); ?>- z( D- k4 x0 T
      </p>; O/ u: N& Y: M
      <?php
% }$ M8 o3 l5 k. ?6 g0 G3 ?  ~   }% n- O% |9 o6 B: `& r

7 R  f9 G8 x, C- @/ O7 n   add_action('save_post', 'save_site_wide_notice_meta_box');
  w2 |: Z0 Q8 x  s   function save_site_wide_notice_meta_box($post_id) {$ t8 v) T( O+ W# P
      if (!isset($_POST['notices_nonce']) || !wp_verify_nonce($_POST['notices_nonce'], basename(__FILE__))): F  U; g- |4 E- E" y
         return;
  U/ R. G  @; x" ^' u- v      if (defined('DOING_AUTOSAVE') && DOING_AUTOSAVE)
0 c0 _/ T+ M. W3 M         return;5 ~; g1 p* W" D! `
* M& T' y# i' Z0 m
      if (isset($_POST['notice_title'])) {
+ ?: R& B& @1 S3 l3 w8 H; u          update_post_meta($post_id, 'notice_title', sanitize_text_field($_POST['notice_title']));) V4 F/ ~8 `* p9 t8 \2 {) N. W. _
      }  b( V" h0 c; k* [0 S, ~) u
      if (isset($_POST['notice_content'])) {
* k! `+ O3 a9 G1 W          update_post_meta($post_id, 'notice_content', wp_kses_post($_POST['notice_content']));
+ A7 y% E; p& D' d& c      }
/ O, I/ W+ S3 a   }. y2 h+ p0 G0 o7 A# u+ X. G, e6 F$ x
   ```
2 j! D: J+ k; U2 d3 y' u0 ^* m! f1 C1 ?
   在示例中,我们使用 `add_meta_box()` 函数添加了一个名为 `notice-details` 的元框,用于在编辑页面上显示自定义字段和元数据。在 `notice-details_meta_box()` 函数中,我们使用 `wp_editor()` 函数添加了一个可视化编辑器,用于编辑公告内容。在 `save_site_wide_notice_meta_box()` 函数中,我们使用 `update_post_meta()` 函数将公告标题和内容保存到 WordPress 数据库中。
: t# G) d9 @, b+ l
& t) Q7 w# y; e- p" d4. 在前端页面中显示公告:在 WordPress 主题文件中添加以下代码,以在您的网站上显示公告:8 f2 U. O  G9 c; n- u

, m" [: j3 d* B- c  ~/ M   ```7 n2 q* p: \5 n& s" H7 r* ~
   $args = array() l9 y, d% T+ ]- H, ]; G
      'post_type' => 'site-wide-notices',
# n- [8 s) v5 g      'posts_per_page' => 3,
4 L+ `3 ^. \) d/ [( p      'order' => 'DESC',
( x8 X1 K! S. Y0 J+ w$ P      'orderby' => 'date', I* C4 j1 ^* S
   );
9 P0 k, R% g& x' y- t* D   $query = new WP_Query($args);" {9 x# n  A: @& m1 U
   if ($query->have_posts()) :+ w* o- U! s: q; ^( y( i. b/ g
      while ($query->have_posts()) : $query->the_post(); ?>
3 d- q4 K! s4 t  ^- X" J          <div class="notice">; ~9 a! y4 x* u7 A8 y
              <h3><?php the_title(); ?></h3>
, e4 I( P, m3 y! S/ U% T1 `              <div class="notice-content"><?php the_content(); ?></div>( t) I6 `/ F2 U! g; X: Y
          </div>
% c& o2 {4 G& O      <?php endwhile;
7 N% I! U6 r: z. I+ A5 m      wp_reset_postdata();
) U2 q) j2 B% \5 `. T9 i0 {, H* |   endif;
  w$ V$ h3 h$ D2 E1 |& p   ```
; }& j3 n$ F# }+ [, f4 O% H; \8 u5 z: q1 D+ E+ b
   在示例中,我们使用 `WP_Query` 类从 `site-wide-notices` 文章类型中获取最近发布的 3 条公告,并在前端页面中循环遍历并显示标题和内容等信息。
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-11-20 22:50 , Processed in 0.072776 second(s), 3 queries , Redis On.

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

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