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

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

[复制链接]

340

主题

529

回帖

3528

积分

管理员

积分
3528
QQ
发表于 2023-5-18 08:34:20 来自手机 | 显示全部楼层 |阅读模式
您可以使用以下方法来快速在 WordPress 后台增加一个全站公告的功能:, Z, z+ |) x+ F1 P
1 ?: i: i0 ?6 K( c0 O5 ^. X
1. 在 WordPress 插件库中寻找可用的公告插件,例如 WP Notification Bars、Announcements、SSP Elegant Notification Bar 等。; z4 |3 e, A9 n: X4 o1 }

1 k* e9 `8 q. W2. 安装并激活您选择的插件。您可以在 WordPress 后台的「插件」->「添加新插件」界面中搜索并安装插件,然后在「插件」->「已安装插件」界面中激活它。
& [3 Y5 ]' a: J3 F1 ]3 m) `
+ C* _+ ^! K$ A8 i' K+ b3. 在插件的设置页面中配置您的公告内容和样式。不同插件的设置选项和功能可能会有所不同,但通常都允许您定义公告的文本、链接、颜色、位置等。2 G  c) u' m/ _

. ~& U; W' X4 |: `. c. I  Q: `4. 将公告添加到您的网站上。在插件设置页面中完成公告的设置后,您可以通过编辑 WordPress 主题的代码或使用插件提供的方法将公告添加到您的网站中。不同插件可能使用不同的添加方法,具体请查看详细说明或联系插件作者。
0 w$ @8 u$ }& E  X" l
) A0 q, H/ s3 K' o8 U: `注意,如果您使用的 WordPress 主题已经包含了公告功能,或使用了其他公告插件,可能会导致冲突或功能重复。如果您遇到了这样的问题,请查看主题文档或联系主题作者以获取解决方案。
回复

使用道具 举报

340

主题

529

回帖

3528

积分

管理员

积分
3528
QQ
 楼主| 发表于 2023-5-18 08:34:51 来自手机 | 显示全部楼层
如果是自己开发的话,具体要怎么做?
$ T1 T4 _- k: r( b0 {* ~& W1 E# ?
如果您自己开发 WordPress 主题或插件,并且需要在后台中增加一个发布全站公告的功能,可以按照以下步骤操作:1 B9 p: I+ a+ A  Q
* c8 {- z9 i. K
1. 创建一个自定义的 WordPress 后台页面。您可以使用 `add_menu_page()` 或 `add_submenu_page()` 函数来创建一个自定义后台页面,例如:
/ m* U: z) |) m% B  F  s
$ J& J7 [( z9 ^: f4 m   ```; W# c; Z+ v' z/ Y# Q
   add_menu_page() B8 b' C! {2 ?
       '全站公告',
3 Y& P1 r- M" ?       '全站公告',
" h) j6 _' ~3 p( q6 o; F       'manage_options', //需要的用户权限% _' v& z" G6 i  g& d
       'site-wide-notice', //后台页面的 slug
! w/ P' e5 t) I9 k5 k       'render_site_wide_notice_page', //用于渲染后台页面内容的函数& Y/ K  G0 _2 V" o1 ?6 A; U' ?
       'dashicons-megaphone', //用于显示在菜单中的图标
5 U7 I( x9 B# f- d       30 //菜单项的位置0 h8 ?7 M8 |* M, ^% F
   );
$ n$ e, @1 f9 l9 E1 {3 W/ D   ```
: n; G* V( x+ \. u5 H, q
' {, w5 o/ V9 C4 `3 W2 t# O   在该示例中,我们使用 `add_menu_page()` 函数来创建了一个名为“全站公告”的菜单项,并指定需要的用户权限(`manage_options`),在后台页面的 slug 为 `site-wide-notice`,用于渲染后台页面内容的函数为 `render_site_wide_notice_page`,在菜单中显示的图标为 `dashicons-megaphone`,菜单项的位置为 30。
5 T/ h+ Q: _8 V0 A% b
/ g( N' n5 n. C+ Z9 F2. 编写用于显示和保存全站公告内容的代码。您可以在自定义后台页面中创建一个表单,让用户输入公告的标题、内容等信息,并将这些信息保存到 WordPress 数据库中的某个表中。例如:: a) T: C7 i$ W, |5 a+ k7 ~0 ]1 I
5 h  W: P7 X) g8 O
   ```+ k: K$ H" Z9 b' @8 X% L- b7 d
   function render_site_wide_notice_page() {0 i; {8 }. H  P* D( Q, g0 |* c
      // 渲染后台页面内容
4 r0 [; V8 a: b. V+ x      echo '<div class="wrap">
2 F2 u# L4 z) Y          <h2>全站公告</h2>4 q/ A$ O: {3 m" ~, @  I
          <form method="post" action="">
4 d9 w; N5 ~" x; X* T: C1 Y* ^              <label for="title">公告标题:</label>
' o1 O/ [4 e0 F4 j9 E              <input type="text" name="title" value="'.get_option('site_wide_notice_title').'"><br><br>8 v8 z5 R8 \8 F0 z4 w) H$ \
              <label for="content">公告内容:</label>0 K( k3 o) R9 o1 x: h
              <textarea name="content">'.get_option('site_wide_notice_content').'</textarea><br><br>
) |, S6 l5 j3 u4 b. d5 K; P              <input type="submit" name="submit" value="保存设置">1 }# X/ {7 Q& {4 l
          </form>4 ?9 R. @" N8 r# P) ]5 p
      </div>';3 L; d& z! h2 N1 V4 j+ S. W
5 F8 P9 f5 D  |, |6 O( n* X" h
      // 处理表单数据6 I& T& q" P. D# U" Z
      if (isset($_POST['submit'])) {
4 @6 x! l5 A& k2 Q6 ?/ K! c          update_option('site_wide_notice_title', sanitize_text_field($_POST['title']));9 Z/ A% n6 x1 z
          update_option('site_wide_notice_content', sanitize_text_field($_POST['content']));
) Y! ]- p- L7 ~# g3 W7 I, X% N      }
9 W! {1 \( `' P3 u; G4 Z4 b0 r   }
  g  X- S: P3 r5 {   ```' v  X6 }9 S- E" U2 L6 C
8 F1 Y5 O6 s% I, \+ z2 J
   在该示例中,我们创建了一个表单,让用户输入公告的标题和内容,并使用 `update_option()` 函数将这些数据保存到名为 `site_wide_notice_title` 和 `site_wide_notice_content` 的 WordPress 配置项中。如果用户点击提交按钮,则将表单数据更新到配置项。9 C4 V' R9 ~; L* T% a
- Z* ^$ \, ?6 |0 @2 |' b
3. 在 WordPress 主题中显示全站公告。您可以通过在 WordPress 主题的 `header.php` 文件中添加代码,将公告内容显示在网站的顶部或其他位置。例如:2 a) n( L# ^! f) F. h1 s0 y, O5 E
8 F. D0 O) u) U" e! [. ^# q
   ```
6 i$ x- A5 U  ~8 N7 G1 {5 p   <?php; B# ?9 q  l6 ]: O. d7 d
   $site_wide_notice_title = get_option('site_wide_notice_title');
3 q" `+ ~3 d' Z7 M7 p6 R( y   $site_wide_notice_content = get_option('site_wide_notice_content');. ?, r; N% a! J! I: K
   if (!empty($site_wide_notice_title) || !empty($site_wide_notice_content)) {1 ^5 s+ X0 _: T2 R- u! f
       echo '<div class="site-wide-notice">';" {; t0 m% e: u: O* D
       if (!empty($site_wide_notice_title)) {. ^  _/ l# \& z7 n6 N- u1 A6 I
           echo '<h3>'.$site_wide_notice_title.'</h3>';
; `6 Z3 ?3 [* d0 x5 G4 X       }
% P0 j7 I: F2 Z' P5 j0 K( E+ f       if (!empty($site_wide_notice_content)) {" n6 ~: J4 K$ z7 F9 ], }& y
           echo '<p>'.$site_wide_notice_content.'</p>';* u  U0 L+ q' |1 _% D9 @1 ?6 e1 _
       }: K+ S; l4 l" J
       echo '</div>';( W0 `, e6 p/ g# a1 G7 e
   }( y* \. `7 z7 N/ C
   ?># O! Q% |8 {+ }2 m3 Y* d: R
   ```) k+ H: W, y6 V1 p, P/ A

1 |1 y, F/ w7 v  C" Q% T( R   在该示例中,我们检查 WordPress 配置项中名为 `site_wide_notice_title` 和 `site_wide_notice_content` 的值是否为空,如果不为空,则在 `header.php` 文件中添加一个名为 `site-wide-notice` 的容器,将公告标题和内容显示在其中。/ k& ]& ~) z0 m/ u
% @, ~7 ^9 r  r8 L/ Y
请注意,本示例仅提供了一个框架,具体实现可能会根据您的需求和实际情况有所不同,您需要根据自己的需要进行修改和调整。同时,为了确保安全性,您还会需要对用户输入的数据进行适当的验证和过滤,例如使用 `sanitize_text_field()` 函数来过滤表单数据。
回复

使用道具 举报

340

主题

529

回帖

3528

积分

管理员

积分
3528
QQ
 楼主| 发表于 2023-5-18 09:26:50 来自手机 | 显示全部楼层
那如果需要发布多条公告,并进行管理,要如何实现?9 \: ], ^  @; n/ S9 F
* H# r% @, Z( ]! j9 H, P8 ]
您可以创建一个自定义的 WordPress文章类型,例如“公告”,并对其进行自定义化,以实现发布多条公告并进行管理的功能。以下是具体步骤:
& _. ~9 ]& D$ R) e" t6 ]) H# a! N2 i3 W) J$ c; u. x, g5 c0 \, k+ P
1. 创建一个自定义的文章类型:在你的主题 `functions.php` 文件中,添加以下代码:- P& h/ ~8 D( v% z) l4 F" P; I' P5 N

; m. W$ o1 e1 Z7 t```: {" n3 z  c' p5 t9 ^: ~
function create_custom_post_type() {7 W0 V  P  b3 p/ G( z
    $args = array(
; g1 F0 t: M. J- ~7 p/ B& K, D        'labels' => array(* Y# c: u7 z1 L6 _5 t
            'name' => '公告',! }, f; [' i8 t; S
            'singular_name' => '公告'! H" ^0 N9 I+ m. R3 F0 ^3 }$ f( j7 S
        ),
6 k1 b7 N9 _. B        'public' => true,) I* G5 @6 @0 K
        'has_archive' => true,
. n8 }8 b4 g$ A        'supports' => array('title', 'editor', 'thumbnail', 'excerpt', 'custom-fields', 'revisions'),
; d! B" X, [5 \4 _: @        'taxonomies' => array('category', 'post_tag'),) i) w: u* X9 l, ~
        'menu_icon' => 'dashicons-megaphone',4 ~: D; p( M+ f9 Q, f6 J
        'menu_position' => 5,
3 N( n3 a/ S  b* q( s, ?        'rewrite' => array('slug' => 'site-wide-notices')
7 ^' b, M; `' q    );
% l0 h% p/ K0 o: W" m3 m$ z! Y    register_post_type('site-wide-notices', $args);
! @9 T9 `4 y( }}
4 Q( s- J* z" aadd_action('init', 'create_custom_post_type');0 v4 w; \7 I7 i9 E" e% Z9 @
```
! ~# V. G- k& v+ ~% L
  a  f. ]' Z2 b! X5 t: }9 u在示例中,我们注册了一个名为 "site-wide-notices" 的新的文章类型,并定义了文章类型名称、缩略名、文章类型支持的功能、分类法、管理菜单图标等设置。
# _7 L7 I1 x' S. D7 X% u% C# C: q8 j4 m) Z" P$ r& H$ U+ F6 M' @
2. 在你的 WordPress 后台中创建新文章类型“公告”:现在,你就可以在 WordPress 后台中通过导航到“公告”菜单,来添加、编辑或删除公告了。您可以在编辑公告的页面中添加标题、内容、特色图像或其他自定义的元数据字段。
0 a( J: X1 E6 k2 w0 s
3 [, u' c& Z6 h: X& T1 x2 s& Y" |0 m3. 在主题中显示公告:在您的 WordPress 主题文件中添加以下代码,以在您的网站上显示公告:* _$ Y% T  m! r$ r7 j2 o3 w+ R

# c. W' h1 |3 Q- w% o; S8 B4 R# g```
$ L. ?" r. G4 ^$ r$args = array(( L. p& d( |: D
    'posts_per_page' => 3, // 显示的公告数量
. \' F( B$ V- U    'post_type' => 'site-wide-notices', // 公告文章类型
; B) E8 i3 `5 o5 s7 b  y    'post_status' => 'publish', // 公告状态) M/ A& q1 }6 Q5 V" z- r4 [+ C
    'order' => 'DESC' // 排序方式, l: d. U2 r4 |/ K  _
);& A# p0 A% L3 v5 [; {, r2 x* |5 x
6 ^' @, g) C4 b$ X" b, I; Z1 G
$notices = new WP_Query($args);( f/ c# ^$ j- y7 }2 G5 ~7 j
if ($notices->have_posts()) :( e# e. A9 Z% U. g0 [$ K/ ~* D
    while ($notices->have_posts()) : $notices->the_post(); ?>5 E! ?7 Y/ L- x2 \- B3 u4 w
        <div class="notice">
  M7 ^) v$ L1 i" }! m8 E/ ]) ~4 @            <h3><?php the_title(); ?></h3>. O+ j* Z3 N; _* J
            <div class="notice-content"><?php the_content(); ?></div>  Y! k3 z  B8 T% A3 Y) V; m# p6 O
        </div>" B$ d4 G0 L$ ^# d
    <?php endwhile;
& I. @8 |! y0 K, qelse :
& O. `; l" q) w- C7 Q- J# @: y    echo "暂无公告";
2 ]8 V" A, U  J/ Bendif;  x# f9 t* u& D5 p0 K) u
wp_reset_query();
( N5 ]5 s8 [% l" c" K```; P" p7 O5 z& K+ o2 [
+ z3 c' \+ g* E5 _
这段代码将使用 WordPress 的 `WP_Query` 类从公告文章类型中获取最新发布的 3 条公告,并在前端页面中循环遍历并显示公告标题和内容等信息。
( c. m, ]* J! t$ l. d  M% E9 l! R
以上便是实现 Wordpress 后台发布多条全站公告的基本步骤。需要注意的是,自定义文章类型可对应多篇文章,具体根据您的需求进行调整。
回复

使用道具 举报

340

主题

529

回帖

3528

积分

管理员

积分
3528
QQ
 楼主| 发表于 2023-5-18 09:27:55 来自手机 | 显示全部楼层
如果不想修改functions.php,有其他更好的办法吗?* Q+ ^$ M5 z5 _/ X

% Z0 l" g# ^/ u" g- H; ]. L如果您不想修改主题 `functions.php` 文件,也可以创建一个自定义插件来添加新的文章类型。4 W6 W: @  }4 s
$ \6 U& B+ E* K- w
以下是创建自定义插件的步骤:/ q3 w; W# V! H- \

. H% s. q4 P1 N/ \  m$ L1. 创建新插件:在 WordPress 插件目录中创建一个新的子目录,例如 `site-wide-notices-plugin`,然后在该目录中创建一个新的 PHP 文件,例如 `site-wide-notices-plugin.php`,并在文件头部添加必需的标记,例如:
2 l2 w' K3 f& F1 q! ?/ T3 K; L8 Q" ?2 W1 J8 W
   ```% L: c. Y$ y9 U/ W
   <?php7 B/ @+ x, C) p
   /*3 s# i  c3 I8 u) b$ r0 T- \) n
   Plugin Name: Site Wide Notices Plugin
9 B; X5 |& p0 }   Description: Adds a new custom post type for site-wide notices.
. _9 U4 E& p" M" V   Version: 1.0
6 J- c- ^; E& K- f6 Z   Author: Your Name
% K" K5 a6 _) n. v1 O8 V5 d# |   Author URI: http://example.com1 p2 \" @8 ?: {) _: U- @; C
   */
- m. f. U, B4 N8 [+ A
; N% L7 H# S2 K   // Add plugin code here...' |( O& {* d& q2 o9 a  e
   ```8 p/ r; ^8 _  V, F
9 A: o: ^- Q+ P
   在示例中,我们创建了一个名为 `Site Wide Notices Plugin` 的新插件,该插件添加了一个新的自定义文章类型,并指定了版本、作者和作者 URI 等元信息。
+ l: R" Q0 ~  x! j4 X
  M3 G$ C6 G) X) X3 ^$ D2. 在插件中注册新的文章类型:在 PHP 文件中添加以下代码,用于注册一个名为“site-wide-notices”的自定义文章类型:! {8 Q4 t5 _0 k) l7 j% o& z
( f9 }/ G9 |0 j- M7 ^; P
   ```
; J1 Y+ a/ f  l$ S# `# k5 M   add_action('init', 'create_custom_post_type');1 S  f: z. y" W+ J0 G/ i
   function create_custom_post_type() {
3 }9 r' B1 D- P6 }* |      $labels = array(
5 r# Y$ V8 k) P0 \          'name' => 'Site Wide Notices',
+ K- k3 E" X2 y) A' f, Q          'singular_name' => 'Site Wide Notice',
: m  c1 S, w5 m5 f- E! ?/ x/ @( ~3 o          'add_new' => 'Add New',( \) ]; ~* T2 m, _7 Y4 t5 B
          'add_new_item' => 'Add New Site Wide Notice',
7 Q! s8 Q. @9 e/ L          'edit_item' => 'Edit Site Wide Notice',  e/ i0 u0 c4 t, T" K& p
          'new_item' => 'New Site Wide Notice',
. r8 u; J' Y( K6 u          'view_item' => 'View Site Wide Notice',
3 d" i4 T1 s& S* S+ K8 A' e          'search_items' => 'Search Site Wide Notices',( ?3 g6 l! r/ j  y) e9 z
          'not_found' => 'No site-wide notices found',' G' q# `' ~" Q) ]
          'not_found_in_trash' => 'No site-wide notices found in trash'+ z' q, W$ t% U' G- H
      );0 C9 @. N) [* ~3 I3 r% q4 ?" x7 l
6 [- j$ t! j  @3 O
      $args = array(
) Z* A$ u6 E  X/ `# B! \" w0 r          'labels' => $labels,
$ V% X; K! a2 u          'public' => true,
; h' v2 S6 L6 I          'has_archive' => true,
+ W: |8 Q) U6 p# x6 d9 a          'supports' => array('title', 'editor', 'thumbnail', 'excerpt', 'custom-fields', 'revisions'),
% w( m. T! g* O          'taxonomies' => array('category', 'post_tag'),5 d* ]! {/ n4 Y" p3 @8 H7 W  S
          'menu_icon' => 'dashicons-megaphone',
, c- z% A# G# G          'menu_position' => 5,& d6 R# s1 y5 {+ O
          'rewrite' => array('slug' => 'site-wide-notices')
. p0 S( D8 o+ W      );
6 O  N& u3 L% L+ _' n. t* j) K& {  v3 L
      register_post_type('site-wide-notices', $args);# j8 q- C0 w; R3 Z5 `
   }
; g( R, W+ o  F; ~6 [3 j4 `& O   ```
7 j  I+ M. ^. ~* S- U  U! B& \" Z- M  e& W- w, I* ~; C2 v
   在示例中,我们使用 `register_post_type()` 函数注册一个新的文章类型,并定义了该文章类型的名称、标签和其他设置。
4 \  x$ H7 p# l
2 z! r8 Q, K5 L. r. u6 D- b3. 在后台中添加公告编辑页面:您可以使用 `add_meta_box()` 函数在后台中添加公告编辑页面,并自定义字段和元数据,例如:
! y4 Q; h5 J2 T1 ]; f! ~9 b8 G% t0 n0 G
   ```4 m" ^' @4 `  e! {
   add_action('add_meta_boxes', 'add_site_wide_notices_boxes');$ Q. j! V. Q2 ?* I/ E7 U: x5 a7 E
   function add_site_wide_notices_boxes() {
- X0 U( v* ^/ L      add_meta_box('notice-details', 'Notice Details', 'notice_details_meta_box', 'site-wide-notices', 'normal', 'high');
4 n* O9 C6 v6 s1 }   }
$ y  Y, g  \' k8 j
; [. s  _+ ^* V   function notice_details_meta_box($post) {
$ X/ m) u# _6 Y; J0 `+ y      wp_nonce_field(basename(__FILE__), 'notices_nonce');, }( G0 ~' I! ?5 S( q$ b
      $notice_title = get_post_meta($post->ID, 'notice_title', true);  S: Z2 d" r* t7 [4 y/ C) Q8 S
      $notice_content = get_post_meta($post->ID, 'notice_content', true);2 |6 c2 A; Q) s: ^1 P: M& a3 A
      ?>2 _2 j  G; R$ `( ^  _- c4 {0 }! r
      <p>+ Z* S& D# _, A" w
          <label for="notice-title">Notice Title</label><br>
8 Y3 h4 _& ^. }7 y7 S6 J2 O( r+ Z          <input type="text" id="notice-title" name="notice_title" style="width: 100%;" value="<?php echo $notice_title; ?>">% ~* F7 K- D. z  }, h
      </p>7 m6 w1 P3 o  \, Q+ s9 S
      <p>
8 ]. g- U0 ]2 L2 m) J' M# v; Y          <label for="notice-content">Notice Content</label><br>) D+ d9 t$ {* E7 ?3 H
          <?php wp_editor($notice_content, 'notice-content', array('textarea_rows' => 10)); ?>9 ~% q$ k! ?7 l  G
      </p>& d% _2 S1 M+ X0 t
      <?php
" N0 a. {, K- @0 V1 w   }
! [5 N) }# M, R' q% m
; v) g4 a4 x+ V3 l- L: `   add_action('save_post', 'save_site_wide_notice_meta_box');$ W. X1 I+ j% U4 v
   function save_site_wide_notice_meta_box($post_id) {
, s1 M6 u5 E# w1 [4 d, s      if (!isset($_POST['notices_nonce']) || !wp_verify_nonce($_POST['notices_nonce'], basename(__FILE__)))
. I% c5 l9 E% C9 l$ W  a         return;9 ]$ h- m  Q+ A( i; Y3 I' ~
      if (defined('DOING_AUTOSAVE') && DOING_AUTOSAVE)/ r! a0 x- ~! i( D) k4 k
         return;! x0 L$ i; ^) f) X0 l& U, D

8 f. W/ a: ]# m; L3 W      if (isset($_POST['notice_title'])) {
; ^+ i; P3 c9 w7 I" }8 G9 H          update_post_meta($post_id, 'notice_title', sanitize_text_field($_POST['notice_title']));; u, [; W  W2 m) v: s2 q% D6 Z( p
      }: K4 ~' e$ B% d) q8 Q
      if (isset($_POST['notice_content'])) {
& Q1 M. m! f7 R5 f# R1 B; h8 U          update_post_meta($post_id, 'notice_content', wp_kses_post($_POST['notice_content']));
! E: y" w* {& H/ H( j* f- A" i      }+ H4 ?! S) c" t9 k
   }6 w8 c' J* }$ b4 p! d4 D, T
   ```4 Q5 K" G& f! C9 C. K7 r

3 P- l' z  K& R- ^" O   在示例中,我们使用 `add_meta_box()` 函数添加了一个名为 `notice-details` 的元框,用于在编辑页面上显示自定义字段和元数据。在 `notice-details_meta_box()` 函数中,我们使用 `wp_editor()` 函数添加了一个可视化编辑器,用于编辑公告内容。在 `save_site_wide_notice_meta_box()` 函数中,我们使用 `update_post_meta()` 函数将公告标题和内容保存到 WordPress 数据库中。' _0 ?# K2 Q( s9 Q% ~

" p2 ]. K9 i0 r! i4. 在前端页面中显示公告:在 WordPress 主题文件中添加以下代码,以在您的网站上显示公告:! h6 y6 r, F7 y$ b$ B0 v' }) J
$ b$ n5 X, K% N
   ```7 s3 N& u5 u3 K/ C% d) k4 z" b- c8 x
   $args = array(
5 v8 |. u8 F% a/ d3 C7 R      'post_type' => 'site-wide-notices',
4 K( S5 X4 m+ {7 B4 e% D( |% r      'posts_per_page' => 3,
/ e; K; l/ J, a6 [0 ^8 v& K      'order' => 'DESC',6 \. B+ N5 K  J7 W5 J5 y! n
      'orderby' => 'date'; W8 q+ U8 O- i; r$ Q
   );0 g6 q& c: L" l. d, y
   $query = new WP_Query($args);
& q. |' I  Z! l6 `3 o   if ($query->have_posts()) :
' k' U* ]4 B8 h9 @5 e5 a      while ($query->have_posts()) : $query->the_post(); ?>+ w* v2 t, E: c
          <div class="notice">
- }6 V0 K! U! A( q& H7 b              <h3><?php the_title(); ?></h3>
! i8 L0 M: G8 ^/ J  H5 k1 _4 ]              <div class="notice-content"><?php the_content(); ?></div>
  G+ M* b% f  L' r9 F* [. B+ R          </div>
* x7 z6 s/ ~" e2 w2 o2 q# T      <?php endwhile;
3 W2 J& y) V( m3 }4 Q8 [$ x  y      wp_reset_postdata();+ z) z3 z8 k! g
   endif;
1 Z3 u. h7 a4 E   ```
( P2 G0 I- o0 y' B9 j# S1 n, ?' o3 N5 J2 X. }2 o8 g0 I/ Q: }
   在示例中,我们使用 `WP_Query` 类从 `site-wide-notices` 文章类型中获取最近发布的 3 条公告,并在前端页面中循环遍历并显示标题和内容等信息。
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2026-1-18 22:10 , Processed in 0.018964 second(s), 2 queries , Redis On.

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

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