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

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

[复制链接]

340

主题

529

回帖

3532

积分

管理员

积分
3532
QQ
发表于 2023-5-18 08:34:20 来自手机 | 显示全部楼层 |阅读模式
您可以使用以下方法来快速在 WordPress 后台增加一个全站公告的功能:
; @; ]' ?# l8 H+ w; V/ @4 O7 S5 `; R, `; w) A+ M+ W5 t
1. 在 WordPress 插件库中寻找可用的公告插件,例如 WP Notification Bars、Announcements、SSP Elegant Notification Bar 等。% Y: e- P% U8 N5 u
2 w4 ?; {, j& D8 r: u7 ?. K! Y
2. 安装并激活您选择的插件。您可以在 WordPress 后台的「插件」->「添加新插件」界面中搜索并安装插件,然后在「插件」->「已安装插件」界面中激活它。2 G! |! q+ S3 X4 l% @1 k, g8 M
+ ~. N) l) o  V0 X1 U
3. 在插件的设置页面中配置您的公告内容和样式。不同插件的设置选项和功能可能会有所不同,但通常都允许您定义公告的文本、链接、颜色、位置等。! y! F* \5 |  J' ^  B4 C

4 r) E& `( H' g( U! s# T8 S6 m- J4. 将公告添加到您的网站上。在插件设置页面中完成公告的设置后,您可以通过编辑 WordPress 主题的代码或使用插件提供的方法将公告添加到您的网站中。不同插件可能使用不同的添加方法,具体请查看详细说明或联系插件作者。
0 k- y+ }. ]) o( z2 T: t2 Q
+ ^$ Q% E, q8 V4 s: d# D) q注意,如果您使用的 WordPress 主题已经包含了公告功能,或使用了其他公告插件,可能会导致冲突或功能重复。如果您遇到了这样的问题,请查看主题文档或联系主题作者以获取解决方案。
回复

使用道具 举报

340

主题

529

回帖

3532

积分

管理员

积分
3532
QQ
 楼主| 发表于 2023-5-18 08:34:51 来自手机 | 显示全部楼层
如果是自己开发的话,具体要怎么做?- Z# j( O; `# I; O4 @5 S; P* T3 N7 m
9 g: s+ S. G" T$ Y: q# n: w; M
如果您自己开发 WordPress 主题或插件,并且需要在后台中增加一个发布全站公告的功能,可以按照以下步骤操作:
0 F' i) U$ g5 E
. f; B$ p/ A2 I; ?) H1. 创建一个自定义的 WordPress 后台页面。您可以使用 `add_menu_page()` 或 `add_submenu_page()` 函数来创建一个自定义后台页面,例如:
6 e% p0 s3 ~) k! H8 n: J6 C. [4 o$ L7 H) _% h
   ```5 h! d* D  A6 i/ {
   add_menu_page(& a2 s; x% @/ h* _
       '全站公告',
; p5 y0 d) a: Y( ]+ E: [! F       '全站公告',
! R: D) S3 I3 F1 C) d/ u       'manage_options', //需要的用户权限
% ?4 g2 l7 _" _1 J       'site-wide-notice', //后台页面的 slug6 j$ b9 l+ d$ @- n) o% S
       'render_site_wide_notice_page', //用于渲染后台页面内容的函数) B4 `7 F! y- {. o+ r/ C3 d
       'dashicons-megaphone', //用于显示在菜单中的图标
- ?1 y0 W- n  O/ V/ _2 s: n. P! A$ G       30 //菜单项的位置
  i) ^: h+ c& u% y2 J# ]3 m* ?   );
- P" ?+ L) M1 U/ C- ^( I* }   ```5 c1 O, O8 s( g* H

, S1 z# n; Q( Z1 x: Q: R   在该示例中,我们使用 `add_menu_page()` 函数来创建了一个名为“全站公告”的菜单项,并指定需要的用户权限(`manage_options`),在后台页面的 slug 为 `site-wide-notice`,用于渲染后台页面内容的函数为 `render_site_wide_notice_page`,在菜单中显示的图标为 `dashicons-megaphone`,菜单项的位置为 30。. V$ R1 T5 R% `- w' Q3 J
0 v* x. G- z3 Y
2. 编写用于显示和保存全站公告内容的代码。您可以在自定义后台页面中创建一个表单,让用户输入公告的标题、内容等信息,并将这些信息保存到 WordPress 数据库中的某个表中。例如:6 J- e5 c# Q* Y* g' A1 G7 Z7 d

/ o' m2 i* g* J2 W" d1 e   ```
! v$ U$ \  n. H# Z7 ^# P! v& e& x   function render_site_wide_notice_page() {" ]* r& e; l$ ~$ k! A
      // 渲染后台页面内容
- q- \, R3 G  L& P      echo '<div class="wrap">
) k6 M" c) S+ h% n% u9 m7 F          <h2>全站公告</h2>/ H8 I9 l/ h/ G, X, \2 A
          <form method="post" action="">' s5 B: X4 g6 y. ~" |
              <label for="title">公告标题:</label>6 p, `% n3 E( [! O1 r
              <input type="text" name="title" value="'.get_option('site_wide_notice_title').'"><br><br>4 P& y, q( \4 a& K" ]3 ~
              <label for="content">公告内容:</label>
9 }/ V% n% x5 X. B              <textarea name="content">'.get_option('site_wide_notice_content').'</textarea><br><br>
/ E. I0 A4 s& h. S$ ^. v% e              <input type="submit" name="submit" value="保存设置">
, E1 J% E4 k" P          </form>
7 S6 Z- A, ~! q      </div>';/ q) w+ o# `$ t9 l! p
! U$ q( x/ p, A
      // 处理表单数据& m! c* |+ t+ I, ?) x" ^+ S
      if (isset($_POST['submit'])) {
0 g+ E1 u6 L& J: j          update_option('site_wide_notice_title', sanitize_text_field($_POST['title']));& z- H0 x4 U: M  Y9 M
          update_option('site_wide_notice_content', sanitize_text_field($_POST['content']));6 R6 O! A, ^; f2 }( R* y$ C
      }( X/ [, [) `; g
   }
7 T& |  u3 m3 f   ```2 c) Z' @# |- J# O  ?$ S+ i

1 N9 q% ]7 L+ ?6 i! h! t; E8 D3 |   在该示例中,我们创建了一个表单,让用户输入公告的标题和内容,并使用 `update_option()` 函数将这些数据保存到名为 `site_wide_notice_title` 和 `site_wide_notice_content` 的 WordPress 配置项中。如果用户点击提交按钮,则将表单数据更新到配置项。$ d; r' Y$ N' M1 \1 j

' M* Z$ R  b& t( n5 Q6 Z' }  S+ _* `3. 在 WordPress 主题中显示全站公告。您可以通过在 WordPress 主题的 `header.php` 文件中添加代码,将公告内容显示在网站的顶部或其他位置。例如:
, x9 v9 P9 b) _; K+ U4 N+ H6 \$ C% ^. j$ r
   ```* e* m# ^; }: r" E
   <?php& _' A. E/ j; ?/ k7 V! x
   $site_wide_notice_title = get_option('site_wide_notice_title');3 W0 Y; t' j7 O- P' ?  O( G5 D, B3 S
   $site_wide_notice_content = get_option('site_wide_notice_content');
. g4 c+ q% n6 T  i7 g) Q. g/ ^   if (!empty($site_wide_notice_title) || !empty($site_wide_notice_content)) {
8 w' _: @* p& s: N* Q: d       echo '<div class="site-wide-notice">';3 Y* d+ q' D* b, u" I5 C7 W& a
       if (!empty($site_wide_notice_title)) {
; W; i: A5 m. i# ~3 m           echo '<h3>'.$site_wide_notice_title.'</h3>';
+ a- ^) X  m$ q1 w       }
: V6 n) h: p* L/ O2 I$ W       if (!empty($site_wide_notice_content)) {
. @* \/ E2 |0 h& c           echo '<p>'.$site_wide_notice_content.'</p>';
7 }& S( F1 y: x4 Y       }
: X3 I- W0 C( c8 D3 K9 J       echo '</div>';
/ V  T* q* [1 M! G2 n   }0 m% i) n+ n5 ?, K8 }5 E
   ?>
0 r9 k7 U. q( m6 \5 K  X% G. W& y   ```( F4 G1 d$ w% g9 I, s6 y/ U, i! f
4 @! c' E6 ~, G# j1 y" D
   在该示例中,我们检查 WordPress 配置项中名为 `site_wide_notice_title` 和 `site_wide_notice_content` 的值是否为空,如果不为空,则在 `header.php` 文件中添加一个名为 `site-wide-notice` 的容器,将公告标题和内容显示在其中。- R* m  ^4 x5 |/ |$ s/ e

* N4 a, v5 E( s& Z请注意,本示例仅提供了一个框架,具体实现可能会根据您的需求和实际情况有所不同,您需要根据自己的需要进行修改和调整。同时,为了确保安全性,您还会需要对用户输入的数据进行适当的验证和过滤,例如使用 `sanitize_text_field()` 函数来过滤表单数据。
回复

使用道具 举报

340

主题

529

回帖

3532

积分

管理员

积分
3532
QQ
 楼主| 发表于 2023-5-18 09:26:50 来自手机 | 显示全部楼层
那如果需要发布多条公告,并进行管理,要如何实现?& c5 L- y9 w" W
3 q. g/ C3 r; r* U; ]
您可以创建一个自定义的 WordPress文章类型,例如“公告”,并对其进行自定义化,以实现发布多条公告并进行管理的功能。以下是具体步骤:3 w6 ^! N" x( }
2 W* n. j: K& Z: X5 ]3 P
1. 创建一个自定义的文章类型:在你的主题 `functions.php` 文件中,添加以下代码:
, p, I1 A5 E) e1 Z; {4 C# I4 \- L8 ?% Y' B" _6 K, @
```
! d/ p; x* R! `8 hfunction create_custom_post_type() {
: h( F& c* E( |- ^/ \" V( \/ {7 H    $args = array(
9 _- `9 v$ N( O  b4 H9 A        'labels' => array(9 g, s+ Y! W8 z3 G5 j( |6 M" }
            'name' => '公告',2 Q2 e" x7 L5 q* ~9 z! t( P8 ~
            'singular_name' => '公告'0 |3 |4 L# q7 @6 @5 x4 o5 d  X8 q
        ),
2 v$ u: V0 T" ^% g, c' q) C+ |( A        'public' => true,) v& o5 ^7 H" O, Z" f1 r
        'has_archive' => true,
" }! S# O3 I- r0 m9 Y+ k5 E        'supports' => array('title', 'editor', 'thumbnail', 'excerpt', 'custom-fields', 'revisions'),- Z7 E9 ]9 c3 Z! T9 i1 v
        'taxonomies' => array('category', 'post_tag'),+ ^5 c( n! R0 j) {  b- ~9 \
        'menu_icon' => 'dashicons-megaphone',
( @9 z" e2 x8 F/ O$ U        'menu_position' => 5,
/ [0 _+ C8 [6 a2 E% {7 k2 L        'rewrite' => array('slug' => 'site-wide-notices')
! m- s$ V# }' L$ q% _    );
$ H* F8 k$ i& H4 B- j: W    register_post_type('site-wide-notices', $args);8 C1 E8 n6 P, V
}* v0 ?. ~' p5 [  R) B& c
add_action('init', 'create_custom_post_type');
) L+ q3 |, C- P/ o+ j  r8 s```
  a8 P( L8 y7 d
: Y8 D# G. ]" u, g在示例中,我们注册了一个名为 "site-wide-notices" 的新的文章类型,并定义了文章类型名称、缩略名、文章类型支持的功能、分类法、管理菜单图标等设置。" z+ u. m5 H6 @
3 y- Y4 h9 N; A7 y& G3 X' f8 I0 U
2. 在你的 WordPress 后台中创建新文章类型“公告”:现在,你就可以在 WordPress 后台中通过导航到“公告”菜单,来添加、编辑或删除公告了。您可以在编辑公告的页面中添加标题、内容、特色图像或其他自定义的元数据字段。* R# d" t) t4 Z/ n$ u3 Q  B

0 H3 k% b  b  E1 Y# R3 ^( C* x# x3. 在主题中显示公告:在您的 WordPress 主题文件中添加以下代码,以在您的网站上显示公告:
# j$ s3 |7 }  p7 g0 g- W+ j+ O- C
```
# d  ^- m# k3 v1 Z4 i8 N" M- M4 T) @. ?8 @$args = array(
( c: o6 w2 A2 O7 W0 q9 f" Z    'posts_per_page' => 3, // 显示的公告数量
2 A& Z- O+ i1 Z9 B; g- m0 J9 l6 n    'post_type' => 'site-wide-notices', // 公告文章类型
2 D9 c% d" N1 N. d8 k1 U* P4 l    'post_status' => 'publish', // 公告状态
+ e! s$ M1 x, B( l2 ^    'order' => 'DESC' // 排序方式/ H( e/ j& q- G7 U
);
( l% W1 U5 T+ ]! n3 D
/ _. _& V# g6 ?$ C  c$notices = new WP_Query($args);
. X* w! }' O3 y* v- Eif ($notices->have_posts()) :6 H/ Z8 T, N# i" t2 e9 `
    while ($notices->have_posts()) : $notices->the_post(); ?>( V4 y. C4 r' A! M
        <div class="notice">& V/ p4 O; ]/ d
            <h3><?php the_title(); ?></h3>1 y: \+ N5 ?: l8 `' r$ G( }
            <div class="notice-content"><?php the_content(); ?></div>
  H% O) W; e4 h& {2 Z        </div>9 m! }5 N8 B4 a; r
    <?php endwhile;
( H9 N4 }; p$ A$ I: b, }else :
8 W4 @3 T3 u1 k  S+ g3 N0 k    echo "暂无公告";: S' v& x3 t/ s( O1 D5 K
endif;$ }, L! m3 g0 R& D; Q& j/ f" v1 S
wp_reset_query();
  M( d) O& u- b- X- \3 D  J& y```4 I. ~  m- F: ]- L1 J# T1 w$ ^
: |/ s( `4 j0 x& b
这段代码将使用 WordPress 的 `WP_Query` 类从公告文章类型中获取最新发布的 3 条公告,并在前端页面中循环遍历并显示公告标题和内容等信息。2 G2 I- m' e( P
6 R2 y3 o9 _: Y: R! F
以上便是实现 Wordpress 后台发布多条全站公告的基本步骤。需要注意的是,自定义文章类型可对应多篇文章,具体根据您的需求进行调整。
回复

使用道具 举报

340

主题

529

回帖

3532

积分

管理员

积分
3532
QQ
 楼主| 发表于 2023-5-18 09:27:55 来自手机 | 显示全部楼层
如果不想修改functions.php,有其他更好的办法吗?, `" [* r- S6 ^: ~( h! P( Z( A
0 y7 u" b2 }5 U8 y8 ~4 j$ H
如果您不想修改主题 `functions.php` 文件,也可以创建一个自定义插件来添加新的文章类型。
! a6 Y" [4 Y  M7 L# {- r& @! W, ]. }6 s
以下是创建自定义插件的步骤:1 n* R: r- ~- O8 n* b( ^

; C+ I; T, I+ }% |7 ?1. 创建新插件:在 WordPress 插件目录中创建一个新的子目录,例如 `site-wide-notices-plugin`,然后在该目录中创建一个新的 PHP 文件,例如 `site-wide-notices-plugin.php`,并在文件头部添加必需的标记,例如:
( s" U) r/ s: \8 Y% q- |
0 c+ F% M3 g" [2 {. U+ Y   ```
: ?4 H* s3 q' @0 q$ E0 |- q$ @   <?php
0 h% Z5 \# |# y0 N' d5 ~7 K   /*
! J% U8 X! R4 ?) f& d4 W& j   Plugin Name: Site Wide Notices Plugin
5 ]$ L$ m! ?6 c6 Y3 K   Description: Adds a new custom post type for site-wide notices.8 o$ _: g6 A# o8 y  G7 r; g1 J2 {
   Version: 1.0
( Y& h2 X: O9 _; m7 C% Z' _9 w  j1 I, @   Author: Your Name# v5 N, x' V) f, w  ]( X
   Author URI: http://example.com
2 s. S6 w6 d# R   */: v/ b5 ]( o7 h6 n8 `; |( J& j

& Y% m+ L" h, s" w& d; O. D   // Add plugin code here...
8 |/ b1 k7 j8 Q8 ]   ```
, J0 N3 O' A% _# f$ m+ _% K/ e7 I3 Y4 J, R
   在示例中,我们创建了一个名为 `Site Wide Notices Plugin` 的新插件,该插件添加了一个新的自定义文章类型,并指定了版本、作者和作者 URI 等元信息。
- m  R# {0 f9 h( E1 K% K$ [6 b) S; @$ A1 u0 a
2. 在插件中注册新的文章类型:在 PHP 文件中添加以下代码,用于注册一个名为“site-wide-notices”的自定义文章类型:4 U7 A) o; \' {( ~

9 y4 w0 |: @9 r& ?& |" k   ```
, K$ B8 _" ]( I7 ~# l# R4 |3 G   add_action('init', 'create_custom_post_type');
1 b* O2 r/ G0 N0 S4 t   function create_custom_post_type() {7 s- c# _0 b. a! W! Y& t
      $labels = array(, a* n( o: j& f# N3 @# j
          'name' => 'Site Wide Notices',
) y0 ^- }! q) P5 [. n; D. S          'singular_name' => 'Site Wide Notice',$ r* h* Y# _! F
          'add_new' => 'Add New',9 Z- O- l/ L- A$ @+ f
          'add_new_item' => 'Add New Site Wide Notice',0 N; o* M- C, g
          'edit_item' => 'Edit Site Wide Notice',
3 t( {( a1 v  O# c# R          'new_item' => 'New Site Wide Notice',
) H! b  u* y5 j0 J" e9 g& l3 y          'view_item' => 'View Site Wide Notice',
# a; U! H. D1 _/ K9 D7 e3 Q# b# E          'search_items' => 'Search Site Wide Notices',
4 I- c% A: i* V          'not_found' => 'No site-wide notices found',
8 G6 N: N/ z7 ?% M          'not_found_in_trash' => 'No site-wide notices found in trash'4 F; H  t6 A6 \+ H+ i( J
      );
6 C) }) {1 P" L) v  Y" N! p7 L3 k1 n- y$ O! `6 {3 p2 \3 j: l
      $args = array(
" ?+ R4 _" r. R) b          'labels' => $labels,3 x& S3 u' ]- t
          'public' => true,5 o: S/ r8 b" F( q+ e
          'has_archive' => true,  o/ N4 E- \' a% h7 g% a1 n! B
          'supports' => array('title', 'editor', 'thumbnail', 'excerpt', 'custom-fields', 'revisions'),, z7 ]' [# W( K) i
          'taxonomies' => array('category', 'post_tag'),
& v1 ~5 h5 }" @3 `          'menu_icon' => 'dashicons-megaphone',% R7 m8 |  \9 z+ L
          'menu_position' => 5,& i) h0 l. K1 m  s4 R- ?. E
          'rewrite' => array('slug' => 'site-wide-notices')  m/ @& l! {! \& g0 D
      );, k+ c* X7 f9 ]8 G$ b

0 v+ k2 @- b" M9 [      register_post_type('site-wide-notices', $args);1 s. k1 a3 b2 k- C; }. v0 J
   }4 X5 u" @. T7 v4 I0 x7 Q
   ```
" F6 g. X. J2 `( k% i
% x0 w; R  u2 A) z   在示例中,我们使用 `register_post_type()` 函数注册一个新的文章类型,并定义了该文章类型的名称、标签和其他设置。
/ k7 o7 f% X8 E/ x# ?
! e  B7 k, Y$ b1 F( ~+ Q9 ?2 I! [3. 在后台中添加公告编辑页面:您可以使用 `add_meta_box()` 函数在后台中添加公告编辑页面,并自定义字段和元数据,例如:( e1 ^& O4 g$ z
) d7 b2 U  H+ ]
   ```2 H7 w3 C% x& ^- `, b& m
   add_action('add_meta_boxes', 'add_site_wide_notices_boxes');! U/ O7 K% J' N! x; `1 X6 A* L
   function add_site_wide_notices_boxes() {
7 T) e. ?" y. e- q      add_meta_box('notice-details', 'Notice Details', 'notice_details_meta_box', 'site-wide-notices', 'normal', 'high');
3 Q0 U  o! i# K0 S5 A9 i   }
5 p; u: |) G9 \" m3 B3 I
5 n* @: `7 t4 F- D   function notice_details_meta_box($post) {* v2 s- Y9 P  ?. H: {- S
      wp_nonce_field(basename(__FILE__), 'notices_nonce');8 q. ~, m% Y& G; C
      $notice_title = get_post_meta($post->ID, 'notice_title', true);
. b8 g$ x1 D; j5 [# G- Z! D9 I      $notice_content = get_post_meta($post->ID, 'notice_content', true);
3 z% M: l3 W  Q, z: v9 J$ v      ?>
1 m( Y* H7 B' v& M" @% ]4 h% K      <p>
9 U2 ]3 q4 S, L; H          <label for="notice-title">Notice Title</label><br>( v  s$ z% k% r5 Y; I
          <input type="text" id="notice-title" name="notice_title" style="width: 100%;" value="<?php echo $notice_title; ?>">& j6 E# l" L. r- o1 p
      </p>7 ^+ c0 w9 ^1 T% F
      <p>. n6 I; }! l+ Y3 z$ V  ?& `
          <label for="notice-content">Notice Content</label><br>
6 n% Z# R/ G5 H( v          <?php wp_editor($notice_content, 'notice-content', array('textarea_rows' => 10)); ?>- p1 T, D' s9 V. M' A( n
      </p>
; U. A( b4 ~6 O0 b% M: w      <?php
8 L6 O, T9 D6 s, \( m$ o& F% ?! }   }5 x# o: o9 ^* A

* ?& O' j! s: s" [3 e% \: g   add_action('save_post', 'save_site_wide_notice_meta_box');
% e  O( I$ m; p0 g   function save_site_wide_notice_meta_box($post_id) {
/ l* g8 W1 _4 L' I3 J      if (!isset($_POST['notices_nonce']) || !wp_verify_nonce($_POST['notices_nonce'], basename(__FILE__)))
/ {) \0 T# L# O) B$ }( ~$ M         return;
! u" z6 i; P7 s1 ^, |: |+ _      if (defined('DOING_AUTOSAVE') && DOING_AUTOSAVE)
. M+ `: W' e2 X* ^0 R9 ?3 `         return;0 G0 A! N" [# U% B
+ {, D7 [1 y/ E
      if (isset($_POST['notice_title'])) {. V5 B# |# r: j
          update_post_meta($post_id, 'notice_title', sanitize_text_field($_POST['notice_title']));% {/ G! {5 u) \" U. h. }
      }
7 m* ?+ L. k+ Q- L! R! _      if (isset($_POST['notice_content'])) {
& J. J, [% w$ g4 k  o  c9 M& L+ F          update_post_meta($post_id, 'notice_content', wp_kses_post($_POST['notice_content']));
9 |/ O! A2 p  `4 R      }
; d  [6 X8 z  l8 y6 c   }# \# D) G3 ]. b
   ```
; ~8 x) L; w6 {. B- y& t% N' W, d, R+ M0 ^* u2 _4 \3 S1 G- f% Z4 U
   在示例中,我们使用 `add_meta_box()` 函数添加了一个名为 `notice-details` 的元框,用于在编辑页面上显示自定义字段和元数据。在 `notice-details_meta_box()` 函数中,我们使用 `wp_editor()` 函数添加了一个可视化编辑器,用于编辑公告内容。在 `save_site_wide_notice_meta_box()` 函数中,我们使用 `update_post_meta()` 函数将公告标题和内容保存到 WordPress 数据库中。$ V' }5 `# d! R7 h
- E+ V! M- A4 N' q
4. 在前端页面中显示公告:在 WordPress 主题文件中添加以下代码,以在您的网站上显示公告:
' ~3 p* k; h  q: \3 F
1 C1 _1 M- T4 @! X* V   ```
& F& _+ m2 N# s0 O( c- {5 `   $args = array(
6 N$ k  `( `! t. f, D- v1 D      'post_type' => 'site-wide-notices',1 m' Y7 i$ t# v/ s
      'posts_per_page' => 3,  K% `0 b) h5 I* N/ W, B! s
      'order' => 'DESC',& L4 \9 J6 p* Z
      'orderby' => 'date'
1 N3 R. D6 o7 j- b# K. `   );
7 d0 r) f$ y' k, t9 ]   $query = new WP_Query($args);- U# l6 }) o) o4 E; y$ g# t, L
   if ($query->have_posts()) :
/ d0 m5 W1 Q/ M; }7 F$ {      while ($query->have_posts()) : $query->the_post(); ?>
8 P4 C5 y+ ~( t( r0 n! A6 S7 k          <div class="notice">) |( u- S: Y% U# t- s7 b; c
              <h3><?php the_title(); ?></h3>1 B2 l( f8 r9 d+ B; M8 C  X. x
              <div class="notice-content"><?php the_content(); ?></div>
! P) g( Y! N/ p( }6 ~# C' K          </div>
6 B) k) _' q" Y+ A' D$ v! I+ Y      <?php endwhile;2 U6 y! z8 h. p  i( ^5 H
      wp_reset_postdata();
/ s) K. G, \6 \1 B. s: G   endif;; o5 P, Y6 O, @1 U
   ```9 C  |9 u+ z& g* r5 D

: \8 B7 u. E4 N, V% `   在示例中,我们使用 `WP_Query` 类从 `site-wide-notices` 文章类型中获取最近发布的 3 条公告,并在前端页面中循环遍历并显示标题和内容等信息。
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2026-1-20 22:16 , Processed in 0.015024 second(s), 2 queries , Redis On.

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

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