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

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

[复制链接]

334

主题

517

回帖

3394

积分

管理员

积分
3394
QQ
发表于 2023-5-18 08:34:20 来自手机 | 显示全部楼层 |阅读模式
您可以使用以下方法来快速在 WordPress 后台增加一个全站公告的功能:
. E/ ?6 w. L% v6 A* d
0 F* ^! k. P' J: C& z1. 在 WordPress 插件库中寻找可用的公告插件,例如 WP Notification Bars、Announcements、SSP Elegant Notification Bar 等。" W  f5 {7 U) E: J
/ N8 l. f1 ^0 o; V6 |# _" P# J
2. 安装并激活您选择的插件。您可以在 WordPress 后台的「插件」->「添加新插件」界面中搜索并安装插件,然后在「插件」->「已安装插件」界面中激活它。
. n# D6 H/ s- [, {5 ^( F( f$ _" u
3. 在插件的设置页面中配置您的公告内容和样式。不同插件的设置选项和功能可能会有所不同,但通常都允许您定义公告的文本、链接、颜色、位置等。
: ^/ E1 b  m9 T  x6 h/ G. X( l  X0 t/ P
4. 将公告添加到您的网站上。在插件设置页面中完成公告的设置后,您可以通过编辑 WordPress 主题的代码或使用插件提供的方法将公告添加到您的网站中。不同插件可能使用不同的添加方法,具体请查看详细说明或联系插件作者。1 n# ^" t- \2 Q- g1 n6 p. X4 u

4 Z- ~- A* Y* X- V: B. Z5 F注意,如果您使用的 WordPress 主题已经包含了公告功能,或使用了其他公告插件,可能会导致冲突或功能重复。如果您遇到了这样的问题,请查看主题文档或联系主题作者以获取解决方案。
回复

使用道具 举报

334

主题

517

回帖

3394

积分

管理员

积分
3394
QQ
 楼主| 发表于 2023-5-18 08:34:51 来自手机 | 显示全部楼层
如果是自己开发的话,具体要怎么做?9 D" x4 L# ?0 {6 t! d9 y

+ B/ N2 x& S" O- b& V- L2 C" u如果您自己开发 WordPress 主题或插件,并且需要在后台中增加一个发布全站公告的功能,可以按照以下步骤操作:
& q0 K# v' x% _' s
- P# C; J' S- G# ?1. 创建一个自定义的 WordPress 后台页面。您可以使用 `add_menu_page()` 或 `add_submenu_page()` 函数来创建一个自定义后台页面,例如:9 e1 _% o, x2 }2 x* H4 i
1 J# V/ D8 ^0 R
   ```
' D+ T3 w( T( k, b) n" ]$ a5 L  X   add_menu_page(: Z" K+ f1 y' g
       '全站公告',
  V$ [1 g: A: U$ W  J       '全站公告',# T  a/ M2 ?/ M8 _' k& J
       'manage_options', //需要的用户权限" D& Z( H( y4 q- N  t1 A) J* F
       'site-wide-notice', //后台页面的 slug# C- T: c3 h: K7 h$ t
       'render_site_wide_notice_page', //用于渲染后台页面内容的函数
1 N  c7 S6 D  j, v& [       'dashicons-megaphone', //用于显示在菜单中的图标
0 J" `) H8 B$ C' T       30 //菜单项的位置
. K" P8 i& |. N/ D0 N" q   );
0 n- e: K) E' \- s1 B: x3 n   ```  \* K2 }8 F! Q+ z7 B
. n! f, s6 J- s. D5 l
   在该示例中,我们使用 `add_menu_page()` 函数来创建了一个名为“全站公告”的菜单项,并指定需要的用户权限(`manage_options`),在后台页面的 slug 为 `site-wide-notice`,用于渲染后台页面内容的函数为 `render_site_wide_notice_page`,在菜单中显示的图标为 `dashicons-megaphone`,菜单项的位置为 30。
$ f3 t: z" u# C6 L4 V# q# q- S/ I
2 F. \3 a  t9 H& H  z$ U2. 编写用于显示和保存全站公告内容的代码。您可以在自定义后台页面中创建一个表单,让用户输入公告的标题、内容等信息,并将这些信息保存到 WordPress 数据库中的某个表中。例如:
9 |. |' {) z; C, z
* d& O8 O$ q0 k   ```
7 }6 p0 R3 M0 S* J1 m/ T% ^   function render_site_wide_notice_page() {7 s8 b/ ?# R6 t
      // 渲染后台页面内容
3 Y/ i* ^: D  Z9 `( h  Y; o$ Q      echo '<div class="wrap">
9 d1 o7 {4 f& R- K% O          <h2>全站公告</h2>
. y5 f  C3 F" u/ n2 F          <form method="post" action="">
8 c* l1 s8 m' }3 o$ I: M              <label for="title">公告标题:</label>
* Y2 b  T" {/ P: g! H- W8 I) u" V              <input type="text" name="title" value="'.get_option('site_wide_notice_title').'"><br><br>! d8 A6 v0 r+ J; P* }
              <label for="content">公告内容:</label>
$ D/ T4 \3 i/ X9 n1 i              <textarea name="content">'.get_option('site_wide_notice_content').'</textarea><br><br>! r9 E1 \6 k6 ^; f( T) s) @
              <input type="submit" name="submit" value="保存设置">8 R& c8 C4 I3 X& }. P+ M7 N. ?/ ?
          </form>5 _' C6 u7 q' d6 Q+ f" l
      </div>';
  I3 H( F/ u9 F+ ]( U- g& p7 }9 P5 ^8 ]$ o: _: P) I' N6 v
      // 处理表单数据
/ @4 I6 }1 H1 T; _! H3 p' _      if (isset($_POST['submit'])) {( b: {' v# F7 ^. y; N  b
          update_option('site_wide_notice_title', sanitize_text_field($_POST['title']));
. N4 v( C5 j  k- _# _          update_option('site_wide_notice_content', sanitize_text_field($_POST['content']));
7 T# R$ c: _& I: y      }
# Q9 _' f4 R' I& o) |   }2 C' P6 G2 {7 ]1 }
   ```
. E. r) c7 X4 J
7 C5 K% d$ I; O. ^! F; t   在该示例中,我们创建了一个表单,让用户输入公告的标题和内容,并使用 `update_option()` 函数将这些数据保存到名为 `site_wide_notice_title` 和 `site_wide_notice_content` 的 WordPress 配置项中。如果用户点击提交按钮,则将表单数据更新到配置项。
$ ?! A( ?( P, j/ u. t% b
; X- i, B% M0 g# C" x3. 在 WordPress 主题中显示全站公告。您可以通过在 WordPress 主题的 `header.php` 文件中添加代码,将公告内容显示在网站的顶部或其他位置。例如:5 O  U6 Q5 W8 q+ D, H

& d3 C* r$ v  b' S' H   ```' Q7 ]1 z9 P& p3 L, n# f
   <?php
/ D* a: Y- `3 Q) |8 h' \   $site_wide_notice_title = get_option('site_wide_notice_title');7 ~" K* X9 L! I  H8 }. m
   $site_wide_notice_content = get_option('site_wide_notice_content');9 o) G* h" g8 r: P5 X
   if (!empty($site_wide_notice_title) || !empty($site_wide_notice_content)) {/ ~3 ]# h- }0 g$ D: {' y
       echo '<div class="site-wide-notice">';5 T4 ]' ~2 B0 v7 v
       if (!empty($site_wide_notice_title)) {
& C  n7 O3 N) q" ?$ F# `: a9 a1 g           echo '<h3>'.$site_wide_notice_title.'</h3>';1 |6 e, |& `8 `, ~6 J( u
       }7 S4 U. ]$ R# V) S
       if (!empty($site_wide_notice_content)) {
/ Q2 F! G2 P: S2 K           echo '<p>'.$site_wide_notice_content.'</p>';
% \8 O+ V; L  u$ Z       }
- m+ _! N5 ]5 P. f. `9 P# r( s       echo '</div>';
# J% _4 g3 {" b3 l6 C   }0 k( B9 O9 F8 l8 ?5 u- ~0 {
   ?>
" a0 h  p0 M! K. a   ```! K. j# G& t* p4 o" }

+ o4 d( O( E+ I! x5 d8 N   在该示例中,我们检查 WordPress 配置项中名为 `site_wide_notice_title` 和 `site_wide_notice_content` 的值是否为空,如果不为空,则在 `header.php` 文件中添加一个名为 `site-wide-notice` 的容器,将公告标题和内容显示在其中。' L2 [9 X3 j# ~: ]
4 p$ q5 e9 Y# v' s
请注意,本示例仅提供了一个框架,具体实现可能会根据您的需求和实际情况有所不同,您需要根据自己的需要进行修改和调整。同时,为了确保安全性,您还会需要对用户输入的数据进行适当的验证和过滤,例如使用 `sanitize_text_field()` 函数来过滤表单数据。
回复

使用道具 举报

334

主题

517

回帖

3394

积分

管理员

积分
3394
QQ
 楼主| 发表于 2023-5-18 09:26:50 来自手机 | 显示全部楼层
那如果需要发布多条公告,并进行管理,要如何实现?* X/ z: w" E* }! k8 c

' H. s; T, \; F+ k4 }您可以创建一个自定义的 WordPress文章类型,例如“公告”,并对其进行自定义化,以实现发布多条公告并进行管理的功能。以下是具体步骤:" g7 i. O8 A1 d

0 s1 @' }; M: U) [# ~1. 创建一个自定义的文章类型:在你的主题 `functions.php` 文件中,添加以下代码:
) W7 A* a3 d" P% E% o* v% C: f3 d1 h( u
```
; H# Y2 O+ x4 xfunction create_custom_post_type() {/ K+ b( [* M! H4 ?: K6 Q! |' M# O
    $args = array(6 `4 l' c8 {6 i1 V" u
        'labels' => array(
$ z$ R% i/ ^* p' w4 V            'name' => '公告',$ l( y5 r) m* |" N7 ~2 E
            'singular_name' => '公告'8 Q% p7 {& t* K: Z. b- z
        )," w+ A5 I8 n) \, C2 o
        'public' => true,7 O6 i7 s* V/ e, H
        'has_archive' => true,9 t. T0 o2 o$ I9 T& }+ `4 a
        'supports' => array('title', 'editor', 'thumbnail', 'excerpt', 'custom-fields', 'revisions'),0 x, f( x, c' Y# Y- \8 {8 J2 x, N
        'taxonomies' => array('category', 'post_tag'),
+ ]' S" n7 Z8 [, F        'menu_icon' => 'dashicons-megaphone',, L0 x; k- t6 ?/ @# l# l$ o/ d& n
        'menu_position' => 5,& j" q1 Z. p1 M% U+ Q) ^
        'rewrite' => array('slug' => 'site-wide-notices'). Y6 Q+ {# N! I0 t, U' a
    );- F& I% e6 m4 H! G( X; r
    register_post_type('site-wide-notices', $args);
, P. G! k" \' E}8 P* _3 P3 ^( q/ G9 R
add_action('init', 'create_custom_post_type');0 @# o" [5 E8 x) {- Z
```9 K. p( K% N* \! w
2 p. }5 L& Z+ K: m
在示例中,我们注册了一个名为 "site-wide-notices" 的新的文章类型,并定义了文章类型名称、缩略名、文章类型支持的功能、分类法、管理菜单图标等设置。
7 r; K9 ~# b9 i3 n9 J8 X" V
. b3 W1 `, k) n2. 在你的 WordPress 后台中创建新文章类型“公告”:现在,你就可以在 WordPress 后台中通过导航到“公告”菜单,来添加、编辑或删除公告了。您可以在编辑公告的页面中添加标题、内容、特色图像或其他自定义的元数据字段。
9 D) C0 I# ]6 m4 v1 A" O. B7 T0 q: X- s
* o) p4 Q: e+ O3. 在主题中显示公告:在您的 WordPress 主题文件中添加以下代码,以在您的网站上显示公告:
2 I) i( I0 p5 ~8 B* X0 g  }
5 e. f5 R. K8 {! ^* K5 ^6 ?3 u6 l```
" s& e1 |, }* L) @% S$args = array(
4 Y, K+ j/ l1 Q5 }' s$ C" r    'posts_per_page' => 3, // 显示的公告数量, l+ t; R% ^0 c2 ^4 m  q' ]& M% @
    'post_type' => 'site-wide-notices', // 公告文章类型1 d8 j% Y# I4 g1 {* o1 Z
    'post_status' => 'publish', // 公告状态
( E" {# M( P. m* S    'order' => 'DESC' // 排序方式
0 e9 d% n! O9 e6 _2 w);; [5 S" u5 n7 o% k8 @& l' `

% V+ y  b! ]' U$notices = new WP_Query($args);: s5 S3 ^9 |2 X0 ]1 \/ V# d
if ($notices->have_posts()) :! H& N' k/ g) r/ L' |/ v
    while ($notices->have_posts()) : $notices->the_post(); ?>) g' Q/ d& S2 X8 D5 f& ~3 N
        <div class="notice">
$ s% T. O7 S% \7 q            <h3><?php the_title(); ?></h3>: i! B' p) K8 c' P  x1 J2 X
            <div class="notice-content"><?php the_content(); ?></div>
3 P2 Q' R* r, J; s0 f$ U        </div>
, ?6 G) P, U- @  h    <?php endwhile;
3 Y- M. Z8 S4 g  Y3 @0 {4 D9 Telse :8 ]! `& @8 i9 D
    echo "暂无公告";
, K7 R6 _- }; Z/ m8 G; rendif;
/ o6 `& m9 T- {1 v+ Twp_reset_query();* q* V" m6 i& t, e" w$ b
```* V' v. e. D; e0 p

! |- E( X+ P# O. l这段代码将使用 WordPress 的 `WP_Query` 类从公告文章类型中获取最新发布的 3 条公告,并在前端页面中循环遍历并显示公告标题和内容等信息。$ M, o8 s, [' R$ f
8 i% E! Z7 x; O9 i2 R: O
以上便是实现 Wordpress 后台发布多条全站公告的基本步骤。需要注意的是,自定义文章类型可对应多篇文章,具体根据您的需求进行调整。
回复

使用道具 举报

334

主题

517

回帖

3394

积分

管理员

积分
3394
QQ
 楼主| 发表于 2023-5-18 09:27:55 来自手机 | 显示全部楼层
如果不想修改functions.php,有其他更好的办法吗?0 T  J- D" b" Y1 @: E
9 d2 u" y6 s. T% T$ u3 ~: [3 |' o
如果您不想修改主题 `functions.php` 文件,也可以创建一个自定义插件来添加新的文章类型。7 l1 i  A" P# ^2 S5 u7 C  b
  c0 F' c$ Q- w* x. m$ Z8 ^
以下是创建自定义插件的步骤:# O, o/ f% E/ P  Q

/ L" e/ T# h5 e& A+ @0 c& n1. 创建新插件:在 WordPress 插件目录中创建一个新的子目录,例如 `site-wide-notices-plugin`,然后在该目录中创建一个新的 PHP 文件,例如 `site-wide-notices-plugin.php`,并在文件头部添加必需的标记,例如:
3 j& V. R! z) A. q# V
2 o# d, ?4 V5 C& |7 d8 Q   ```6 S  u0 Q2 G# X  z: R
   <?php- \8 E8 Z) ^, _' I
   /*% k, K1 ?* G' D* A1 ^5 ^
   Plugin Name: Site Wide Notices Plugin
# k( B+ j8 K/ o3 M7 s( I$ o- X   Description: Adds a new custom post type for site-wide notices.
2 w2 |; R, w3 w+ b" j   Version: 1.07 a. t+ O+ l( ~) c
   Author: Your Name
+ m: F  i0 g( p6 L. l- c   Author URI: http://example.com* G: f. i6 J3 H3 u
   */
$ x' @5 W6 ?8 F5 M0 |5 |. t6 B. B% a- ?5 y
   // Add plugin code here...& \% g3 h1 Y) r3 N7 K) ~. _& K
   ```
/ Q5 t% Z- ~- d5 g% c2 G0 J5 Z- P3 g1 b
   在示例中,我们创建了一个名为 `Site Wide Notices Plugin` 的新插件,该插件添加了一个新的自定义文章类型,并指定了版本、作者和作者 URI 等元信息。
  D8 r- |3 t* U; v! E
& I2 y! y: L  t: H  q2 R( q2. 在插件中注册新的文章类型:在 PHP 文件中添加以下代码,用于注册一个名为“site-wide-notices”的自定义文章类型:
  I0 O. F2 c) j+ Y
0 a! ^" n  |4 ]0 [, V   ```( j  I, z2 f/ F' x# I% j
   add_action('init', 'create_custom_post_type');( T$ T& r4 @9 J" b
   function create_custom_post_type() {) O" j9 d- A; b: D/ i4 I4 b7 g
      $labels = array(
4 p1 p! Q9 C" O/ V          'name' => 'Site Wide Notices',
5 k7 k+ {6 c, {$ v* x% o          'singular_name' => 'Site Wide Notice',( u& k) x; V9 T1 \/ v
          'add_new' => 'Add New',8 B. x! q' u- s9 a
          'add_new_item' => 'Add New Site Wide Notice',
; c# K( v. n+ D+ |6 k7 E          'edit_item' => 'Edit Site Wide Notice',8 Y+ L+ k; g5 ]
          'new_item' => 'New Site Wide Notice'," @3 K: ]& o- b5 S- x6 Z
          'view_item' => 'View Site Wide Notice',% @- O  a; ~- b7 U8 H/ j, h
          'search_items' => 'Search Site Wide Notices',
& c) I/ D& _  `. D0 m: J, }& Z- m          'not_found' => 'No site-wide notices found',
2 d, D( P# t& o+ O  v          'not_found_in_trash' => 'No site-wide notices found in trash'; v) ~/ `* ]6 a) a$ n
      );
0 H( C& {- C  I9 L) U+ f4 R( Q- b: @* I: J9 L9 H! _6 ^6 i
      $args = array(4 |8 y8 p/ l% J% ?% T) u2 m& C, l
          'labels' => $labels,
" E  e3 @# d# p7 D          'public' => true,* ^! o' \, e5 a; h1 s2 |( d' Z
          'has_archive' => true,6 w2 B0 H1 y' o! D
          'supports' => array('title', 'editor', 'thumbnail', 'excerpt', 'custom-fields', 'revisions'),0 M& m; H3 i( K  A
          'taxonomies' => array('category', 'post_tag'),
% G" P- k+ K% }% W+ h3 @          'menu_icon' => 'dashicons-megaphone',! _& D# s) F3 z1 b5 Q
          'menu_position' => 5,
! J( p. @# q$ T          'rewrite' => array('slug' => 'site-wide-notices')
& s$ O; J" q/ z, }6 o" F) _      );, k% D& B9 G2 L  g
( s0 K" L# v" P- Q
      register_post_type('site-wide-notices', $args);
! K& T9 x, H- O  b9 X7 q! C; A' i3 J  O   }: x+ A  ~! r, H+ g( s: R0 L; w
   ```
( w5 R4 h+ z  q. k  T$ |: p
7 M% r  F1 z1 R/ T/ U* F   在示例中,我们使用 `register_post_type()` 函数注册一个新的文章类型,并定义了该文章类型的名称、标签和其他设置。
* s' s" p, f( E6 S, h% M; M# p; _: G3 N! Q
3. 在后台中添加公告编辑页面:您可以使用 `add_meta_box()` 函数在后台中添加公告编辑页面,并自定义字段和元数据,例如:( J4 s, B8 z- {! g
/ m' V9 P! V: O& b6 k5 v
   ```0 C( H9 R- O. ^
   add_action('add_meta_boxes', 'add_site_wide_notices_boxes');
9 B/ o5 g0 B: E0 h8 b   function add_site_wide_notices_boxes() {) o, D' z8 I$ q6 c5 g, ^  ?+ ]7 H
      add_meta_box('notice-details', 'Notice Details', 'notice_details_meta_box', 'site-wide-notices', 'normal', 'high');4 s  y  ]$ X, C" n/ j, D1 j
   }5 i# e2 z# Q1 {$ D' Z7 h! d! Y
  d! [8 B8 k% r" `" q
   function notice_details_meta_box($post) {2 q5 h' d2 H9 Z3 Z  |+ F
      wp_nonce_field(basename(__FILE__), 'notices_nonce');
$ b5 Q& ^. n5 t0 @# r" t7 q      $notice_title = get_post_meta($post->ID, 'notice_title', true);
" X5 w' H2 q# {  G! H      $notice_content = get_post_meta($post->ID, 'notice_content', true);
- {2 W0 |* O& `      ?>
! n& Y0 V) `( i) Q0 I      <p>
) l/ c  c! W! q5 X5 e          <label for="notice-title">Notice Title</label><br>
3 J" K$ S2 P: t" O          <input type="text" id="notice-title" name="notice_title" style="width: 100%;" value="<?php echo $notice_title; ?>">
; q, l; I* ?/ H& d" D* j      </p>1 K4 R+ }$ U! _7 Z: o
      <p>
# T5 j$ G- @3 A2 ]          <label for="notice-content">Notice Content</label><br>/ I. p# k% Q+ z0 D: h7 @8 g+ Y7 s
          <?php wp_editor($notice_content, 'notice-content', array('textarea_rows' => 10)); ?>6 v: r, m4 r# e' a: h0 n: b( Q( D
      </p>
' z9 |  X& k! p8 ^8 Y      <?php
! `3 d$ s: l# b4 S7 N) P9 K0 R7 {   }
* v% ^) A5 w2 S2 _6 H" o
2 e3 \4 n! L! C' G   add_action('save_post', 'save_site_wide_notice_meta_box');
: j! d$ I0 j" Z( ~) u$ _8 d   function save_site_wide_notice_meta_box($post_id) {
1 V' k3 W- |3 S7 a      if (!isset($_POST['notices_nonce']) || !wp_verify_nonce($_POST['notices_nonce'], basename(__FILE__)))
4 v9 ]" b% p( l5 x- o& R9 _* Q         return;* F! J" W6 e# m' ^
      if (defined('DOING_AUTOSAVE') && DOING_AUTOSAVE)
' X/ q- n1 }" L$ E         return;4 U, ?2 F" L# ]! G/ N
+ }3 K/ a0 F9 t3 P
      if (isset($_POST['notice_title'])) {1 Z$ y+ ~# R4 t9 j+ u/ O
          update_post_meta($post_id, 'notice_title', sanitize_text_field($_POST['notice_title']));
1 d, b6 T" l7 x- i  f# r' r7 y      }7 r# _% `6 n/ _2 ^
      if (isset($_POST['notice_content'])) {
% [! K' Q3 c3 h  R- n! C2 }          update_post_meta($post_id, 'notice_content', wp_kses_post($_POST['notice_content']));; H* M9 v5 l0 x5 i6 z. {3 x
      }* W7 r' S! Z7 v
   }
' p: ?  W' h: y# B+ N; a   ```
# @  ~; @9 Z3 `% K/ V+ e1 T& y# l' Z+ y$ M
   在示例中,我们使用 `add_meta_box()` 函数添加了一个名为 `notice-details` 的元框,用于在编辑页面上显示自定义字段和元数据。在 `notice-details_meta_box()` 函数中,我们使用 `wp_editor()` 函数添加了一个可视化编辑器,用于编辑公告内容。在 `save_site_wide_notice_meta_box()` 函数中,我们使用 `update_post_meta()` 函数将公告标题和内容保存到 WordPress 数据库中。* H( l1 L1 s, o% K+ ~/ e
& R+ G. a: G& R6 I/ q8 g
4. 在前端页面中显示公告:在 WordPress 主题文件中添加以下代码,以在您的网站上显示公告:
* s+ n; }/ D& c; K# l9 F$ P+ h
% E& T; C8 E8 H& N8 y0 d   ```
8 j6 Q7 d& x; ^) x+ f" o   $args = array(6 q! n# J8 w7 h; F
      'post_type' => 'site-wide-notices',2 O9 V8 j8 t* C
      'posts_per_page' => 3,% k1 W: G7 v$ v& E
      'order' => 'DESC',
: t8 W* Y: z& ^( }4 r1 z      'orderby' => 'date'
& v, U$ I5 m/ X2 D$ _! x2 k   );( V# V* D! a  A' N
   $query = new WP_Query($args);
% o; b7 b/ e& G. C  s0 {# c   if ($query->have_posts()) :$ B! I! z1 \- y2 G1 U. H
      while ($query->have_posts()) : $query->the_post(); ?>3 J. v& x7 K0 Q; n
          <div class="notice">
" p9 c& n( T0 e' c3 {/ p7 S              <h3><?php the_title(); ?></h3>
7 k3 z4 H0 v' Z# ?              <div class="notice-content"><?php the_content(); ?></div>9 K, `# v. L8 L
          </div>1 @9 [9 E( ?( A- S
      <?php endwhile;6 N. t+ g% P0 k2 K5 w
      wp_reset_postdata();
7 z8 w, _1 A' T2 u   endif;/ ?" Z1 l$ a5 ~7 g2 {" B7 q4 K
   ```! a+ y( k$ q" P1 P5 J2 e9 w7 S. J

, p) }3 H+ ^0 A/ `/ Y/ F3 O   在示例中,我们使用 `WP_Query` 类从 `site-wide-notices` 文章类型中获取最近发布的 3 条公告,并在前端页面中循环遍历并显示标题和内容等信息。
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-11-30 17:12 , Processed in 0.084557 second(s), 3 queries , Redis On.

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

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