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

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

[复制链接]

343

主题

554

回帖

3627

积分

管理员

积分
3627
QQ
发表于 2023-5-18 08:34:20 来自手机 | 显示全部楼层 |阅读模式
您可以使用以下方法来快速在 WordPress 后台增加一个全站公告的功能:5 I  Z3 }& i0 _* y
: S! t! M: ~" C- v! j
1. 在 WordPress 插件库中寻找可用的公告插件,例如 WP Notification Bars、Announcements、SSP Elegant Notification Bar 等。2 J$ S3 A9 b) O' f' y. u9 c& B

' u& S$ b6 U9 {0 F2. 安装并激活您选择的插件。您可以在 WordPress 后台的「插件」->「添加新插件」界面中搜索并安装插件,然后在「插件」->「已安装插件」界面中激活它。
+ \" h/ T6 f/ l. r7 b) d
! a" E2 L' J; b7 A: t3. 在插件的设置页面中配置您的公告内容和样式。不同插件的设置选项和功能可能会有所不同,但通常都允许您定义公告的文本、链接、颜色、位置等。
& Q2 V2 k. y& D! J' q3 B6 R6 l# W8 t( ~/ D
4. 将公告添加到您的网站上。在插件设置页面中完成公告的设置后,您可以通过编辑 WordPress 主题的代码或使用插件提供的方法将公告添加到您的网站中。不同插件可能使用不同的添加方法,具体请查看详细说明或联系插件作者。) {3 {3 j6 S0 o0 m0 Y' B0 M* B* U& Q

: I" Z1 ~0 C  a5 ]注意,如果您使用的 WordPress 主题已经包含了公告功能,或使用了其他公告插件,可能会导致冲突或功能重复。如果您遇到了这样的问题,请查看主题文档或联系主题作者以获取解决方案。
回复

使用道具 举报

343

主题

554

回帖

3627

积分

管理员

积分
3627
QQ
 楼主| 发表于 2023-5-18 08:34:51 来自手机 | 显示全部楼层
如果是自己开发的话,具体要怎么做?
+ F6 y: |) G5 o2 }! `( e; }/ D' y; [/ b7 b. T( s* y3 a1 r
如果您自己开发 WordPress 主题或插件,并且需要在后台中增加一个发布全站公告的功能,可以按照以下步骤操作:# R2 W/ s0 K7 A+ X% r6 @
3 S* ?  |0 r) d5 M* D! T
1. 创建一个自定义的 WordPress 后台页面。您可以使用 `add_menu_page()` 或 `add_submenu_page()` 函数来创建一个自定义后台页面,例如:
, T7 ]" _1 G$ L7 a5 C
6 ]1 d9 d4 y1 [7 G  S) ]+ O   ```( s3 J' P" L% t$ ?" d" D: E
   add_menu_page(. u1 ]6 M2 v  J
       '全站公告',
" ?+ U! J6 \$ F, r8 Y& z1 H       '全站公告',
8 A3 F6 ^7 s0 q       'manage_options', //需要的用户权限
; x. j; v) f# T0 w5 r       'site-wide-notice', //后台页面的 slug9 \1 @' M6 l5 A5 M! e: C7 p5 `4 J8 e1 U
       'render_site_wide_notice_page', //用于渲染后台页面内容的函数* E' m8 l/ I: r2 z7 T4 S. c
       'dashicons-megaphone', //用于显示在菜单中的图标
  k) j) T8 }  D' T( H( _       30 //菜单项的位置3 g8 J/ M+ D7 J  k+ R" Q% n' B
   );& E, i% B" U  X* i: M* W
   ```
( C' z2 R  V, M) c6 T( E1 |* P/ G1 d4 S6 Q/ ^6 C
   在该示例中,我们使用 `add_menu_page()` 函数来创建了一个名为“全站公告”的菜单项,并指定需要的用户权限(`manage_options`),在后台页面的 slug 为 `site-wide-notice`,用于渲染后台页面内容的函数为 `render_site_wide_notice_page`,在菜单中显示的图标为 `dashicons-megaphone`,菜单项的位置为 30。1 S, `& A+ k# b! s& a1 [$ L
: a% S2 f  Y0 y# i  q% T& m
2. 编写用于显示和保存全站公告内容的代码。您可以在自定义后台页面中创建一个表单,让用户输入公告的标题、内容等信息,并将这些信息保存到 WordPress 数据库中的某个表中。例如:: d+ m. m1 p/ i( A+ o

% T' v5 ^1 ]4 _9 d1 m6 U5 X   ```5 r% ~' S3 {+ C6 w$ |3 W. z: G  ]
   function render_site_wide_notice_page() {  H6 ~( x4 I# e! s2 k
      // 渲染后台页面内容4 @' U2 \0 A: s" h6 ?) U0 `
      echo '<div class="wrap">
3 V2 x  _8 H( d, q          <h2>全站公告</h2>
) Z. ^0 ]$ N+ _. v) ~( a1 g8 G! [. Y          <form method="post" action="">
, x) n; _+ E+ [% V, `              <label for="title">公告标题:</label>& v! {% C% G6 C  ~, Z
              <input type="text" name="title" value="'.get_option('site_wide_notice_title').'"><br><br>
* c6 P! u$ y( l3 G              <label for="content">公告内容:</label>2 _( p- M+ T- f! |) X0 ]! n
              <textarea name="content">'.get_option('site_wide_notice_content').'</textarea><br><br>
5 M6 a$ c$ b' |& g( r  J              <input type="submit" name="submit" value="保存设置">
) G+ |) h# u8 ^) U          </form>
+ T) ^. @2 P. _1 }      </div>';5 `5 j8 V* T" @9 o2 \
* \" O9 [' k( ^
      // 处理表单数据
+ D$ h2 ]% ]8 n8 V0 a      if (isset($_POST['submit'])) {
' c" e- U: i! `3 N- u          update_option('site_wide_notice_title', sanitize_text_field($_POST['title']));
% V1 Z. A; ?# |& C3 U6 E# W) s          update_option('site_wide_notice_content', sanitize_text_field($_POST['content']));
' x1 j( o( [/ R) z      }3 C( e0 K( `6 `$ A# m
   }
6 q6 F. _3 g% N: h2 U) T   ```; T% u0 o' W0 H, c( C5 P
& M2 |5 P( [0 O, j+ _
   在该示例中,我们创建了一个表单,让用户输入公告的标题和内容,并使用 `update_option()` 函数将这些数据保存到名为 `site_wide_notice_title` 和 `site_wide_notice_content` 的 WordPress 配置项中。如果用户点击提交按钮,则将表单数据更新到配置项。  b' _& M3 }- l6 G- i

. L) m$ R% t7 C# q3. 在 WordPress 主题中显示全站公告。您可以通过在 WordPress 主题的 `header.php` 文件中添加代码,将公告内容显示在网站的顶部或其他位置。例如:
+ X) R: _5 W/ t1 c0 n5 p- v* [
* M+ E; `/ K) H  J   ```9 j0 u  P, v5 n0 ~
   <?php
- N  d3 z$ r9 P- B9 }; K( V- g7 p   $site_wide_notice_title = get_option('site_wide_notice_title');; F* ^, Y( r! J4 Q
   $site_wide_notice_content = get_option('site_wide_notice_content');
9 j5 n7 ^/ U( W1 m   if (!empty($site_wide_notice_title) || !empty($site_wide_notice_content)) {7 ?  |& ]4 Z! z2 I* b
       echo '<div class="site-wide-notice">';' O& C* L1 s7 A2 `2 ]- L
       if (!empty($site_wide_notice_title)) {
! o! z  ~0 i3 y7 w8 o6 a           echo '<h3>'.$site_wide_notice_title.'</h3>';
; g6 {0 k0 x; e+ W7 j! R0 R5 l       }
6 e2 l" ?( Q; j! J       if (!empty($site_wide_notice_content)) {1 w! s) m7 }# h. u3 F( A
           echo '<p>'.$site_wide_notice_content.'</p>';: U: s, C6 \$ o/ M0 z8 S" e
       }& ]7 [% O, I+ z3 w
       echo '</div>';
( V0 _. b; u5 ~7 a! |! T   }
; o& ?' a; q# B+ t4 y7 v   ?>
  k) n) o3 i& i' [6 D. d   ```. G) b; Q; _. i, B$ C5 w% [) S
3 \- S6 v5 ^+ ^; h
   在该示例中,我们检查 WordPress 配置项中名为 `site_wide_notice_title` 和 `site_wide_notice_content` 的值是否为空,如果不为空,则在 `header.php` 文件中添加一个名为 `site-wide-notice` 的容器,将公告标题和内容显示在其中。
) z) i! y- g) @4 C3 \4 O: m6 S' M1 p8 x7 S9 T, y8 z7 A
请注意,本示例仅提供了一个框架,具体实现可能会根据您的需求和实际情况有所不同,您需要根据自己的需要进行修改和调整。同时,为了确保安全性,您还会需要对用户输入的数据进行适当的验证和过滤,例如使用 `sanitize_text_field()` 函数来过滤表单数据。
回复

使用道具 举报

343

主题

554

回帖

3627

积分

管理员

积分
3627
QQ
 楼主| 发表于 2023-5-18 09:26:50 来自手机 | 显示全部楼层
那如果需要发布多条公告,并进行管理,要如何实现?
3 S9 y# K9 J8 _7 p! c5 A+ F5 m* R& Y6 B: S9 U, c/ @6 X6 H! P
您可以创建一个自定义的 WordPress文章类型,例如“公告”,并对其进行自定义化,以实现发布多条公告并进行管理的功能。以下是具体步骤:
0 L% \/ A! x( A$ x
6 c1 D) C2 R: E2 W1. 创建一个自定义的文章类型:在你的主题 `functions.php` 文件中,添加以下代码:
, O& Q( H( b8 o. }- R! G3 Y9 ]
1 Z0 n. a+ a, s4 A# q+ _```- i" D$ v9 E2 k5 j% K7 W
function create_custom_post_type() {
# n/ W8 L6 B/ u0 `* `    $args = array(; A8 r  j" I' f1 s
        'labels' => array(& R7 v, x2 y0 P
            'name' => '公告',
1 T1 M& @/ N" Y- m# k            'singular_name' => '公告'8 f$ z( M7 Y5 c8 d6 o; n9 N
        ),8 ?* C" _. @2 S' b1 ]/ c' @
        'public' => true,' F) o8 j3 m( a/ e  D" x* N1 _
        'has_archive' => true,2 S* Z& A; n' }; f3 P) Z$ g- H
        'supports' => array('title', 'editor', 'thumbnail', 'excerpt', 'custom-fields', 'revisions'),
) D3 ^1 _1 Z3 _        'taxonomies' => array('category', 'post_tag'),2 a. n8 w# N& b
        'menu_icon' => 'dashicons-megaphone',
/ e; j# ~* p7 M% u9 m        'menu_position' => 5,+ e4 n- p4 U& x& B# A
        'rewrite' => array('slug' => 'site-wide-notices'), V% }" x5 |; @2 z# A$ a4 U# [
    );
, K3 _. q2 i5 r8 w8 M* z    register_post_type('site-wide-notices', $args);6 [5 i# J, K! F3 {$ `
}. A& t! o+ R5 Q8 x1 n
add_action('init', 'create_custom_post_type');' l( u4 _9 j5 L
```* I8 Z, K- s& Q7 U; h5 [" L
) x0 C1 P) @( L. Y
在示例中,我们注册了一个名为 "site-wide-notices" 的新的文章类型,并定义了文章类型名称、缩略名、文章类型支持的功能、分类法、管理菜单图标等设置。
& H# s5 T! g" \5 M5 u; o
  \  K  w+ {/ n4 v/ c7 u5 X2. 在你的 WordPress 后台中创建新文章类型“公告”:现在,你就可以在 WordPress 后台中通过导航到“公告”菜单,来添加、编辑或删除公告了。您可以在编辑公告的页面中添加标题、内容、特色图像或其他自定义的元数据字段。8 [( S, h7 ~, i; c- A. B

# j6 ?3 U* p: i) F6 b1 h3 g3. 在主题中显示公告:在您的 WordPress 主题文件中添加以下代码,以在您的网站上显示公告:
  _; b& Z5 s" K
, q2 }& d  J+ l```
) M& B- c4 {* J! x; K$args = array(
" u0 U- e; c9 Q/ _    'posts_per_page' => 3, // 显示的公告数量5 s/ \2 X" ]* y. d
    'post_type' => 'site-wide-notices', // 公告文章类型
9 b* z7 [8 ^6 v, J6 i    'post_status' => 'publish', // 公告状态
, I* c' Q( ]5 h* A    'order' => 'DESC' // 排序方式
- \" r: S( a/ Z6 Q: s% I( e( Q" f);
$ G) r% {* a1 _: b. ?) V; p% R$ S3 p+ K7 T( W# X; [5 S$ Y, T
$notices = new WP_Query($args);' R. C4 [4 P1 e, o9 D  |3 D
if ($notices->have_posts()) :
+ ]0 k' Q3 y7 O- ]& V" q# }    while ($notices->have_posts()) : $notices->the_post(); ?>
4 m/ }$ }7 T6 v; }: F8 g- O        <div class="notice">  Q: s+ j6 W  ?; g& X8 k8 l
            <h3><?php the_title(); ?></h3>
( F2 R! F3 D0 N            <div class="notice-content"><?php the_content(); ?></div>; Y& z, N0 j0 t% A; [! B* _
        </div>9 I2 W  d. y0 @: |
    <?php endwhile;
/ k# `: v2 g& P7 w: Q4 @else :9 A) w& J: O$ L. o# }8 G$ n
    echo "暂无公告";- g/ N% H  o8 C% w
endif;
" ]1 Y% I/ o$ R; j1 u# owp_reset_query();
9 U( p9 {- r4 S9 R5 F```
7 x2 M. e/ M( k9 C% Y9 p
6 `- t9 C+ z) f这段代码将使用 WordPress 的 `WP_Query` 类从公告文章类型中获取最新发布的 3 条公告,并在前端页面中循环遍历并显示公告标题和内容等信息。
: Q& A- }- s& n0 ]: ]! j( ]+ K: j) E* O4 i/ b- H) o  }
以上便是实现 Wordpress 后台发布多条全站公告的基本步骤。需要注意的是,自定义文章类型可对应多篇文章,具体根据您的需求进行调整。
回复

使用道具 举报

343

主题

554

回帖

3627

积分

管理员

积分
3627
QQ
 楼主| 发表于 2023-5-18 09:27:55 来自手机 | 显示全部楼层
如果不想修改functions.php,有其他更好的办法吗?
" I. C! P  h% d9 o( d+ V: V9 ~3 @' T% h
如果您不想修改主题 `functions.php` 文件,也可以创建一个自定义插件来添加新的文章类型。3 I( l, e3 h# E/ n% P: O2 z

2 P8 j- y) ~* |, @$ w& |以下是创建自定义插件的步骤:
" c2 @: o+ n* p$ w
* o6 g3 K" z* J2 h, Q1. 创建新插件:在 WordPress 插件目录中创建一个新的子目录,例如 `site-wide-notices-plugin`,然后在该目录中创建一个新的 PHP 文件,例如 `site-wide-notices-plugin.php`,并在文件头部添加必需的标记,例如:
! m8 ^( @) d* d3 ~- x) J
. x: E' v6 l$ B' G   ```9 s; H1 s  f, p% R' c, I3 N
   <?php
( l1 p6 D0 b& f$ n! G7 R) H0 g   /*
- E- n7 G6 Q! c9 b0 q0 L! c   Plugin Name: Site Wide Notices Plugin( \3 i2 ~: W6 T5 M' j
   Description: Adds a new custom post type for site-wide notices.5 \" V) y( y' ~3 A# ]8 M
   Version: 1.0% L2 Q! E& X* h9 u) p& J8 N
   Author: Your Name
0 I' p- F1 N. B5 D* u" ^   Author URI: http://example.com
8 B+ `% i0 Y3 i2 u" x9 r   */
, a0 t  L3 i6 P1 c) g" d& V7 Y' f! U! ]6 s3 U
   // Add plugin code here...) y: w1 h6 _; r
   ```
, e, [- q, c  r# a: T) C6 \! T" {3 [
* P6 V' D# Q) U9 q& M4 x2 K3 }   在示例中,我们创建了一个名为 `Site Wide Notices Plugin` 的新插件,该插件添加了一个新的自定义文章类型,并指定了版本、作者和作者 URI 等元信息。
- W! |  `3 o; R& @/ o! q  k" h4 p8 o
2. 在插件中注册新的文章类型:在 PHP 文件中添加以下代码,用于注册一个名为“site-wide-notices”的自定义文章类型:
  Y  H+ G% C6 i4 y
: {2 L: x3 m7 ^: ?" f/ I+ F   ```
- V; H+ E1 H% e9 I   add_action('init', 'create_custom_post_type');5 }. F; b- P9 w( A7 m
   function create_custom_post_type() {
9 M& R) W- W) \: i% V      $labels = array(2 }0 P4 J! E1 F# j
          'name' => 'Site Wide Notices',9 L' i: W. V& H/ F% U
          'singular_name' => 'Site Wide Notice',. ~6 n# N; \' l+ _& u  w  b  @0 b
          'add_new' => 'Add New',4 L1 l' j# a# K$ z! ~
          'add_new_item' => 'Add New Site Wide Notice',
$ T1 u$ P: P- P0 H5 [- Q          'edit_item' => 'Edit Site Wide Notice',, [* v8 u  g- F  B! c. g
          'new_item' => 'New Site Wide Notice',
; O3 S( A* Q5 ], i+ V! j          'view_item' => 'View Site Wide Notice',+ e8 I* x1 m/ h' ^8 t& n
          'search_items' => 'Search Site Wide Notices',
  ~# c! J1 u4 }- a8 `: W          'not_found' => 'No site-wide notices found',) D. k" M8 Q8 h+ |! Y$ Q7 H  t
          'not_found_in_trash' => 'No site-wide notices found in trash'* I' l# ~$ S& M- M% `( L
      );: ^7 u7 k  w# |" T- S; L

8 b$ u, E* `) D9 a      $args = array(" [- y8 m1 w* Z3 e2 \
          'labels' => $labels,
1 c: z! ]2 ~( F- S6 M          'public' => true,
, d0 I4 Z) @3 J$ r8 W+ F          'has_archive' => true,
/ k) u8 m6 Y+ q; X% X0 D- ?          'supports' => array('title', 'editor', 'thumbnail', 'excerpt', 'custom-fields', 'revisions'),# W* Q& Q# C  c7 u
          'taxonomies' => array('category', 'post_tag'),
5 x! e4 ^! x1 A) i3 _          'menu_icon' => 'dashicons-megaphone',
, m; }4 F$ S' H, T  W          'menu_position' => 5,
7 f8 C9 n" C! q( s' h! V          'rewrite' => array('slug' => 'site-wide-notices')
+ u- D# j( @" j! V! d1 h5 ~      );8 d: w, v9 ]$ o% o+ W% @
& ~; n6 t& j1 F
      register_post_type('site-wide-notices', $args);
  r9 I5 d2 i0 o/ d1 s3 g   }
9 J+ v' i; D$ f/ x   ```
+ E3 W" z- a: n$ x( T
/ F4 K  v$ w9 l  t% k* _, P   在示例中,我们使用 `register_post_type()` 函数注册一个新的文章类型,并定义了该文章类型的名称、标签和其他设置。
, }) C( |5 l1 T+ H  w
$ N) o: t* q8 g9 W: ^3. 在后台中添加公告编辑页面:您可以使用 `add_meta_box()` 函数在后台中添加公告编辑页面,并自定义字段和元数据,例如:+ p" I* A0 k& S- N

2 u/ ~8 w9 n1 X) i3 Y7 Z4 Y   ```9 u7 \9 b- b9 t$ C
   add_action('add_meta_boxes', 'add_site_wide_notices_boxes');
5 i' `1 Q# U7 k2 {' c" z/ I   function add_site_wide_notices_boxes() {* a1 N! }% W% U
      add_meta_box('notice-details', 'Notice Details', 'notice_details_meta_box', 'site-wide-notices', 'normal', 'high');' X; J- Z0 E6 I+ s7 ^
   }
$ E7 F5 Z2 a4 [( ^# T: `; K4 u8 D1 n* B0 q
   function notice_details_meta_box($post) {
! C" T/ @. E* y" c, M# r7 {7 o4 j      wp_nonce_field(basename(__FILE__), 'notices_nonce');
. E9 J/ G) M$ W- g% H/ M/ V      $notice_title = get_post_meta($post->ID, 'notice_title', true);) ?, B: [  u$ K4 F, l6 Y3 }) u9 o
      $notice_content = get_post_meta($post->ID, 'notice_content', true);0 g' D9 w2 H7 A. U5 o" B
      ?>
. Y4 {' g$ j$ m& J2 K7 t, s* `      <p># Z( R. q& z# ]% j& n
          <label for="notice-title">Notice Title</label><br>
: n8 ?0 ^% o& s1 n4 `          <input type="text" id="notice-title" name="notice_title" style="width: 100%;" value="<?php echo $notice_title; ?>">
0 K3 }- _* k1 s* \% B      </p>5 W& N4 h9 Z. u4 A, f
      <p>7 Q/ p  F- I/ z8 G
          <label for="notice-content">Notice Content</label><br>
7 O( N* K" f- |* D6 y          <?php wp_editor($notice_content, 'notice-content', array('textarea_rows' => 10)); ?>
% i9 T* E  k6 a, r      </p>
: Q, D0 d( F: A  n& l6 x5 A: z      <?php
& K8 ?" g; V5 b$ U) ^; k   }
$ G6 w; H: ?( h2 k0 j! k8 {9 ?2 x- L2 \
   add_action('save_post', 'save_site_wide_notice_meta_box');( R9 o7 N, }. ?
   function save_site_wide_notice_meta_box($post_id) {: s* a$ |5 g% t
      if (!isset($_POST['notices_nonce']) || !wp_verify_nonce($_POST['notices_nonce'], basename(__FILE__)))
4 s7 K5 A' J2 A* z- E         return;
- K! k" r, n* x& i$ x5 ^      if (defined('DOING_AUTOSAVE') && DOING_AUTOSAVE)
$ f' E) {( _; _6 ?         return;9 S/ t6 w% ~8 i% {$ A% q

9 x  b7 y3 v! y3 P( O& N      if (isset($_POST['notice_title'])) {
2 b9 U9 j; ?( L          update_post_meta($post_id, 'notice_title', sanitize_text_field($_POST['notice_title']));
3 p' h0 |/ i3 T% g/ ?, r7 O! i      }8 F0 T4 a1 `- }7 p! S& L5 |; F
      if (isset($_POST['notice_content'])) {
: R: w$ B8 t3 A! [) h# B2 D) Q: q( a* n          update_post_meta($post_id, 'notice_content', wp_kses_post($_POST['notice_content']));; ^, q% @% \3 v
      }/ _* B& _( h5 k( j3 T+ `  |$ g
   }6 c# _  h% a: i& p
   ```4 R! w  p& ], x# s% S

+ L" y: o/ B7 K* L  ]% ~" W9 F   在示例中,我们使用 `add_meta_box()` 函数添加了一个名为 `notice-details` 的元框,用于在编辑页面上显示自定义字段和元数据。在 `notice-details_meta_box()` 函数中,我们使用 `wp_editor()` 函数添加了一个可视化编辑器,用于编辑公告内容。在 `save_site_wide_notice_meta_box()` 函数中,我们使用 `update_post_meta()` 函数将公告标题和内容保存到 WordPress 数据库中。
% T' e8 D$ y; k/ |3 y3 D
2 N% g& Y0 e% [% |- k4. 在前端页面中显示公告:在 WordPress 主题文件中添加以下代码,以在您的网站上显示公告:% \3 X& Z7 f. m  \
1 U  n9 h5 c; J: h  ~4 y$ O
   ```" h7 N" a5 D8 r9 y
   $args = array(
9 m; K7 V# T: i+ g( J      'post_type' => 'site-wide-notices',
/ T5 Q9 x% h# x1 W      'posts_per_page' => 3,
* F9 w, p8 {- n" K3 t      'order' => 'DESC',2 s; b4 ~/ }. g: i. W, m
      'orderby' => 'date'
8 X. t- k9 p! z  l6 R   );; F" i9 P+ E. Y4 H
   $query = new WP_Query($args);# d1 D2 v9 F/ T# G) |& j
   if ($query->have_posts()) :& B( j- p% x7 |4 @
      while ($query->have_posts()) : $query->the_post(); ?>
0 S1 X9 a: w$ d" w0 f! Z0 A  J          <div class="notice">
7 E0 U$ ~# o, h* _! r: }1 x$ U              <h3><?php the_title(); ?></h3>' q, {6 N3 X3 m, _: {6 L. d; H5 @2 H
              <div class="notice-content"><?php the_content(); ?></div>& h' T  O# @/ S- q
          </div>
0 o  Y3 l- ^; q* j1 O" F      <?php endwhile;5 X, Z* a' ~9 f* R
      wp_reset_postdata();2 j$ f$ i- {! t  }; X
   endif;; S3 z0 K% W4 X! A4 m- k) e  N
   ```; U# ]$ q2 ]' B% R# _2 B$ F9 ?# \

# |3 _& |0 @5 z# q; c' X* y   在示例中,我们使用 `WP_Query` 类从 `site-wide-notices` 文章类型中获取最近发布的 3 条公告,并在前端页面中循环遍历并显示标题和内容等信息。
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2026-2-1 15:33 , Processed in 0.013846 second(s), 2 queries , Redis On.

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

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