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

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

[复制链接]

341

主题

540

回帖

3565

积分

管理员

积分
3565
QQ
发表于 2023-5-18 08:34:20 来自手机 | 显示全部楼层 |阅读模式
您可以使用以下方法来快速在 WordPress 后台增加一个全站公告的功能:3 ]) r! ^1 `2 h$ ?6 n. Y
; m; _% R+ T) N+ M' N3 C
1. 在 WordPress 插件库中寻找可用的公告插件,例如 WP Notification Bars、Announcements、SSP Elegant Notification Bar 等。
2 f+ m" N' `  u6 _7 K' s
" t& _& x: S5 z+ `3 u" X2. 安装并激活您选择的插件。您可以在 WordPress 后台的「插件」->「添加新插件」界面中搜索并安装插件,然后在「插件」->「已安装插件」界面中激活它。
, \( `! y4 n! E+ Q" a: H0 y/ q- U$ z# u* @0 @: ]* F
3. 在插件的设置页面中配置您的公告内容和样式。不同插件的设置选项和功能可能会有所不同,但通常都允许您定义公告的文本、链接、颜色、位置等。
* C$ f" I: O; e7 Y7 `6 ~( d: w
$ P$ \& f  X( `- g3 I, r, d5 H4. 将公告添加到您的网站上。在插件设置页面中完成公告的设置后,您可以通过编辑 WordPress 主题的代码或使用插件提供的方法将公告添加到您的网站中。不同插件可能使用不同的添加方法,具体请查看详细说明或联系插件作者。
. G" ?3 ~: M- h, c7 y) P) T9 H* ?4 s' Z$ k+ H0 h$ O
注意,如果您使用的 WordPress 主题已经包含了公告功能,或使用了其他公告插件,可能会导致冲突或功能重复。如果您遇到了这样的问题,请查看主题文档或联系主题作者以获取解决方案。
回复

使用道具 举报

341

主题

540

回帖

3565

积分

管理员

积分
3565
QQ
 楼主| 发表于 2023-5-18 08:34:51 来自手机 | 显示全部楼层
如果是自己开发的话,具体要怎么做?3 L1 _4 U( ^. X3 v9 p
6 v% h: A' L4 q, n( l! o  K8 G: L
如果您自己开发 WordPress 主题或插件,并且需要在后台中增加一个发布全站公告的功能,可以按照以下步骤操作:4 O9 N. o4 t6 W
' r' s1 W4 q1 U% a% J  M
1. 创建一个自定义的 WordPress 后台页面。您可以使用 `add_menu_page()` 或 `add_submenu_page()` 函数来创建一个自定义后台页面,例如:
  }& }- N! x" s) [" W
4 Y7 s: B! t8 s8 a' j! u' v2 g   ```
! J9 V! d4 r6 G" J+ y" |   add_menu_page(
! P; A; v. c+ f  ]3 n8 I+ s. o       '全站公告',- F7 O8 `1 v9 A# R9 g' E$ C
       '全站公告',
1 T7 h9 e; E& ^* Q  ?5 i2 O6 O       'manage_options', //需要的用户权限" x! C" M% R1 N2 I5 P0 v* E
       'site-wide-notice', //后台页面的 slug2 X; N7 p: O2 b4 t
       'render_site_wide_notice_page', //用于渲染后台页面内容的函数
2 P8 B8 [- s- {) w       'dashicons-megaphone', //用于显示在菜单中的图标
4 ~: ?0 H+ }! ]% g0 _2 A' D5 x2 Z       30 //菜单项的位置
4 g4 Q/ Y: r4 ?7 q' x   );
! i- ?% N& \6 @* ^7 Z- q   ```
) `1 L  ]5 T6 T: U$ P4 I7 X% O4 b, |
   在该示例中,我们使用 `add_menu_page()` 函数来创建了一个名为“全站公告”的菜单项,并指定需要的用户权限(`manage_options`),在后台页面的 slug 为 `site-wide-notice`,用于渲染后台页面内容的函数为 `render_site_wide_notice_page`,在菜单中显示的图标为 `dashicons-megaphone`,菜单项的位置为 30。1 B, h4 f' s" }6 |9 K' V) F, ?
: U! H! I. a* I) d" H& h
2. 编写用于显示和保存全站公告内容的代码。您可以在自定义后台页面中创建一个表单,让用户输入公告的标题、内容等信息,并将这些信息保存到 WordPress 数据库中的某个表中。例如:
9 _! l; u' T% Q8 b: G
' S0 _: W! @! D1 W7 \   ```
7 }7 k3 A# P9 U- W! u   function render_site_wide_notice_page() {* m, B) K8 z8 }' F6 p
      // 渲染后台页面内容" p  X+ I0 s" c1 B, R
      echo '<div class="wrap">
$ X" [% i. I% D8 u( x7 m          <h2>全站公告</h2>" @( A% L, w5 S% B2 S- N8 P
          <form method="post" action=""># l8 @8 i* S! O- L  r; W
              <label for="title">公告标题:</label>
, j' u4 S! ~. |4 `* p1 Y. w              <input type="text" name="title" value="'.get_option('site_wide_notice_title').'"><br><br>
% d; |% ^8 K  r+ s% L1 R              <label for="content">公告内容:</label>. Q* C( N. @4 d. o
              <textarea name="content">'.get_option('site_wide_notice_content').'</textarea><br><br>2 _: K+ S7 m6 J# K& {
              <input type="submit" name="submit" value="保存设置">+ \4 H& |# T4 E. H: @3 E  ?# W3 l: |9 `+ x
          </form>) r( Z- D, P& a- C
      </div>';
1 S( I  J% j8 o' \
/ Q5 j' K+ p, k9 H9 f+ [3 W      // 处理表单数据
. n9 H2 w7 ~' H: u* H! k3 P      if (isset($_POST['submit'])) {  J5 z! `' s5 a# c: g0 O9 y
          update_option('site_wide_notice_title', sanitize_text_field($_POST['title']));  w4 D8 Y# j+ r) t
          update_option('site_wide_notice_content', sanitize_text_field($_POST['content']));# Z& y% e# Y# o5 h, e* V1 B: |
      }
% d9 X0 e2 Q2 A5 o  e' v   }2 @" z2 {8 [( L" Q
   ```; a% W9 W( z  Q( D* e1 h8 h% t! s

. T" U8 z  k% y" V   在该示例中,我们创建了一个表单,让用户输入公告的标题和内容,并使用 `update_option()` 函数将这些数据保存到名为 `site_wide_notice_title` 和 `site_wide_notice_content` 的 WordPress 配置项中。如果用户点击提交按钮,则将表单数据更新到配置项。( r# S% V; v+ O& W7 ]4 k; q2 L

- I& u1 e3 Q/ p$ R" |# ]8 r3. 在 WordPress 主题中显示全站公告。您可以通过在 WordPress 主题的 `header.php` 文件中添加代码,将公告内容显示在网站的顶部或其他位置。例如:( X4 d5 a/ [+ y' G/ w
5 |  e5 E& j- n4 @# f
   ```
4 \# z' V. I' y1 P   <?php  H- z+ o& [. J' e  r, c! r
   $site_wide_notice_title = get_option('site_wide_notice_title');0 x' z0 G- e# r. z* x
   $site_wide_notice_content = get_option('site_wide_notice_content');$ U% ^. _0 X0 x  I7 V( Z3 G. ^
   if (!empty($site_wide_notice_title) || !empty($site_wide_notice_content)) {
! |& m) U; u# Z+ I       echo '<div class="site-wide-notice">';7 ?  U, z4 I* l% e5 p; `; H
       if (!empty($site_wide_notice_title)) {7 K% _. v. b  O+ H& j# T
           echo '<h3>'.$site_wide_notice_title.'</h3>';
/ ^- W- q6 n' r2 E* d       }$ W  i# a; W+ T; T* x
       if (!empty($site_wide_notice_content)) {/ F* D) ]( p0 e* s
           echo '<p>'.$site_wide_notice_content.'</p>';9 ]- ?' W, M9 v1 N9 Q+ f
       }& t, C; p* S! L3 k* T) K. z( h" o
       echo '</div>';. J0 A2 L+ Q) t! ]8 o* x4 K$ a
   }
+ i$ G9 P7 [2 E   ?>
5 W! p% a5 ~9 I: S   ```( V- ]: X" C7 j+ U1 ^$ H1 p9 s

% j# U" H) {2 ?0 w# i   在该示例中,我们检查 WordPress 配置项中名为 `site_wide_notice_title` 和 `site_wide_notice_content` 的值是否为空,如果不为空,则在 `header.php` 文件中添加一个名为 `site-wide-notice` 的容器,将公告标题和内容显示在其中。. Y4 b$ M7 A8 Q4 }. V
# R% ^3 J8 y) R! _: G
请注意,本示例仅提供了一个框架,具体实现可能会根据您的需求和实际情况有所不同,您需要根据自己的需要进行修改和调整。同时,为了确保安全性,您还会需要对用户输入的数据进行适当的验证和过滤,例如使用 `sanitize_text_field()` 函数来过滤表单数据。
回复

使用道具 举报

341

主题

540

回帖

3565

积分

管理员

积分
3565
QQ
 楼主| 发表于 2023-5-18 09:26:50 来自手机 | 显示全部楼层
那如果需要发布多条公告,并进行管理,要如何实现?
- f0 C! a3 C1 }
" C$ p9 I8 |; d" t您可以创建一个自定义的 WordPress文章类型,例如“公告”,并对其进行自定义化,以实现发布多条公告并进行管理的功能。以下是具体步骤:5 _% n  l9 u- n( o3 A

$ q4 `% y; N* @1. 创建一个自定义的文章类型:在你的主题 `functions.php` 文件中,添加以下代码:2 u$ F2 L! N" b. P
( z9 m9 H, d( P; e% M* d  U, Y
```9 \2 F1 S. `! i; r$ f. W$ _
function create_custom_post_type() {
2 c+ y6 f4 A: U1 S    $args = array(
% p( z# o8 q" T6 i- |- D9 d9 Z: d! h        'labels' => array(6 R* ?; n5 D# t: c: [7 [( ?
            'name' => '公告',# U/ g" I; J8 ^6 S3 g+ I9 {! p
            'singular_name' => '公告'' c0 k1 B" I; o" h  Q% z0 \% ]9 l
        ),. K( g0 S$ v  @* `1 ~3 e7 d4 {$ q
        'public' => true,+ n+ E- l% V& i, ^
        'has_archive' => true,9 s4 ~4 z! N. V1 {3 H
        'supports' => array('title', 'editor', 'thumbnail', 'excerpt', 'custom-fields', 'revisions'),
7 D' Y6 f$ A  _& g        'taxonomies' => array('category', 'post_tag'),
' p; Q# z3 O% E& ]        'menu_icon' => 'dashicons-megaphone',
! G3 p% Z6 o  p+ w& g8 X/ \- {" ~        'menu_position' => 5,9 _) z) w5 Y* ~5 M! a" ~
        'rewrite' => array('slug' => 'site-wide-notices'): h3 G" ]/ d2 b" t
    );+ E5 D: |) ?. U1 M/ L2 A
    register_post_type('site-wide-notices', $args);6 V  @: q' ?& g) m) h8 X
}2 c* T! x3 Q5 r  {
add_action('init', 'create_custom_post_type');
8 X3 X" G, j! U. S( r```
0 ~! ^6 `8 _, ]% T3 s, ^( E. H1 w+ p$ R$ r8 `
在示例中,我们注册了一个名为 "site-wide-notices" 的新的文章类型,并定义了文章类型名称、缩略名、文章类型支持的功能、分类法、管理菜单图标等设置。
1 ^: I0 c' L$ A, s+ G' C0 G! X: }5 t0 o/ o+ G# F8 C7 k2 H' \
2. 在你的 WordPress 后台中创建新文章类型“公告”:现在,你就可以在 WordPress 后台中通过导航到“公告”菜单,来添加、编辑或删除公告了。您可以在编辑公告的页面中添加标题、内容、特色图像或其他自定义的元数据字段。0 p3 {4 o" J3 {6 M+ Y7 L8 T0 y) O% b' f
3 m8 |* k4 f& x, ]' l+ _; ]
3. 在主题中显示公告:在您的 WordPress 主题文件中添加以下代码,以在您的网站上显示公告:. \9 Z5 M1 c) w' L- T% R

! G2 Y; Z" h7 }```! Y6 `" r+ h4 K3 j+ l/ A
$args = array(6 f+ `( r6 P0 C0 Q' ^
    'posts_per_page' => 3, // 显示的公告数量
6 Q" }3 h) a% I) s% ~' {    'post_type' => 'site-wide-notices', // 公告文章类型
+ ]8 `6 U) l( t    'post_status' => 'publish', // 公告状态
0 l' g4 @% A* o) Y6 W% s3 B    'order' => 'DESC' // 排序方式
' ]* [" X& v8 O- s5 R);  R  w7 B! |3 R$ y

& N( d% k' W+ ]$ w; Z" B. h8 e$notices = new WP_Query($args);/ i: R6 C/ L9 Y  Z! o
if ($notices->have_posts()) :
8 J3 `' |& n; x) \) c# c    while ($notices->have_posts()) : $notices->the_post(); ?>) G) v3 Q9 M9 q8 L8 g. t/ E
        <div class="notice">
% o: G$ K  C3 L' u3 [  ?0 }) p; R            <h3><?php the_title(); ?></h3>
0 z3 R/ {7 h( y' D            <div class="notice-content"><?php the_content(); ?></div>' d" \3 V2 A! k
        </div>
: d4 R" n3 t& [5 J; n    <?php endwhile;
# R8 @$ x3 P* I5 F: M0 e* pelse :
: ^7 z8 P4 C/ \0 k8 J    echo "暂无公告";2 T. |1 K' n( o( ]6 L+ p
endif;3 ^1 `$ z+ i( \$ B- @/ z
wp_reset_query();0 l3 @* A, {) a* i1 D2 ?9 h
```
6 T9 |) a0 c9 @
( Y8 q& ~$ M' n1 `+ e/ q这段代码将使用 WordPress 的 `WP_Query` 类从公告文章类型中获取最新发布的 3 条公告,并在前端页面中循环遍历并显示公告标题和内容等信息。# a7 S: M+ u% @
7 h! e3 ]; `1 d- Z* C  d/ `' w# [
以上便是实现 Wordpress 后台发布多条全站公告的基本步骤。需要注意的是,自定义文章类型可对应多篇文章,具体根据您的需求进行调整。
回复

使用道具 举报

341

主题

540

回帖

3565

积分

管理员

积分
3565
QQ
 楼主| 发表于 2023-5-18 09:27:55 来自手机 | 显示全部楼层
如果不想修改functions.php,有其他更好的办法吗?
5 P; Y; o( s  T. N4 P; X* ~) d3 ^9 `" `9 E) C9 i
如果您不想修改主题 `functions.php` 文件,也可以创建一个自定义插件来添加新的文章类型。: C6 ]' q0 V  {% t- z. a  j
2 q0 p, ?3 j0 K3 b6 F# _
以下是创建自定义插件的步骤:) I3 @* Z9 {1 q5 O1 F

8 x0 T9 V' g6 Y, d% ]8 M; y1. 创建新插件:在 WordPress 插件目录中创建一个新的子目录,例如 `site-wide-notices-plugin`,然后在该目录中创建一个新的 PHP 文件,例如 `site-wide-notices-plugin.php`,并在文件头部添加必需的标记,例如:
' W4 d: y9 L% {$ @
% J2 e4 T+ y; O. ^- f" j   ```
. Q0 P' Z) N+ N. V' S   <?php7 D' F- ~5 k1 w" Q5 w8 Q1 z8 {
   /*$ |! X9 w  N) O: r3 t/ m7 }/ V- F
   Plugin Name: Site Wide Notices Plugin" ^' x9 l+ s: {( L# ^
   Description: Adds a new custom post type for site-wide notices.
% _1 |+ ?$ I# p   Version: 1.06 r, q9 t& I/ R0 X
   Author: Your Name% o. K7 t% |3 c- \" z1 O- V  c
   Author URI: http://example.com
' m5 P, {6 Y4 y( D  V   */
# D# s( E6 e, ?# M8 t& z
# W- i9 e; K+ g& z8 ^/ X; b   // Add plugin code here...7 b2 ?9 F) v" E" r  S. X+ G
   ```
8 m+ H- W+ A: Z# j6 F+ [# Y( \6 R! S5 e
   在示例中,我们创建了一个名为 `Site Wide Notices Plugin` 的新插件,该插件添加了一个新的自定义文章类型,并指定了版本、作者和作者 URI 等元信息。
. O& _& c" e) P7 \" R( O
5 z* I! {# `' o2. 在插件中注册新的文章类型:在 PHP 文件中添加以下代码,用于注册一个名为“site-wide-notices”的自定义文章类型:' G' L; j6 k" K
$ C9 m) W' Z9 d& L9 `6 Q
   ```
2 R9 g' p! h$ D+ g) O  r   add_action('init', 'create_custom_post_type');' T3 f3 x  M8 H& l$ X
   function create_custom_post_type() {* r" ^, \5 m9 h) D) q* s4 _
      $labels = array(
2 L& h( v. D$ S; }1 C5 i& o          'name' => 'Site Wide Notices',
5 I. m; N8 Y6 J3 A4 e  Z% }6 d+ M          'singular_name' => 'Site Wide Notice',9 a0 J8 }6 Z9 l+ Y, m; g4 ~
          'add_new' => 'Add New',
7 G- F* F5 Q$ g$ I          'add_new_item' => 'Add New Site Wide Notice',
  K8 Q0 l) ?2 v6 q          'edit_item' => 'Edit Site Wide Notice',; T! Q$ ~$ \, t9 \/ i. f
          'new_item' => 'New Site Wide Notice',8 X+ B; z2 |0 z
          'view_item' => 'View Site Wide Notice',
2 x/ @/ z2 t% |& z& ^          'search_items' => 'Search Site Wide Notices',) a( _8 O5 U" }1 P# K
          'not_found' => 'No site-wide notices found',* K) U- j5 Q+ k& F7 [# _
          'not_found_in_trash' => 'No site-wide notices found in trash') w4 Z3 `" ]/ A
      );/ {& h, I% N6 p, }5 S, a
- W; {) [0 @: |; U) o0 L6 ~
      $args = array(2 f8 ~2 V7 C0 e, G' ]" g6 m/ I
          'labels' => $labels,; F& _2 k4 ]3 }5 e# r
          'public' => true,
3 u( A' ?' s9 J6 t+ `; F          'has_archive' => true,
( \% q; `3 Q5 F& Y: F( H( l          'supports' => array('title', 'editor', 'thumbnail', 'excerpt', 'custom-fields', 'revisions'),! ^2 P0 ^0 Z) D& l7 X' [% _
          'taxonomies' => array('category', 'post_tag'),
7 M; M- e2 H6 _3 B; @7 K          'menu_icon' => 'dashicons-megaphone',
$ X: {) x4 Q# p          'menu_position' => 5,3 r4 W% l' m! x, }9 r0 J4 F% T+ ^* d) R
          'rewrite' => array('slug' => 'site-wide-notices')5 P& j+ e3 V' e7 u# _% `% t
      );: [( ~" Q2 x/ h
4 X2 J. q1 D. j
      register_post_type('site-wide-notices', $args);
% N1 l4 R6 m. y/ G# L& Z   }/ }, o  w# p$ n9 `. [+ Z" f! |
   ```# f5 y7 b+ @. S  K

# U. Q$ @9 C; U' F; g4 i/ T5 G' K   在示例中,我们使用 `register_post_type()` 函数注册一个新的文章类型,并定义了该文章类型的名称、标签和其他设置。( A8 ]4 E5 D" J4 n# S
2 B' N3 }; @) Y
3. 在后台中添加公告编辑页面:您可以使用 `add_meta_box()` 函数在后台中添加公告编辑页面,并自定义字段和元数据,例如:6 q/ w' i2 R3 w

# c4 w% o" v1 t: s1 b0 V7 F   ```
2 {" I" e1 ?2 y% j$ p   add_action('add_meta_boxes', 'add_site_wide_notices_boxes');/ K- `6 `5 j: E) ]8 R
   function add_site_wide_notices_boxes() {; b3 I! Q: U" w; t
      add_meta_box('notice-details', 'Notice Details', 'notice_details_meta_box', 'site-wide-notices', 'normal', 'high');/ \. e6 ^- d: C+ b! Q! W
   }
9 ]  v% p! X' Z: h5 a4 p/ S$ X& n& C' f9 ^# z( c; p
   function notice_details_meta_box($post) {
" Z! w& C" M' ^0 c, f. k9 d      wp_nonce_field(basename(__FILE__), 'notices_nonce');
/ b- I9 x( O! j+ k( }( d3 `      $notice_title = get_post_meta($post->ID, 'notice_title', true);% ~9 H9 u! e: O" k% {. \8 p
      $notice_content = get_post_meta($post->ID, 'notice_content', true);; q8 Z2 `# S" d  y: r) @
      ?>
' K4 |  j) w- a$ _      <p>
* P. C0 i8 }; z+ w3 \; ?          <label for="notice-title">Notice Title</label><br>) C1 Z! B  Z3 k
          <input type="text" id="notice-title" name="notice_title" style="width: 100%;" value="<?php echo $notice_title; ?>">/ u7 v. U$ W/ S- a" P
      </p>, }; c  D6 @; L; J
      <p>
  @4 X8 W; J5 H! D! p0 J          <label for="notice-content">Notice Content</label><br>; w% N9 h2 }2 S' m7 M2 }' O
          <?php wp_editor($notice_content, 'notice-content', array('textarea_rows' => 10)); ?>" A: a+ ]* h; n+ a" f6 h3 T
      </p>
6 W  v! ?7 Y1 q      <?php
8 X7 j- G, f7 A+ l- W6 @   }
( a5 d9 J' ]7 }" j+ b& o7 ]6 c0 N4 E+ ~; e
   add_action('save_post', 'save_site_wide_notice_meta_box');, d8 w) ?; `1 m: p0 U, A" L$ ?) O
   function save_site_wide_notice_meta_box($post_id) {
8 |9 c5 ]  Y5 p" H5 u% D0 B0 ]      if (!isset($_POST['notices_nonce']) || !wp_verify_nonce($_POST['notices_nonce'], basename(__FILE__)))/ O6 b/ g' l4 m
         return;
5 n. L- ]9 D* C. v, m      if (defined('DOING_AUTOSAVE') && DOING_AUTOSAVE)
; ?1 q# s, q; x3 V. o         return;4 {; D* p! V$ K  X8 m- o% ~$ i

' W- S: Z/ Q" ]% l      if (isset($_POST['notice_title'])) {7 L& N4 j5 A) b$ W
          update_post_meta($post_id, 'notice_title', sanitize_text_field($_POST['notice_title']));) l% \( b1 L3 |4 x/ p' w! W
      }; x  N; X6 C$ S7 u, ?+ O
      if (isset($_POST['notice_content'])) {
7 y, O' m+ D: U          update_post_meta($post_id, 'notice_content', wp_kses_post($_POST['notice_content']));
3 j6 i* a7 x0 b$ J1 h& ?      }, l% b0 W, Y: _1 V2 L8 s) {
   }
4 @$ ^: v- p- z2 c' y' o) x   ```3 D9 i2 W% B: p+ Q+ W
+ U( v& {8 q* k  \, z. ]6 t2 V
   在示例中,我们使用 `add_meta_box()` 函数添加了一个名为 `notice-details` 的元框,用于在编辑页面上显示自定义字段和元数据。在 `notice-details_meta_box()` 函数中,我们使用 `wp_editor()` 函数添加了一个可视化编辑器,用于编辑公告内容。在 `save_site_wide_notice_meta_box()` 函数中,我们使用 `update_post_meta()` 函数将公告标题和内容保存到 WordPress 数据库中。) h' b, E& x0 [. L% R: B
" w* e, Z% R$ E' P% p: G+ h0 v
4. 在前端页面中显示公告:在 WordPress 主题文件中添加以下代码,以在您的网站上显示公告:
2 ^2 k, \+ S. i% H1 a; U9 n% O# b% u" ?, w3 S+ T1 u
   ```% }2 ^: q3 d) y; N% F
   $args = array(0 o" d, ]: x# Z& a
      'post_type' => 'site-wide-notices',
6 U1 a9 v+ W! D* D  k( i      'posts_per_page' => 3,+ \2 G/ E- L4 g1 y) L+ `# p. D
      'order' => 'DESC',
/ M' d. V3 G+ U: u      'orderby' => 'date'' \+ u0 g0 v9 A& V1 Q$ z' k
   );
" a/ N0 @4 W6 U  C1 o   $query = new WP_Query($args);, K, m. A4 M( ?# r
   if ($query->have_posts()) :0 k- Q) G. L8 M9 V
      while ($query->have_posts()) : $query->the_post(); ?>
- R% V) h2 y: t& ], {          <div class="notice">
* X& i$ B0 [0 u- k              <h3><?php the_title(); ?></h3># B0 g3 p/ v7 G2 k/ @# _1 ?; K) \
              <div class="notice-content"><?php the_content(); ?></div>
; d' D- d4 b8 B9 v; N' m$ l          </div>  U2 j. q, ^7 @
      <?php endwhile;
/ C! ~# Z" A* O% j' T% ]- E      wp_reset_postdata();8 j" }- Q2 E+ D, Y
   endif;( A1 J- i, e) U
   ```
9 h) ]+ e8 F1 `2 S7 l& {0 p# F  ]
   在示例中,我们使用 `WP_Query` 类从 `site-wide-notices` 文章类型中获取最近发布的 3 条公告,并在前端页面中循环遍历并显示标题和内容等信息。
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2026-1-24 00:06 , Processed in 0.018844 second(s), 2 queries , Redis On.

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

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