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

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

[复制链接]

343

主题

551

回帖

3619

积分

管理员

积分
3619
QQ
发表于 2023-5-18 08:34:20 来自手机 | 显示全部楼层 |阅读模式
您可以使用以下方法来快速在 WordPress 后台增加一个全站公告的功能:
/ l9 G% A+ m3 M2 H7 [
9 C9 e) F5 ?# t1. 在 WordPress 插件库中寻找可用的公告插件,例如 WP Notification Bars、Announcements、SSP Elegant Notification Bar 等。
1 S/ p% s) s. a  c
* p( _* L7 |2 G6 t7 _2. 安装并激活您选择的插件。您可以在 WordPress 后台的「插件」->「添加新插件」界面中搜索并安装插件,然后在「插件」->「已安装插件」界面中激活它。1 {4 F( ~9 c0 M: Q3 S3 e/ M
5 ^' O4 e3 ^( W1 \2 o% x
3. 在插件的设置页面中配置您的公告内容和样式。不同插件的设置选项和功能可能会有所不同,但通常都允许您定义公告的文本、链接、颜色、位置等。1 v2 B4 r# R" p5 R4 S( ~
" j8 M/ H  Z: D# v1 R
4. 将公告添加到您的网站上。在插件设置页面中完成公告的设置后,您可以通过编辑 WordPress 主题的代码或使用插件提供的方法将公告添加到您的网站中。不同插件可能使用不同的添加方法,具体请查看详细说明或联系插件作者。. G9 o; N# p/ e
' ]3 y4 @7 ^# W+ D) _
注意,如果您使用的 WordPress 主题已经包含了公告功能,或使用了其他公告插件,可能会导致冲突或功能重复。如果您遇到了这样的问题,请查看主题文档或联系主题作者以获取解决方案。
回复

使用道具 举报

343

主题

551

回帖

3619

积分

管理员

积分
3619
QQ
 楼主| 发表于 2023-5-18 08:34:51 来自手机 | 显示全部楼层
如果是自己开发的话,具体要怎么做?2 _& d: o" p# V4 U

$ z6 O) b% b: `! k2 j" ~3 `如果您自己开发 WordPress 主题或插件,并且需要在后台中增加一个发布全站公告的功能,可以按照以下步骤操作:
4 b8 r5 K  R) \/ l4 @
' d% r8 u$ u3 [; {. M+ S1. 创建一个自定义的 WordPress 后台页面。您可以使用 `add_menu_page()` 或 `add_submenu_page()` 函数来创建一个自定义后台页面,例如:
0 g4 U4 S: p  }0 {0 E) R9 X: f) z; ?* T5 \
   ```+ \! H- ^4 W3 J$ D( j; a
   add_menu_page(, `* F7 B8 G1 @
       '全站公告',, p5 g7 J  Q. Z' @* q- e5 r
       '全站公告',
; y  E$ V& m* V# C9 e       'manage_options', //需要的用户权限
: S7 k% d& o0 [& n7 @+ a       'site-wide-notice', //后台页面的 slug
# d7 L( ]2 _) r* _       'render_site_wide_notice_page', //用于渲染后台页面内容的函数
- P7 i+ p# Y- r! Y4 z5 S       'dashicons-megaphone', //用于显示在菜单中的图标' O# f# v( L1 I* X/ M! a7 I. S
       30 //菜单项的位置' l/ h! u# J0 s
   );: c  j" P$ n9 R* X4 p4 u% w
   ```
$ m6 n9 ?" q3 T" B! y
, V/ r" Q: R" p0 q* c5 n   在该示例中,我们使用 `add_menu_page()` 函数来创建了一个名为“全站公告”的菜单项,并指定需要的用户权限(`manage_options`),在后台页面的 slug 为 `site-wide-notice`,用于渲染后台页面内容的函数为 `render_site_wide_notice_page`,在菜单中显示的图标为 `dashicons-megaphone`,菜单项的位置为 30。
/ y3 G" L& d& x5 A
7 }$ Z, ?3 e8 e6 Z9 [1 K2. 编写用于显示和保存全站公告内容的代码。您可以在自定义后台页面中创建一个表单,让用户输入公告的标题、内容等信息,并将这些信息保存到 WordPress 数据库中的某个表中。例如:, J# A- h& H1 S* |7 x! E
! w7 X) z: ^% D& ^8 K) P
   ```
# D) j* S8 ^, Y+ z& V0 K   function render_site_wide_notice_page() {; B7 l, x* f8 |  {- u2 k5 q
      // 渲染后台页面内容4 d: y9 K! ?/ J, C8 U' M
      echo '<div class="wrap">. w8 c: X+ D8 v- n2 l
          <h2>全站公告</h2>
$ ~2 c: o) P- y. q  G          <form method="post" action="">* u( h3 k6 k5 F3 L5 \$ I: [
              <label for="title">公告标题:</label>
7 Z5 G) V! y2 [              <input type="text" name="title" value="'.get_option('site_wide_notice_title').'"><br><br>
; ~8 ]) U2 q4 {0 p) b8 ?              <label for="content">公告内容:</label>+ R' e: u9 w4 z( A- Q
              <textarea name="content">'.get_option('site_wide_notice_content').'</textarea><br><br>
& p6 ~; z8 F+ R; O6 e1 K              <input type="submit" name="submit" value="保存设置">  J2 b0 K3 v3 R" L6 a
          </form>
; t4 q$ A9 @. B+ I  ~6 T      </div>';5 R9 ?! _# y' k) w1 `/ |9 }

) q6 Y. {8 [- G      // 处理表单数据3 m  Q) v! R) u3 z0 ]
      if (isset($_POST['submit'])) {
  y, T- p+ x9 w7 K3 i8 c          update_option('site_wide_notice_title', sanitize_text_field($_POST['title']));: a  T3 ^) b5 t9 X1 M
          update_option('site_wide_notice_content', sanitize_text_field($_POST['content']));% P, c- O6 d+ d& d0 Q
      }! L7 j- i; b6 k6 u
   }
+ p+ J6 B, r) W  n# t- K( @1 O8 S2 q   ```
# U$ O9 d7 c% P) Y2 O. d0 A
3 u& {1 N6 K% R- J5 l- Y( f6 A- j* W   在该示例中,我们创建了一个表单,让用户输入公告的标题和内容,并使用 `update_option()` 函数将这些数据保存到名为 `site_wide_notice_title` 和 `site_wide_notice_content` 的 WordPress 配置项中。如果用户点击提交按钮,则将表单数据更新到配置项。
* q) ^  k" ]3 u" [6 M' R& ~7 S8 h7 A6 T
3. 在 WordPress 主题中显示全站公告。您可以通过在 WordPress 主题的 `header.php` 文件中添加代码,将公告内容显示在网站的顶部或其他位置。例如:/ P* |/ K) J+ W; e# Z0 T  S0 |
1 i! u( r+ b  y! Y
   ```
+ Q' w. I, B8 n: E* V4 Q) w; ~   <?php+ R4 R2 d1 ~% D
   $site_wide_notice_title = get_option('site_wide_notice_title');8 l0 z8 q" o1 o8 D! y
   $site_wide_notice_content = get_option('site_wide_notice_content');
/ A, ?0 v9 k. F( V) i   if (!empty($site_wide_notice_title) || !empty($site_wide_notice_content)) {
8 ]0 x. ^% z- w& H       echo '<div class="site-wide-notice">';8 S, A( b& x* K
       if (!empty($site_wide_notice_title)) {! s3 I8 c6 }" J9 o$ m! A
           echo '<h3>'.$site_wide_notice_title.'</h3>';
6 t5 S5 i, _2 X7 v) l       }
  w: B" ~' _. @& h: y       if (!empty($site_wide_notice_content)) {, k* i. y. Q) a4 k
           echo '<p>'.$site_wide_notice_content.'</p>';- U3 ~" N$ t$ M7 P5 y0 t4 b; N1 J
       }9 d+ O; `2 j, l6 l: }  p! u
       echo '</div>';1 F9 o3 q6 G- }, A/ g! Z% n  _
   }: k  W" P  i# }( @. k, @+ `5 l# _6 v
   ?>
  y6 ~8 Q8 x8 g5 a   ```
: j3 c  x' Y; n- A8 m  \! B& z' v& i5 {2 _
   在该示例中,我们检查 WordPress 配置项中名为 `site_wide_notice_title` 和 `site_wide_notice_content` 的值是否为空,如果不为空,则在 `header.php` 文件中添加一个名为 `site-wide-notice` 的容器,将公告标题和内容显示在其中。
* N; ^, g' D1 B
) r1 Y* C+ t) t4 T0 k/ l请注意,本示例仅提供了一个框架,具体实现可能会根据您的需求和实际情况有所不同,您需要根据自己的需要进行修改和调整。同时,为了确保安全性,您还会需要对用户输入的数据进行适当的验证和过滤,例如使用 `sanitize_text_field()` 函数来过滤表单数据。
回复

使用道具 举报

343

主题

551

回帖

3619

积分

管理员

积分
3619
QQ
 楼主| 发表于 2023-5-18 09:26:50 来自手机 | 显示全部楼层
那如果需要发布多条公告,并进行管理,要如何实现?# W4 ^3 J) B* D' |/ p. m

. U, `7 d( o6 d' N0 c! \您可以创建一个自定义的 WordPress文章类型,例如“公告”,并对其进行自定义化,以实现发布多条公告并进行管理的功能。以下是具体步骤:* p% _0 v8 Q0 X6 \0 S

/ U! t! F  n) Q+ q  Y1. 创建一个自定义的文章类型:在你的主题 `functions.php` 文件中,添加以下代码:
2 o5 W& t+ `5 y: {0 J6 {" |' T$ z" |- B5 t0 A
```
& h6 ?3 S2 v/ r" D9 s* J6 ufunction create_custom_post_type() {
0 W% y, ~' r" m+ e& C    $args = array(
1 ~5 n! e6 h/ o! X3 O. C( h        'labels' => array(, g, z! f( ~& d5 k" k+ W
            'name' => '公告',2 n0 U/ N6 V9 q3 x( N6 z% f' z
            'singular_name' => '公告'
* u# A0 f3 S3 X& T+ O# U        ),( l$ \2 r7 z& }- U
        'public' => true,3 r$ j  p* V" p
        'has_archive' => true,
+ x# Z7 @7 m; u) _/ c        'supports' => array('title', 'editor', 'thumbnail', 'excerpt', 'custom-fields', 'revisions'),
6 u( ^! s* C9 M        'taxonomies' => array('category', 'post_tag'),% Z6 B, D3 h- V0 z& m* e' Q
        'menu_icon' => 'dashicons-megaphone',
+ I( ]9 F( A, k' [# J. @+ {        'menu_position' => 5,. _. `+ ^6 n- P1 W- u$ D
        'rewrite' => array('slug' => 'site-wide-notices')7 d9 ~5 p8 f; [# a9 J, T2 t1 t
    );
0 L, S% Z" h1 R    register_post_type('site-wide-notices', $args);
! l, K" U; F& j+ n0 [% u}
  a( U" }# [  k4 \, H1 Oadd_action('init', 'create_custom_post_type');% w, m+ u, H! v7 M3 [: t9 I0 b
```
6 B1 a) w3 O: V1 Z0 g& c' D! y' @  v
9 t1 V8 ^. k- o0 B, v在示例中,我们注册了一个名为 "site-wide-notices" 的新的文章类型,并定义了文章类型名称、缩略名、文章类型支持的功能、分类法、管理菜单图标等设置。
& M* ]$ G: S- l+ c
! \% a: @; C: q2. 在你的 WordPress 后台中创建新文章类型“公告”:现在,你就可以在 WordPress 后台中通过导航到“公告”菜单,来添加、编辑或删除公告了。您可以在编辑公告的页面中添加标题、内容、特色图像或其他自定义的元数据字段。
8 e. ]$ G# w7 L# i7 r
, p8 |% Z, r- t1 y8 n3. 在主题中显示公告:在您的 WordPress 主题文件中添加以下代码,以在您的网站上显示公告:9 d# h6 j! @, s  F0 J" v: Z

! c1 g" W) _3 n$ c& h6 E. |```
' v; f1 h+ \( N6 O7 h/ L1 d* ~$args = array(' Y3 M: L0 m4 y* c& A3 V" ^
    'posts_per_page' => 3, // 显示的公告数量4 V' j' Y8 Y! p. u7 B
    'post_type' => 'site-wide-notices', // 公告文章类型
- l. S% b. f7 @& U8 d: P    'post_status' => 'publish', // 公告状态
& [- V+ t( @" g    'order' => 'DESC' // 排序方式
. L7 z. i) A( g( B6 C+ x) b/ ~& L);4 l! S- Y2 h: E+ o& A9 d0 g
& i& T) }0 Y: Q. d6 v. b
$notices = new WP_Query($args);
, e! D* \/ K$ o! O3 H, w8 r; Y2 bif ($notices->have_posts()) :
' S7 Q! j) t2 |6 ~) l    while ($notices->have_posts()) : $notices->the_post(); ?>
; _7 D. z( F) ]' [0 r        <div class="notice">: g; _$ i8 C/ o( h
            <h3><?php the_title(); ?></h3>+ `9 J1 i" n- h7 s/ K
            <div class="notice-content"><?php the_content(); ?></div>
* b4 L* m' M$ b( Q; d        </div>) X/ @6 i% e7 ^$ {8 d$ m
    <?php endwhile;' Z+ a. c# T( N$ a1 g4 A7 k
else :2 _3 X: n8 ~9 A: Q  I9 T+ s
    echo "暂无公告";
& W2 B9 y. E8 Mendif;
/ q4 _1 j% q/ i$ j# t' a0 Twp_reset_query();. D! e. O7 n& G+ d& R$ M
```# P+ e- |/ u6 G& J) Q

4 r8 o( |2 [  {/ i6 r( \这段代码将使用 WordPress 的 `WP_Query` 类从公告文章类型中获取最新发布的 3 条公告,并在前端页面中循环遍历并显示公告标题和内容等信息。
1 t. F( Q; }' k. [2 J0 _
5 s6 B6 Q  J, y2 z以上便是实现 Wordpress 后台发布多条全站公告的基本步骤。需要注意的是,自定义文章类型可对应多篇文章,具体根据您的需求进行调整。
回复

使用道具 举报

343

主题

551

回帖

3619

积分

管理员

积分
3619
QQ
 楼主| 发表于 2023-5-18 09:27:55 来自手机 | 显示全部楼层
如果不想修改functions.php,有其他更好的办法吗?+ A' w; D. o4 {6 W% _* S

' U0 p$ v! z) X2 H2 ^$ ]- t7 Y如果您不想修改主题 `functions.php` 文件,也可以创建一个自定义插件来添加新的文章类型。! @* O  a" s& D4 Z  N
7 k+ X" `! t8 |+ |
以下是创建自定义插件的步骤:
# d4 R6 k) y( V! m' X( d4 x7 }! ^( |3 x! K  E
1. 创建新插件:在 WordPress 插件目录中创建一个新的子目录,例如 `site-wide-notices-plugin`,然后在该目录中创建一个新的 PHP 文件,例如 `site-wide-notices-plugin.php`,并在文件头部添加必需的标记,例如:2 m& t2 T# h/ q1 a6 N4 V9 o

' R7 W! ~+ a$ U4 D/ y8 ^   ```
2 q9 s" l* R7 Z9 {3 s5 ]$ m' O   <?php) A; a* b! P2 l4 }" V
   /*: B' P6 i4 M' x1 Y' a
   Plugin Name: Site Wide Notices Plugin1 p; i& t0 C& M
   Description: Adds a new custom post type for site-wide notices.8 Y% i# `  o- r
   Version: 1.0
" `0 z/ @/ B- x; O   Author: Your Name
4 I1 x2 i, ~( }8 e& S   Author URI: http://example.com% W, L" k+ T4 n! V0 V/ t1 m
   */
; k' m/ ~2 l' U7 t  c) K: |. D9 H2 S
   // Add plugin code here...! P6 l- N9 z5 Q: S7 J
   ```- b8 g( ?/ P' U- h
. b+ ~8 ?1 z) ]* ^
   在示例中,我们创建了一个名为 `Site Wide Notices Plugin` 的新插件,该插件添加了一个新的自定义文章类型,并指定了版本、作者和作者 URI 等元信息。7 o& |2 {% ^5 r: F
+ U9 a2 a( {4 X
2. 在插件中注册新的文章类型:在 PHP 文件中添加以下代码,用于注册一个名为“site-wide-notices”的自定义文章类型:5 N( \" X2 O' M2 A+ h

8 }: v2 A8 L) S   ```
6 q3 D) M5 n% i1 m$ V- n   add_action('init', 'create_custom_post_type');
, c7 q( v2 `# I$ X. B8 \5 ?% P9 r   function create_custom_post_type() {  j# H5 u! i, `; E+ A: v) L
      $labels = array(2 g+ i, }- i7 Y7 |+ K# F3 V$ W6 p
          'name' => 'Site Wide Notices',
( I7 }- i1 G2 s/ u$ W" ]          'singular_name' => 'Site Wide Notice',
- D2 ]; D5 C7 u          'add_new' => 'Add New',
5 V2 \2 _, _" z) }          'add_new_item' => 'Add New Site Wide Notice',
7 ?; y* M- @& G* c- F          'edit_item' => 'Edit Site Wide Notice',( o  @; a# G% |+ U5 v2 B# p
          'new_item' => 'New Site Wide Notice',
, d( x" A, U3 ?: W8 ]# _  H          'view_item' => 'View Site Wide Notice',  v+ u  S$ `! C8 I
          'search_items' => 'Search Site Wide Notices',
3 C, M; s# B% J          'not_found' => 'No site-wide notices found',
. h" ~2 n) C; |  H- s          'not_found_in_trash' => 'No site-wide notices found in trash'
) `2 M$ }# q9 f: w% X  A& e6 w      );
+ ~. T( K. `. ?# ]) P8 A) R7 j/ o2 A" v. g
      $args = array(
- l: i. U8 q8 c8 k" U          'labels' => $labels,
; n% d+ q3 z! H( J) h8 q          'public' => true,1 a" e3 I" x. A: [! z0 v
          'has_archive' => true,+ f6 S+ g& d. u5 d! d( `) E+ h; T
          'supports' => array('title', 'editor', 'thumbnail', 'excerpt', 'custom-fields', 'revisions'),4 b+ p- h# P3 x
          'taxonomies' => array('category', 'post_tag'),% n1 }" a; [3 U, d$ ]( u6 s
          'menu_icon' => 'dashicons-megaphone',' g% ^, Y! o: K& P/ q  G- x" t" s" Q
          'menu_position' => 5,
! a1 V* n2 c; _# ~          'rewrite' => array('slug' => 'site-wide-notices')
8 W+ v8 c6 }% u# j8 `/ c      );4 D& |% s; J. K
3 y" u* T$ C4 N# C; f( P
      register_post_type('site-wide-notices', $args);
& p, G6 \4 ^& {- z# e/ b   }
. y7 {! c: I" V' s( \! L9 J7 c   ```
2 S0 x. C6 R0 E7 I- F6 p+ B  C! y4 _' B9 e$ Y+ S; ^8 m
   在示例中,我们使用 `register_post_type()` 函数注册一个新的文章类型,并定义了该文章类型的名称、标签和其他设置。
7 \$ V' c2 Q3 z* G4 G; M9 g. h# D5 t8 X6 Y
3. 在后台中添加公告编辑页面:您可以使用 `add_meta_box()` 函数在后台中添加公告编辑页面,并自定义字段和元数据,例如:- M8 C  Z8 Q! x; S7 O; P2 m
# H& z3 F$ F  ~. b- s
   ```
. S+ P  _  a& J1 d   add_action('add_meta_boxes', 'add_site_wide_notices_boxes');8 X; M9 J9 T' m3 N. h4 u
   function add_site_wide_notices_boxes() {! O. Y9 k$ F, {. B& r0 G
      add_meta_box('notice-details', 'Notice Details', 'notice_details_meta_box', 'site-wide-notices', 'normal', 'high');
/ X' F7 d% H! |% V   }8 W5 Z" }' X( G* D# `# R: x) h4 v
" H0 R# g# }/ N% p: }' A9 n
   function notice_details_meta_box($post) {1 |% {/ d; W6 {1 G2 |  `
      wp_nonce_field(basename(__FILE__), 'notices_nonce');5 D* X" Y  b+ y0 z
      $notice_title = get_post_meta($post->ID, 'notice_title', true);
/ C5 \! H# ?6 S  ^9 g      $notice_content = get_post_meta($post->ID, 'notice_content', true);
, M' d3 L9 [7 f2 D5 O      ?>
+ j- A8 ^5 j( r9 q) D, p4 q9 |      <p>
3 S$ I9 h0 G" l/ u          <label for="notice-title">Notice Title</label><br>
2 _; ^0 Z. j' V8 d" {' L( p2 c: E          <input type="text" id="notice-title" name="notice_title" style="width: 100%;" value="<?php echo $notice_title; ?>">& ~. [3 L( o4 Y5 j; C  Q2 Z4 K
      </p>$ A4 Q5 v8 p3 X! Z2 W: {
      <p>) P& B1 I$ l1 z8 W+ _/ X4 B% \
          <label for="notice-content">Notice Content</label><br>4 H8 ~/ |& o: n: l. d
          <?php wp_editor($notice_content, 'notice-content', array('textarea_rows' => 10)); ?>- B* o: K) C1 g8 e& R& m/ f  A" d
      </p>/ h! y  H# U% R, p
      <?php
, q5 Q5 `* v$ o2 g# ?   }
0 t# V2 x8 E. I! K" p
: p) H( }* B  z! {) [& a. {   add_action('save_post', 'save_site_wide_notice_meta_box');) B& a9 ]: i! I
   function save_site_wide_notice_meta_box($post_id) {
  u3 C" G" N! \' y      if (!isset($_POST['notices_nonce']) || !wp_verify_nonce($_POST['notices_nonce'], basename(__FILE__))); ~" a+ u) I6 H9 a. t
         return;# J8 r2 e7 H8 N. r; U
      if (defined('DOING_AUTOSAVE') && DOING_AUTOSAVE)2 p0 k" S& a* j2 w8 K
         return;1 Y  {8 V! o: i+ f# }$ d- p% k" J
# s- x6 C+ m. q1 @: U$ M
      if (isset($_POST['notice_title'])) {7 H$ p6 r2 ?+ j) O) ]  h
          update_post_meta($post_id, 'notice_title', sanitize_text_field($_POST['notice_title']));
1 Y! Z$ o% [4 @; S- B      }+ N, _9 F- H% _# x/ z
      if (isset($_POST['notice_content'])) {
/ m" ^  u4 s" C- {, ^3 o          update_post_meta($post_id, 'notice_content', wp_kses_post($_POST['notice_content']));: V  E/ ^' e) r( z: I& V
      }) I1 V9 z; C- ^7 r4 r3 f9 e
   }
2 R5 s9 E  b; |/ {5 O  {( ?3 k- Z   ```
7 O# W6 k/ E) d2 Q  w: f- r1 g6 M0 h3 p7 ~
   在示例中,我们使用 `add_meta_box()` 函数添加了一个名为 `notice-details` 的元框,用于在编辑页面上显示自定义字段和元数据。在 `notice-details_meta_box()` 函数中,我们使用 `wp_editor()` 函数添加了一个可视化编辑器,用于编辑公告内容。在 `save_site_wide_notice_meta_box()` 函数中,我们使用 `update_post_meta()` 函数将公告标题和内容保存到 WordPress 数据库中。; x' s& ]8 f. x( H
1 @- \. A) Z) Q# b2 B* M7 v. V( T$ H
4. 在前端页面中显示公告:在 WordPress 主题文件中添加以下代码,以在您的网站上显示公告:
/ x  `# t. x: v; w7 M3 a
' o+ m/ e+ Y7 c   ```
/ t: T& [1 P& w) A  B   $args = array(
  `9 T: p5 a5 B6 F' u! @! A+ J8 _      'post_type' => 'site-wide-notices',
2 q  I$ \. n" F& R* V! s  O      'posts_per_page' => 3,
- r. }3 T/ t" A: p/ W+ ?/ R9 S      'order' => 'DESC',$ O2 U! w+ u+ c# |) c6 ]
      'orderby' => 'date'
5 O4 y* v& A3 e   );& W; r' H4 Z# ^( c% C5 r8 @
   $query = new WP_Query($args);1 ]' J9 z9 h, V/ y
   if ($query->have_posts()) :6 \/ v$ a, S) H7 R; B8 j* t
      while ($query->have_posts()) : $query->the_post(); ?>! G/ j1 B& D4 N
          <div class="notice">
! X2 E9 m" g- q8 u6 @' a0 g: w              <h3><?php the_title(); ?></h3>
: X! [3 x; K! y( V3 ^( G              <div class="notice-content"><?php the_content(); ?></div>
) t* R; l* r2 P7 }( f6 f5 C          </div>
9 @' Z; t* E) N7 T" C1 l      <?php endwhile;
* [* s: r% |$ k) {) y/ s      wp_reset_postdata();
" q* H* h: z" o1 H' `   endif;
3 \7 V$ h9 w  W8 F   ```
8 }" o  p8 H% ^! c' z- t6 K- i
   在示例中,我们使用 `WP_Query` 类从 `site-wide-notices` 文章类型中获取最近发布的 3 条公告,并在前端页面中循环遍历并显示标题和内容等信息。
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2026-1-31 17:24 , Processed in 0.014417 second(s), 2 queries , Redis On.

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

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