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

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

[复制链接]

334

主题

519

回帖

3402

积分

管理员

积分
3402
QQ
发表于 2023-5-18 08:34:20 来自手机 | 显示全部楼层 |阅读模式
您可以使用以下方法来快速在 WordPress 后台增加一个全站公告的功能:) S6 A. y2 x2 F3 q
7 d; v% T' J, u% {  w
1. 在 WordPress 插件库中寻找可用的公告插件,例如 WP Notification Bars、Announcements、SSP Elegant Notification Bar 等。
* A& H# s4 M7 ~/ W9 |0 [& o9 u( ]0 ?, F' B8 S
2. 安装并激活您选择的插件。您可以在 WordPress 后台的「插件」->「添加新插件」界面中搜索并安装插件,然后在「插件」->「已安装插件」界面中激活它。
: H; }: p2 S! _4 b: H/ I* }. e8 \; L6 D$ [# G
3. 在插件的设置页面中配置您的公告内容和样式。不同插件的设置选项和功能可能会有所不同,但通常都允许您定义公告的文本、链接、颜色、位置等。
" G- J- W# i" f" G+ G: o  P7 ~
. j( R5 M' E) F8 S+ J9 @% C; q9 Q4. 将公告添加到您的网站上。在插件设置页面中完成公告的设置后,您可以通过编辑 WordPress 主题的代码或使用插件提供的方法将公告添加到您的网站中。不同插件可能使用不同的添加方法,具体请查看详细说明或联系插件作者。
: [  y! N) W0 D1 T$ N; k  ]* L
1 e* H+ }4 v& y6 `. c7 y, N注意,如果您使用的 WordPress 主题已经包含了公告功能,或使用了其他公告插件,可能会导致冲突或功能重复。如果您遇到了这样的问题,请查看主题文档或联系主题作者以获取解决方案。
回复

使用道具 举报

334

主题

519

回帖

3402

积分

管理员

积分
3402
QQ
 楼主| 发表于 2023-5-18 08:34:51 来自手机 | 显示全部楼层
如果是自己开发的话,具体要怎么做?& |* ^7 Z/ k( D9 a, H8 W

7 M/ o! I, N" v" p如果您自己开发 WordPress 主题或插件,并且需要在后台中增加一个发布全站公告的功能,可以按照以下步骤操作:$ j' D, G5 \" u4 M
8 A* l7 W2 x/ I( M- E
1. 创建一个自定义的 WordPress 后台页面。您可以使用 `add_menu_page()` 或 `add_submenu_page()` 函数来创建一个自定义后台页面,例如:6 ?% B  X2 G+ h
+ Y# J) _: S5 B9 A
   ```% P3 q1 Q& e! u9 {7 M. ?
   add_menu_page(
- p2 u- E/ v  _7 \' k! ~& F       '全站公告'," C6 J2 ~. @4 E; P
       '全站公告',- H/ Y# O  `& X5 F8 s! |
       'manage_options', //需要的用户权限" G1 ]; k$ _  A. J5 h
       'site-wide-notice', //后台页面的 slug" z) j( x& a+ t, F0 c
       'render_site_wide_notice_page', //用于渲染后台页面内容的函数8 D4 T4 f7 C; c: C. T- z% B; F
       'dashicons-megaphone', //用于显示在菜单中的图标5 e9 V7 A) j8 k$ n' c7 V
       30 //菜单项的位置5 j. e* U. J0 g2 H5 L+ E
   );; ?- B, O; x  O' c4 G
   ```7 t1 w4 p$ J, J6 B: J* e- S

6 r. c: W- D2 x/ c& G# x/ R' a   在该示例中,我们使用 `add_menu_page()` 函数来创建了一个名为“全站公告”的菜单项,并指定需要的用户权限(`manage_options`),在后台页面的 slug 为 `site-wide-notice`,用于渲染后台页面内容的函数为 `render_site_wide_notice_page`,在菜单中显示的图标为 `dashicons-megaphone`,菜单项的位置为 30。  U1 w0 w' F) j% G

8 s1 h+ u# ^7 E. e1 y# l2. 编写用于显示和保存全站公告内容的代码。您可以在自定义后台页面中创建一个表单,让用户输入公告的标题、内容等信息,并将这些信息保存到 WordPress 数据库中的某个表中。例如:
' \! Y; Q6 i& v' w
+ d, H. V* B- b0 T& H& T; g   ```
: s3 `! h1 h( u9 E' \   function render_site_wide_notice_page() {& S5 o/ ?4 \" y4 S7 O% b4 p) _3 T
      // 渲染后台页面内容
& P0 z0 I* E/ h$ a$ `( [# @      echo '<div class="wrap">) g; C# |& |  J
          <h2>全站公告</h2>
) r4 {: E6 c. ?9 K5 |          <form method="post" action="">
+ u7 Q& M" S2 e              <label for="title">公告标题:</label>+ g9 `% z: k% T6 k$ w1 l
              <input type="text" name="title" value="'.get_option('site_wide_notice_title').'"><br><br>
8 U! {2 k- U3 ]5 Q+ K7 O              <label for="content">公告内容:</label>
3 l( H6 A5 L+ C% d: R: c              <textarea name="content">'.get_option('site_wide_notice_content').'</textarea><br><br>
8 T/ n5 d2 K# p8 d0 y- ?& ]7 r5 |              <input type="submit" name="submit" value="保存设置">$ x$ z' w6 V0 x4 T8 H
          </form>
2 u$ O# [) V4 |7 p( H      </div>';
/ q) P) x* o% O9 V7 d, ]
' k1 e4 s  i; t9 X- {      // 处理表单数据
% ]; C- {1 c; q# Y8 Z      if (isset($_POST['submit'])) {
+ h! z& V& |" R% d- C* A! E- @          update_option('site_wide_notice_title', sanitize_text_field($_POST['title']));+ x! I" F4 ?6 M- N. `% I2 j! _
          update_option('site_wide_notice_content', sanitize_text_field($_POST['content']));
! h! |1 A$ K  I+ B/ `0 x6 s% u      }7 n9 E$ w' M; S$ c! c$ N6 V
   }+ G& d5 j4 |. P8 d; L& C
   ```
2 T; l1 ]% G% f1 m
1 j# A$ c) v: K: S/ C4 W   在该示例中,我们创建了一个表单,让用户输入公告的标题和内容,并使用 `update_option()` 函数将这些数据保存到名为 `site_wide_notice_title` 和 `site_wide_notice_content` 的 WordPress 配置项中。如果用户点击提交按钮,则将表单数据更新到配置项。
( ?  n: t5 s% `) c0 ]
9 }% u8 I& n' d! I3 Y3. 在 WordPress 主题中显示全站公告。您可以通过在 WordPress 主题的 `header.php` 文件中添加代码,将公告内容显示在网站的顶部或其他位置。例如:
) `6 ~% }! q3 p5 [
+ H9 W! w+ X- v! I  t   ```6 u9 h7 e$ K) _
   <?php
! u  ~6 x% T$ h: {   $site_wide_notice_title = get_option('site_wide_notice_title');
6 l2 n+ a! x- a, U; Y   $site_wide_notice_content = get_option('site_wide_notice_content');4 M6 k  A( W0 l9 c# F' p* z
   if (!empty($site_wide_notice_title) || !empty($site_wide_notice_content)) {
' x8 S" e% D4 z8 O  g) b       echo '<div class="site-wide-notice">';1 `& B2 R& Y  {( V- `& O. c
       if (!empty($site_wide_notice_title)) {
( P  d) o6 v6 W1 F% F  X6 W7 q           echo '<h3>'.$site_wide_notice_title.'</h3>';
0 l0 g: H  `0 G' d: v, M       }! E. Q( t) U. r1 r5 q. d/ ^
       if (!empty($site_wide_notice_content)) {& c! U. t) P" w  S1 y
           echo '<p>'.$site_wide_notice_content.'</p>';
9 h9 I" A! u$ i4 x) B       }# U6 D( |1 r; ]# j6 Q
       echo '</div>';2 S( ~, e; j& s1 c
   }
) n) V* A9 {. D   ?>
7 b" w; B3 A% z% S   ```
& b' H: k& G: a  X3 A
& V1 \$ ]& u+ w  _1 T   在该示例中,我们检查 WordPress 配置项中名为 `site_wide_notice_title` 和 `site_wide_notice_content` 的值是否为空,如果不为空,则在 `header.php` 文件中添加一个名为 `site-wide-notice` 的容器,将公告标题和内容显示在其中。
) ~/ `( @" I8 x" U& W' w4 s1 S' I" U% F! z+ G
请注意,本示例仅提供了一个框架,具体实现可能会根据您的需求和实际情况有所不同,您需要根据自己的需要进行修改和调整。同时,为了确保安全性,您还会需要对用户输入的数据进行适当的验证和过滤,例如使用 `sanitize_text_field()` 函数来过滤表单数据。
回复

使用道具 举报

334

主题

519

回帖

3402

积分

管理员

积分
3402
QQ
 楼主| 发表于 2023-5-18 09:26:50 来自手机 | 显示全部楼层
那如果需要发布多条公告,并进行管理,要如何实现?
/ ?6 v! Q5 s8 O: m! |* Y5 y/ W1 ^5 Z
您可以创建一个自定义的 WordPress文章类型,例如“公告”,并对其进行自定义化,以实现发布多条公告并进行管理的功能。以下是具体步骤:
- p5 d: _$ U+ ~, r8 L* E/ v, y- u0 w/ \* T
1. 创建一个自定义的文章类型:在你的主题 `functions.php` 文件中,添加以下代码:
" `. [+ k) D# v+ e, T6 H1 [" l% X/ U. h
8 m$ K1 f$ \. u: G2 [  Y' I! g```5 u- c1 _; @$ o0 h
function create_custom_post_type() {
$ @" Y  C1 s5 B+ h  Y    $args = array(5 _) ]$ P0 r2 y
        'labels' => array(# U& l% t5 m6 \
            'name' => '公告',
9 b/ z' ^8 N5 O2 u6 a& ~  E            'singular_name' => '公告'- y3 d: _- L* ?( D! x
        ),8 Q5 m1 g$ F4 u& i9 \* r1 ~
        'public' => true,
0 H/ f8 J# a1 A* {) U. g6 A. ~; o        'has_archive' => true,
- `" o" a  D1 A8 I4 R        'supports' => array('title', 'editor', 'thumbnail', 'excerpt', 'custom-fields', 'revisions'),1 `" s8 ]4 m# B; n/ a3 B
        'taxonomies' => array('category', 'post_tag'),
* O8 D: I$ E( t( q8 E. `% X        'menu_icon' => 'dashicons-megaphone',
- ?4 T0 \; ]' E5 s+ W: A7 t        'menu_position' => 5,, e3 m( \3 e$ M& [+ m0 Q
        'rewrite' => array('slug' => 'site-wide-notices')2 t* I- U9 U7 v
    );5 f% I3 L" {( N% w+ p8 l4 H
    register_post_type('site-wide-notices', $args);
3 ^, U7 u1 A- {: m. w}! B8 r9 P" |/ @/ ]
add_action('init', 'create_custom_post_type');
5 z% |( s% e/ _6 u7 j1 x$ J2 |```* d0 r8 |" _% [* I# H- f$ l
2 X# d! v+ s& F: i0 L
在示例中,我们注册了一个名为 "site-wide-notices" 的新的文章类型,并定义了文章类型名称、缩略名、文章类型支持的功能、分类法、管理菜单图标等设置。
& N* O8 B" D# |% {, |7 b
! k" e" U1 `0 ]4 N& K0 I2. 在你的 WordPress 后台中创建新文章类型“公告”:现在,你就可以在 WordPress 后台中通过导航到“公告”菜单,来添加、编辑或删除公告了。您可以在编辑公告的页面中添加标题、内容、特色图像或其他自定义的元数据字段。6 q' u$ E/ i- \, F7 ^
, i) [* u0 ?4 S; Z+ C! X, i
3. 在主题中显示公告:在您的 WordPress 主题文件中添加以下代码,以在您的网站上显示公告:( b) w) ~1 |4 [* h+ K* r  W) M

7 l% E7 l3 W, k8 a0 R```
. \1 I7 n! _! D/ m6 ?$args = array(
# h& t3 ?# R6 R1 ~: d4 X9 K    'posts_per_page' => 3, // 显示的公告数量5 g5 N8 t: t- U
    'post_type' => 'site-wide-notices', // 公告文章类型
( ^  F" L$ V5 u! C' V* I    'post_status' => 'publish', // 公告状态
5 I6 J6 }8 f5 G2 H4 M1 p; w    'order' => 'DESC' // 排序方式
- @; \4 A. M" Y2 Q  }6 z);
1 {. P% l* p! L6 D* H7 T$ ~1 {* r. `: ]+ k" ?5 j
$notices = new WP_Query($args);
; u# D+ @3 M9 v3 Fif ($notices->have_posts()) :
: C; g, P5 ^  h7 ?' ^8 J8 G3 Q5 x8 [    while ($notices->have_posts()) : $notices->the_post(); ?>
8 Y+ q$ `' }- @2 v3 U6 h        <div class="notice">
% |' |& Q: Z: c6 R$ u7 |. Y( t            <h3><?php the_title(); ?></h3>
$ N$ H* [. ]% x% l            <div class="notice-content"><?php the_content(); ?></div>
% R" \: `% \7 C2 b' x        </div>' d6 q- ]. L/ n9 Z& M4 ?* w' P9 `7 o
    <?php endwhile;- k5 l' l; _. |  l
else :
, Y1 \; F4 E; H3 ^6 ?1 `; e' f    echo "暂无公告";& b/ \1 ?! x( P  }" K5 }' L4 Q
endif;4 }, V9 B7 ]" z* Q% z/ q
wp_reset_query();
  F* i, @2 F& b/ ~```
, H5 C: b. O7 P
) ~/ _4 D* C3 U这段代码将使用 WordPress 的 `WP_Query` 类从公告文章类型中获取最新发布的 3 条公告,并在前端页面中循环遍历并显示公告标题和内容等信息。
4 ~& ?0 c0 K2 s. U% }, X  d8 w0 U% K# }- }& d
以上便是实现 Wordpress 后台发布多条全站公告的基本步骤。需要注意的是,自定义文章类型可对应多篇文章,具体根据您的需求进行调整。
回复

使用道具 举报

334

主题

519

回帖

3402

积分

管理员

积分
3402
QQ
 楼主| 发表于 2023-5-18 09:27:55 来自手机 | 显示全部楼层
如果不想修改functions.php,有其他更好的办法吗?
2 n9 A7 u2 i- q4 |& N+ x! @/ B" \, w5 K0 H
如果您不想修改主题 `functions.php` 文件,也可以创建一个自定义插件来添加新的文章类型。
. Z1 U/ s$ k( C7 |0 v' C) ?# `+ e) ]. H' V1 S9 ?/ o* D/ o
以下是创建自定义插件的步骤:. L  c* q- M9 l; b( h

  ?8 W3 ~& i, D/ E1. 创建新插件:在 WordPress 插件目录中创建一个新的子目录,例如 `site-wide-notices-plugin`,然后在该目录中创建一个新的 PHP 文件,例如 `site-wide-notices-plugin.php`,并在文件头部添加必需的标记,例如:
+ B/ i' v& i# S. {0 E& ?+ u' S
1 l2 X" G: J9 `# X' }- g' q   ```
8 D4 x8 Q" t# T* r9 m( R   <?php( e$ L1 @3 F( ~) L
   /*
# L0 Z0 r3 }: d6 c" Y$ A3 i; U   Plugin Name: Site Wide Notices Plugin6 j# K* Y2 t/ E. p- \1 x& J! W
   Description: Adds a new custom post type for site-wide notices.
% I; h* R7 V( e$ y   Version: 1.09 J  Z* y, y' r3 P+ W" @
   Author: Your Name+ ^/ y9 w+ n6 {$ ]# o0 Y
   Author URI: http://example.com
$ e' g8 J9 t. p: G& ]1 J+ K9 m, [   */2 r" I8 l" s" b! L' ^  \. j
& z5 g1 ^0 {# q; o9 X6 |+ c- D
   // Add plugin code here...& m6 c& i* X2 k- v7 h! K4 l8 ^6 h3 o6 @
   ```
* o& Z! R& L9 [5 c9 s+ K/ X$ O  D& @4 v6 N
   在示例中,我们创建了一个名为 `Site Wide Notices Plugin` 的新插件,该插件添加了一个新的自定义文章类型,并指定了版本、作者和作者 URI 等元信息。
: f" l1 J5 U& n" `
# j& z& r! V8 a) m0 \* R$ f/ c2. 在插件中注册新的文章类型:在 PHP 文件中添加以下代码,用于注册一个名为“site-wide-notices”的自定义文章类型:6 v( i: i% J- Y7 J; W4 f
4 S3 a+ t( b; E2 J. q+ c
   ```
* ?9 e$ j# w8 [0 {( G: {   add_action('init', 'create_custom_post_type');3 c6 R2 ]* @& ~+ ?) m. h; P: D
   function create_custom_post_type() {
/ Q; i2 W  T/ z* Y) {      $labels = array($ C  s: y1 C4 O# o
          'name' => 'Site Wide Notices',
) G9 X: n3 ]: I) F  M' ~9 e          'singular_name' => 'Site Wide Notice',
. m- h5 a+ d' c          'add_new' => 'Add New',
9 `& d( Z6 e* b$ N# h3 w/ D3 `  Q/ R          'add_new_item' => 'Add New Site Wide Notice',
9 ~2 f. F& E4 V" n9 c          'edit_item' => 'Edit Site Wide Notice',: ?$ k# z" ?- o. [% u9 W
          'new_item' => 'New Site Wide Notice',
4 `$ V7 t8 J: h! r$ C, ?; Z: |          'view_item' => 'View Site Wide Notice'," D: e7 Z2 s& f, U" e6 H
          'search_items' => 'Search Site Wide Notices',! a7 t$ Q! V7 X3 K' {- g
          'not_found' => 'No site-wide notices found',
+ S8 ~" Q  I, ^$ f1 Z- `          'not_found_in_trash' => 'No site-wide notices found in trash'4 B( r& ]  S" W( @7 P4 T+ X
      );
- }& K) c5 x5 D  p/ S8 V
7 G$ c6 t, |/ O: t1 `( [6 \8 M& b, H      $args = array(. q) U4 p' c7 P& f! D* H) T
          'labels' => $labels,0 k2 c; ?' b% ]! h3 j4 [3 m& p
          'public' => true,
2 H) B# ^; X5 N$ e          'has_archive' => true,( Y: x. |" U5 y" ~6 x7 w
          'supports' => array('title', 'editor', 'thumbnail', 'excerpt', 'custom-fields', 'revisions'),* C5 N4 Y5 Q$ d4 ~
          'taxonomies' => array('category', 'post_tag'),
5 M' R) ?$ [/ V9 \5 a7 t          'menu_icon' => 'dashicons-megaphone',
/ p% {, d; r/ c' h9 T/ d          'menu_position' => 5,
) V8 N# B8 `0 p9 ]' M          'rewrite' => array('slug' => 'site-wide-notices')$ e: |" F' \4 n7 A% u  Q. d. J
      );
$ V/ n2 ^# Q" `& E+ h+ N0 `
; I4 k/ E4 ?) @' P, a      register_post_type('site-wide-notices', $args);
# s; D  w; \' j+ k. z9 p   }
; D. V+ a; [; t1 L9 X7 S$ `; s! c   ```; E: n- L5 N. y1 V4 A

# K' L( N  ~* p. S   在示例中,我们使用 `register_post_type()` 函数注册一个新的文章类型,并定义了该文章类型的名称、标签和其他设置。- e0 R6 z* p0 ]" U/ ]

, t& P1 D: y/ j8 @  w0 r& x& K3. 在后台中添加公告编辑页面:您可以使用 `add_meta_box()` 函数在后台中添加公告编辑页面,并自定义字段和元数据,例如:
) U* D6 s) U$ i- F+ a" v, c( y- G8 f8 ?) r% K; q0 O
   ```
# T+ c7 w: o& c; E0 M   add_action('add_meta_boxes', 'add_site_wide_notices_boxes');
% \+ f3 b$ S! D' e& ]   function add_site_wide_notices_boxes() {( D( A# T3 B8 O! E/ H7 P5 w
      add_meta_box('notice-details', 'Notice Details', 'notice_details_meta_box', 'site-wide-notices', 'normal', 'high');
5 J/ N# `6 Q# C   }
7 y! k3 z+ k0 p+ c  Y3 n3 y* R
   function notice_details_meta_box($post) {
# D! z; c2 R$ p      wp_nonce_field(basename(__FILE__), 'notices_nonce');: t9 |4 a! Y: \. s" _
      $notice_title = get_post_meta($post->ID, 'notice_title', true);; q& S* z. n( U+ V
      $notice_content = get_post_meta($post->ID, 'notice_content', true);
9 [( R. S8 C; O. s& a# C      ?># r- h0 @" \1 A/ p( T" g, @! d3 ^7 A
      <p>
1 j, O5 W$ Q5 w( u4 M: a8 w7 u          <label for="notice-title">Notice Title</label><br>! G' q) q, v3 w( ~7 Q" k2 b8 x
          <input type="text" id="notice-title" name="notice_title" style="width: 100%;" value="<?php echo $notice_title; ?>">
4 w- `$ a% |  S4 U% W% T      </p>
: e4 z% N1 _6 A      <p>
5 v0 e4 n& c9 X- Y, |3 Z          <label for="notice-content">Notice Content</label><br>
3 ]$ c# R% t# g3 _; B) G          <?php wp_editor($notice_content, 'notice-content', array('textarea_rows' => 10)); ?>, P. [6 W) Z2 v" K& D7 G
      </p>6 s% E# z; [* G* `  s, w  f
      <?php# n; y4 Q  F2 t; x! A0 g& p: E1 w* s
   }4 F7 S+ e3 J! T
# o/ c) Z) h2 v. n6 J! D
   add_action('save_post', 'save_site_wide_notice_meta_box');2 v, [% [+ r( h; ]  V
   function save_site_wide_notice_meta_box($post_id) {
  G- b# Q- @1 r- U  e      if (!isset($_POST['notices_nonce']) || !wp_verify_nonce($_POST['notices_nonce'], basename(__FILE__)))
  P- o+ q7 \0 y. H         return;. W5 E) b7 e; t- D
      if (defined('DOING_AUTOSAVE') && DOING_AUTOSAVE)9 X9 b; E" G( o1 M$ T
         return;
$ R. v; x$ N& Y1 A+ N" F" Z( X) u9 H: J$ t
      if (isset($_POST['notice_title'])) {
5 b' J- ^2 t; c+ H          update_post_meta($post_id, 'notice_title', sanitize_text_field($_POST['notice_title']));
2 J9 `$ O8 g" O2 t      }
; x3 P$ }4 x) z, [8 g      if (isset($_POST['notice_content'])) {
0 f' u* f7 F6 x: W          update_post_meta($post_id, 'notice_content', wp_kses_post($_POST['notice_content']));
4 q  _+ Z. z# j      }
3 p1 w( g' V# [   }
  O- U" K# ^2 G4 W0 N   ```4 j0 B6 d/ _5 M0 c

, k1 ?  d" P* ^& d   在示例中,我们使用 `add_meta_box()` 函数添加了一个名为 `notice-details` 的元框,用于在编辑页面上显示自定义字段和元数据。在 `notice-details_meta_box()` 函数中,我们使用 `wp_editor()` 函数添加了一个可视化编辑器,用于编辑公告内容。在 `save_site_wide_notice_meta_box()` 函数中,我们使用 `update_post_meta()` 函数将公告标题和内容保存到 WordPress 数据库中。$ e$ U" j$ N6 G4 i$ D

; m# L' L& W" s4 J) j' l4. 在前端页面中显示公告:在 WordPress 主题文件中添加以下代码,以在您的网站上显示公告:
1 l3 S, t" Q4 ~
) j/ ?* X7 V" I' O7 ]   ```
( t2 n) b2 c; H! A" L/ R   $args = array(: W! c; ]- S6 G; o. [4 `7 B+ Y0 E
      'post_type' => 'site-wide-notices',
; \  _8 P7 N- K8 V8 F      'posts_per_page' => 3,
. {/ x# B/ d$ e7 u      'order' => 'DESC',4 x4 s0 y4 }3 n1 r) X+ K
      'orderby' => 'date'
0 |+ k% q  X4 m" @, b) L( s   );# `8 `2 D, M/ {/ a" q& ~
   $query = new WP_Query($args);
5 O3 v# ]$ [& h   if ($query->have_posts()) :2 x! v, L' Q& H& C# R7 m# x  m
      while ($query->have_posts()) : $query->the_post(); ?>$ y4 M. [& F) u3 g3 t
          <div class="notice">3 v, q) D( Q9 x4 W& T' r% z
              <h3><?php the_title(); ?></h3>
3 X5 b( E( o# ~' o$ h1 b% y              <div class="notice-content"><?php the_content(); ?></div>
3 w+ \& [+ ?# q# z* V          </div>
! F1 S( ^, G- T/ b      <?php endwhile;; O& L5 Y$ r0 q7 v
      wp_reset_postdata();
" g% j8 U+ _, A3 S5 d) P4 {/ j   endif;+ h( a/ X/ E; R, h6 u
   ```
1 f- ~; d. K7 a* _
* J8 O- w; u( w3 l! ]! X0 z7 @   在示例中,我们使用 `WP_Query` 类从 `site-wide-notices` 文章类型中获取最近发布的 3 条公告,并在前端页面中循环遍历并显示标题和内容等信息。
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-12-5 18:09 , Processed in 0.078638 second(s), 3 queries , Redis On.

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

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