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

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

[复制链接]

331

主题

511

回帖

3351

积分

管理员

积分
3351
QQ
发表于 2023-5-18 08:34:20 来自手机 | 显示全部楼层 |阅读模式
您可以使用以下方法来快速在 WordPress 后台增加一个全站公告的功能:3 N! [% G" m' {. n% d1 j, f5 h
" g9 ~% Z. {' g1 o) A" Y9 g: S
1. 在 WordPress 插件库中寻找可用的公告插件,例如 WP Notification Bars、Announcements、SSP Elegant Notification Bar 等。
) x% q* q; F+ e# G* f" Z1 K4 `6 y4 z5 n. n# Z4 g7 d: V9 X
2. 安装并激活您选择的插件。您可以在 WordPress 后台的「插件」->「添加新插件」界面中搜索并安装插件,然后在「插件」->「已安装插件」界面中激活它。5 Q" G6 G. V' Q7 b6 x* p( S

% D. e& S  ~: d3. 在插件的设置页面中配置您的公告内容和样式。不同插件的设置选项和功能可能会有所不同,但通常都允许您定义公告的文本、链接、颜色、位置等。
/ l0 V  w& O- ?- B" ^; L& ^- g
4. 将公告添加到您的网站上。在插件设置页面中完成公告的设置后,您可以通过编辑 WordPress 主题的代码或使用插件提供的方法将公告添加到您的网站中。不同插件可能使用不同的添加方法,具体请查看详细说明或联系插件作者。
5 D1 C6 c" {6 N4 U% }! l; i' U- F9 Q/ e0 y
注意,如果您使用的 WordPress 主题已经包含了公告功能,或使用了其他公告插件,可能会导致冲突或功能重复。如果您遇到了这样的问题,请查看主题文档或联系主题作者以获取解决方案。
回复

使用道具 举报

331

主题

511

回帖

3351

积分

管理员

积分
3351
QQ
 楼主| 发表于 2023-5-18 08:34:51 来自手机 | 显示全部楼层
如果是自己开发的话,具体要怎么做?+ w5 H/ E: M' A- k8 B* N, D

" T: I# x) W8 m1 v3 _5 v如果您自己开发 WordPress 主题或插件,并且需要在后台中增加一个发布全站公告的功能,可以按照以下步骤操作:9 Q. U8 E6 k/ A' I6 r( i$ `% \- N

; O7 i' V; ^; v1 \6 f6 j& e0 j1. 创建一个自定义的 WordPress 后台页面。您可以使用 `add_menu_page()` 或 `add_submenu_page()` 函数来创建一个自定义后台页面,例如:
! I/ l9 C( h# L$ @
, A5 |1 a  n( S9 q- ]' H   ```
+ ?! e# |2 [5 b- p/ A! F+ l   add_menu_page() P4 P5 f  c8 u0 ?1 v$ {
       '全站公告',
. [+ O( r! [9 x       '全站公告',% y4 S% O" n  w/ A( ^+ m0 [
       'manage_options', //需要的用户权限+ G" ^* N% q3 |7 Y7 w$ D
       'site-wide-notice', //后台页面的 slug( O- ^, B9 P# l  p
       'render_site_wide_notice_page', //用于渲染后台页面内容的函数% R+ \7 k, z2 j; b1 h0 F
       'dashicons-megaphone', //用于显示在菜单中的图标
' U: Q9 [1 ?  G  U, j- E! x* c& n       30 //菜单项的位置
) R/ O* G6 R# \/ [: |   );
  j( w  \9 R" G3 \5 }" z" U, g   ```
* U3 J" ~5 T  C& ]6 S* H$ w$ h+ |" o% B
   在该示例中,我们使用 `add_menu_page()` 函数来创建了一个名为“全站公告”的菜单项,并指定需要的用户权限(`manage_options`),在后台页面的 slug 为 `site-wide-notice`,用于渲染后台页面内容的函数为 `render_site_wide_notice_page`,在菜单中显示的图标为 `dashicons-megaphone`,菜单项的位置为 30。
4 c) e* `, J7 S/ I3 H: k
% Z3 s5 ?$ B# I7 F8 I, A0 O- y2 x2. 编写用于显示和保存全站公告内容的代码。您可以在自定义后台页面中创建一个表单,让用户输入公告的标题、内容等信息,并将这些信息保存到 WordPress 数据库中的某个表中。例如:
0 u- o* I& V" q9 m9 o2 }  U, X9 s: x3 U1 j
   ```/ P. P# m1 U: ~' S3 v6 N
   function render_site_wide_notice_page() {' p9 U7 v+ H0 Z- q1 I. ^% K
      // 渲染后台页面内容
% m) [$ T3 J: y7 e      echo '<div class="wrap">
, J4 D% W3 V# N% ~          <h2>全站公告</h2># C1 G  n4 K/ z1 t' @4 q: c
          <form method="post" action="">
7 T+ n1 w* o4 j8 z( X- L$ C. ~. |              <label for="title">公告标题:</label>) `: z  l3 w. i( n9 u
              <input type="text" name="title" value="'.get_option('site_wide_notice_title').'"><br><br>
( J/ F5 K- J5 N- o: H) W              <label for="content">公告内容:</label>, \3 u( I' W" o+ i  Q2 i, m
              <textarea name="content">'.get_option('site_wide_notice_content').'</textarea><br><br>
: t, m# }% }( [$ J4 w/ X- p, u8 t              <input type="submit" name="submit" value="保存设置">
3 m4 t! c% _2 [4 \( e          </form>
5 v9 z* T4 k" g" z$ O* S. \* B      </div>';
* B( E4 W$ t+ l2 H) l5 D
! C: P+ X- @/ T- W      // 处理表单数据
% N* c! ~: _; I; q2 W( `* g4 K9 |      if (isset($_POST['submit'])) {9 B; w4 a; G% P. G
          update_option('site_wide_notice_title', sanitize_text_field($_POST['title']));2 P) Z  S! J9 l1 s. z: f& W
          update_option('site_wide_notice_content', sanitize_text_field($_POST['content']));6 @/ s$ n9 g: _) g' X
      }
& X0 r* e( @  R  p! n. w   }0 B9 d+ v4 S8 a  ^- ^* Y6 s
   ```
9 ^& m# F* q% ?) W. |
% i+ S7 P( Q- }! b0 Y! ~3 G   在该示例中,我们创建了一个表单,让用户输入公告的标题和内容,并使用 `update_option()` 函数将这些数据保存到名为 `site_wide_notice_title` 和 `site_wide_notice_content` 的 WordPress 配置项中。如果用户点击提交按钮,则将表单数据更新到配置项。
- v& W' d1 V& A% o# G. q9 }$ J4 P9 T% s% M: x
3. 在 WordPress 主题中显示全站公告。您可以通过在 WordPress 主题的 `header.php` 文件中添加代码,将公告内容显示在网站的顶部或其他位置。例如:0 c7 a+ v' a5 @8 o" {4 `- K
0 u1 C5 e! ^; `+ i
   ```- `: [- x7 L8 b0 [
   <?php8 @& }. P& C$ }9 K6 W  K# `5 s4 M
   $site_wide_notice_title = get_option('site_wide_notice_title');! S( z7 A; a( w9 @
   $site_wide_notice_content = get_option('site_wide_notice_content');
4 o4 J3 h& E$ S, K5 D   if (!empty($site_wide_notice_title) || !empty($site_wide_notice_content)) {
5 P4 U- {/ f" Z. W& ^       echo '<div class="site-wide-notice">';& b; H& T% q2 T4 g9 ]8 K
       if (!empty($site_wide_notice_title)) {
9 H: [+ Z) V8 [           echo '<h3>'.$site_wide_notice_title.'</h3>';
; N- M. [) Y- e" s, k( p       }
! E- z# _2 b: I! R# D, z2 Q$ U) N       if (!empty($site_wide_notice_content)) {
$ x7 B6 E& q1 P' e# C( i( @0 v           echo '<p>'.$site_wide_notice_content.'</p>';
. b+ x: |) y5 u7 ^9 O3 a% K       }
; |- l1 d) F- a- q" y       echo '</div>';
- ~/ Z8 p0 E2 l3 r( @0 \% p   }
5 T4 G" T! H+ k; a* t" b   ?>
7 d& ?, z' o7 f) e7 o0 T   ```
. M# w8 i) `& N( o. O5 ]( u+ q0 t* b& D: C. J/ P; I
   在该示例中,我们检查 WordPress 配置项中名为 `site_wide_notice_title` 和 `site_wide_notice_content` 的值是否为空,如果不为空,则在 `header.php` 文件中添加一个名为 `site-wide-notice` 的容器,将公告标题和内容显示在其中。; I( t# a: h9 p  [8 e

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

使用道具 举报

331

主题

511

回帖

3351

积分

管理员

积分
3351
QQ
 楼主| 发表于 2023-5-18 09:26:50 来自手机 | 显示全部楼层
那如果需要发布多条公告,并进行管理,要如何实现?; ]6 s- A0 L6 A) S+ e. T6 X

* O* z+ X% i( ^3 t: L您可以创建一个自定义的 WordPress文章类型,例如“公告”,并对其进行自定义化,以实现发布多条公告并进行管理的功能。以下是具体步骤:
1 k. Q& a( l' v8 a# J7 N$ ~4 y/ Q. j+ M2 D
1. 创建一个自定义的文章类型:在你的主题 `functions.php` 文件中,添加以下代码:
: l* b4 L3 t+ J& ]$ c# I8 q( I
1 s( l0 h" J) M, O```
9 @1 ^3 g$ Z; H7 Dfunction create_custom_post_type() {* ~% F# e1 P- ]! j2 R& r5 c% A/ ~
    $args = array(
+ J3 x5 g/ g( @! c        'labels' => array(
# I. q# P) x4 u4 ]' k' v4 b            'name' => '公告',& u, O! k6 s3 y5 m" c: D9 H3 g
            'singular_name' => '公告'- q3 b1 K4 ~8 z! ]4 e& _+ V8 @5 L
        ),5 ~  ~9 D; ^3 f" ^
        'public' => true,
0 K4 O- R: G+ S0 e7 x) d        'has_archive' => true,4 N6 Q+ i" f8 z
        'supports' => array('title', 'editor', 'thumbnail', 'excerpt', 'custom-fields', 'revisions'),* M  y( }) q- j* b
        'taxonomies' => array('category', 'post_tag'),
# W+ E& m# i3 L2 y0 z: @1 w        'menu_icon' => 'dashicons-megaphone',! H6 i$ [8 B# ~
        'menu_position' => 5,
8 U1 G6 ^& f! u$ n        'rewrite' => array('slug' => 'site-wide-notices')- e+ s+ Z: Z" T$ {- o% e
    );, S. k6 I( ?; X5 B. x
    register_post_type('site-wide-notices', $args);$ w7 s$ J, M$ Z
}
6 S4 g- W$ c- Hadd_action('init', 'create_custom_post_type');
3 B& M: @' x2 h% O3 N) s3 P```$ n4 k. I! q/ r+ j7 T, W0 \

* s0 O9 G" a( }" P在示例中,我们注册了一个名为 "site-wide-notices" 的新的文章类型,并定义了文章类型名称、缩略名、文章类型支持的功能、分类法、管理菜单图标等设置。
2 D! `+ x6 q6 z# v6 u
9 n) l' C3 E. J, c: {  ], l2. 在你的 WordPress 后台中创建新文章类型“公告”:现在,你就可以在 WordPress 后台中通过导航到“公告”菜单,来添加、编辑或删除公告了。您可以在编辑公告的页面中添加标题、内容、特色图像或其他自定义的元数据字段。+ H7 k/ f3 u5 k
/ R. [  L" W& t
3. 在主题中显示公告:在您的 WordPress 主题文件中添加以下代码,以在您的网站上显示公告:
$ Y( ]" j3 K8 V0 @+ t- {+ t2 d5 E
```
6 O* Q% B! l0 u% W" t1 U% O6 K$args = array(
# Y# k7 V7 v5 L, M6 _$ X    'posts_per_page' => 3, // 显示的公告数量. ^0 z- |+ p. V" q
    'post_type' => 'site-wide-notices', // 公告文章类型/ S/ }# }8 m" ]6 ?. Z# G
    'post_status' => 'publish', // 公告状态
; N0 Z, Q7 m1 g    'order' => 'DESC' // 排序方式
- _7 x+ w$ @) a' ]);. D9 O2 ^3 r+ l7 J$ O& H
2 t! M& F/ L# N; t
$notices = new WP_Query($args);; l0 C+ f# k$ L" ]0 f( T" d$ m" T
if ($notices->have_posts()) :
6 ^8 {' ^9 P$ T" j, N! J    while ($notices->have_posts()) : $notices->the_post(); ?>; F1 I6 S; t* K7 j/ u. T
        <div class="notice"># b) v, h( d' Q
            <h3><?php the_title(); ?></h3>
' s" C% W  T3 E' g, M            <div class="notice-content"><?php the_content(); ?></div>
- H4 D, y% u/ N0 o. k: S. J        </div>
& d5 s6 K* q5 X, B1 b% W    <?php endwhile;
1 v, d3 z2 i7 a. m  F$ helse :$ b- ~9 E" C- U
    echo "暂无公告";
$ h0 d( A* y6 G- K8 ~6 p+ \' Xendif;
$ ~" S, T3 V8 @, ^wp_reset_query();0 t+ K+ N& }# R8 p* C0 p% C
```0 |8 t' ^6 ~' j3 U7 J+ K

, a" k8 w0 l. f3 B! b这段代码将使用 WordPress 的 `WP_Query` 类从公告文章类型中获取最新发布的 3 条公告,并在前端页面中循环遍历并显示公告标题和内容等信息。
" k9 {) D* C7 K+ I* c! @1 ~5 Y
2 u2 `. I) O: \  K以上便是实现 Wordpress 后台发布多条全站公告的基本步骤。需要注意的是,自定义文章类型可对应多篇文章,具体根据您的需求进行调整。
回复

使用道具 举报

331

主题

511

回帖

3351

积分

管理员

积分
3351
QQ
 楼主| 发表于 2023-5-18 09:27:55 来自手机 | 显示全部楼层
如果不想修改functions.php,有其他更好的办法吗?' w* S: V; I8 V( X: p+ J; e) Y. b

' s3 D! {/ ^5 Z2 n% l4 e如果您不想修改主题 `functions.php` 文件,也可以创建一个自定义插件来添加新的文章类型。
6 U8 {8 c! q1 R5 Y, {& B; @  V: h, _! B0 e- x8 x& A
以下是创建自定义插件的步骤:
- Q6 {, ?: t& r7 f
  H* p9 k5 C& ^* O; d1. 创建新插件:在 WordPress 插件目录中创建一个新的子目录,例如 `site-wide-notices-plugin`,然后在该目录中创建一个新的 PHP 文件,例如 `site-wide-notices-plugin.php`,并在文件头部添加必需的标记,例如:
& b8 q& N/ e, d  A$ I( R  t; h( D+ O$ d6 a2 n
   ```; V! K  h- Z& K
   <?php; Q9 A7 m  S3 K
   /*0 `/ I+ N% w% ~/ |0 h
   Plugin Name: Site Wide Notices Plugin
- x2 k/ g, I9 K/ b3 m1 n   Description: Adds a new custom post type for site-wide notices.
& ]$ |. F2 W# ]9 H   Version: 1.0
3 l; J% B2 Z8 r: E6 {  b4 l   Author: Your Name5 G0 Z# N4 L5 p" u  v
   Author URI: http://example.com4 ]7 g) z5 `& S2 ~- K
   */8 y8 W3 I$ ^! X0 f- T# Y  V
1 z% `% s9 f0 z* p: z, W
   // Add plugin code here...
, T& x2 M# L7 V- W4 u6 F% E   ```
: X! f) D/ \1 Z
0 C  d/ l) N, a# Y1 l/ U" q   在示例中,我们创建了一个名为 `Site Wide Notices Plugin` 的新插件,该插件添加了一个新的自定义文章类型,并指定了版本、作者和作者 URI 等元信息。0 [; k8 B2 m' r* b( O4 F) K

8 M6 a. {2 E- [& W2. 在插件中注册新的文章类型:在 PHP 文件中添加以下代码,用于注册一个名为“site-wide-notices”的自定义文章类型:
1 a* O  o. j6 J6 n' o( m
5 R. Z: }) y8 D. E, ]   ```6 d/ J# R. f6 p
   add_action('init', 'create_custom_post_type');
+ N7 V7 |" p3 f% n$ p5 H+ h   function create_custom_post_type() {
. H$ L7 F8 {( V# q( I& \      $labels = array(' j$ {  n$ u4 v6 z) A. \7 F
          'name' => 'Site Wide Notices',
! i% U( t' U* j          'singular_name' => 'Site Wide Notice',6 K' A5 D$ Z6 Z  e2 _& t
          'add_new' => 'Add New',
! P6 P! U% ~( n          'add_new_item' => 'Add New Site Wide Notice',: H2 |/ L# M5 t' g& {% K
          'edit_item' => 'Edit Site Wide Notice',: m& M; f% I1 n8 q
          'new_item' => 'New Site Wide Notice',
# s5 w) g6 Z+ `; m          'view_item' => 'View Site Wide Notice',
3 H( B4 e$ m5 B7 \          'search_items' => 'Search Site Wide Notices',! W9 u1 y7 f- i, q
          'not_found' => 'No site-wide notices found',
! g$ B6 x* v. R# C5 D7 o) ^          'not_found_in_trash' => 'No site-wide notices found in trash'& J2 y9 |/ V( ^7 k7 e( a: ?
      );5 V7 C# a; W1 v1 t, w

8 w& {1 d. I9 K% T1 w$ y% S: [6 ^  P      $args = array(- o& f, g2 v& x0 f  X
          'labels' => $labels,# R" S  N9 j. Q' b( I
          'public' => true,
  a: u( ]* [+ W) D8 W3 @* s2 N* Z          'has_archive' => true,! k/ k8 g! N7 J
          'supports' => array('title', 'editor', 'thumbnail', 'excerpt', 'custom-fields', 'revisions'),6 X6 Z4 w& ]3 p8 e" g+ q# I/ F# j
          'taxonomies' => array('category', 'post_tag'),& Z+ h) ~' p7 b+ N6 p
          'menu_icon' => 'dashicons-megaphone',2 I( ]* i9 t; C) |8 b' \+ f* d
          'menu_position' => 5,, ]- `% J* c# F
          'rewrite' => array('slug' => 'site-wide-notices'). Q9 z5 P$ ~2 C
      );
. m9 S! r/ O2 j7 ^
( Y. P/ R- N# }8 i5 g9 R& O  w      register_post_type('site-wide-notices', $args);
4 B" N1 ^5 }8 T0 ]   }
" _- j5 U  r# H) S# u9 |1 D6 c   ```
8 Y$ g$ Z! J7 g; J3 G9 b& v
) i6 _4 u' `) o3 _5 p2 O   在示例中,我们使用 `register_post_type()` 函数注册一个新的文章类型,并定义了该文章类型的名称、标签和其他设置。0 k, j2 A8 P: K" L
. b8 f* e. c$ O# C  J. R3 h
3. 在后台中添加公告编辑页面:您可以使用 `add_meta_box()` 函数在后台中添加公告编辑页面,并自定义字段和元数据,例如:7 d8 B6 i: j7 C% z: V, C

# t7 j& u4 q" B/ t* k) _   ```8 \/ H, ~4 D7 Z; d) `9 x
   add_action('add_meta_boxes', 'add_site_wide_notices_boxes');: s1 C; Y7 C( @! W; ~, ?1 j
   function add_site_wide_notices_boxes() {
9 |+ p8 b5 _6 S9 L# e5 H3 ]2 C      add_meta_box('notice-details', 'Notice Details', 'notice_details_meta_box', 'site-wide-notices', 'normal', 'high');
. [) E4 M4 F- ]. p6 v   }, {( D: ^" g/ w8 I' ^. s- }
0 w, q; m3 ~& _+ {) f
   function notice_details_meta_box($post) {9 ~7 m  F- j: E: g- P' V
      wp_nonce_field(basename(__FILE__), 'notices_nonce');
" w8 M& _3 ~6 a* K0 w6 r7 F* d      $notice_title = get_post_meta($post->ID, 'notice_title', true);
' d# y; D' O! R/ L6 {1 L      $notice_content = get_post_meta($post->ID, 'notice_content', true);
0 z; b! v7 l7 `5 t5 j, ^# O+ L, ~6 B: ^      ?>0 N3 P; U9 j; g/ C' ]
      <p>3 A3 |: P  t4 c& w# Z4 r
          <label for="notice-title">Notice Title</label><br>% O7 W/ |+ R0 e' T
          <input type="text" id="notice-title" name="notice_title" style="width: 100%;" value="<?php echo $notice_title; ?>">
0 e  a- M7 G9 A! T      </p>
5 |2 o% |- o* l6 v6 z7 o) ]      <p>
5 N* {4 v8 S4 o2 A* g          <label for="notice-content">Notice Content</label><br>
  O0 w1 I4 Z8 X+ e$ ^; j- t          <?php wp_editor($notice_content, 'notice-content', array('textarea_rows' => 10)); ?>
1 j+ V  s( P$ q# B      </p>
% S  G! h; `5 @3 ]* Q4 S* G5 c1 F      <?php7 ]$ H2 _  t% s' g  _6 T
   }- x( v, r/ z$ v0 O4 L. w3 p

$ ~3 j1 y; N3 s   add_action('save_post', 'save_site_wide_notice_meta_box');6 [  m2 K( z) ^. M! D( D$ s
   function save_site_wide_notice_meta_box($post_id) {
; g$ v6 |7 l. ~" S0 K6 Q& P      if (!isset($_POST['notices_nonce']) || !wp_verify_nonce($_POST['notices_nonce'], basename(__FILE__)))
0 \6 Q+ ?$ a/ c, A         return;7 w3 }- _+ F$ [  T7 @0 f' X
      if (defined('DOING_AUTOSAVE') && DOING_AUTOSAVE)8 s4 m" D$ U; N) `
         return;  x, q/ c- P' H) l, v0 e
- u4 {% `5 t7 ^! c/ R2 S7 {! f
      if (isset($_POST['notice_title'])) {
" \; ]& w: B* G; G  L, ^3 i' I2 ~, ~          update_post_meta($post_id, 'notice_title', sanitize_text_field($_POST['notice_title']));" J, g0 O, ~4 P
      }
! |# x7 g: ?& ?" V: K      if (isset($_POST['notice_content'])) {% o6 w5 }# M: o0 v. s
          update_post_meta($post_id, 'notice_content', wp_kses_post($_POST['notice_content']));
5 `& v& }- G% K+ R1 O+ ~! U      }
- N1 {; C: Q$ B" J* T   }
* b5 n% ], A& ?( u# \   ```2 `7 V. g2 [5 ~& J
3 W5 u( X, Q6 c9 G1 I
   在示例中,我们使用 `add_meta_box()` 函数添加了一个名为 `notice-details` 的元框,用于在编辑页面上显示自定义字段和元数据。在 `notice-details_meta_box()` 函数中,我们使用 `wp_editor()` 函数添加了一个可视化编辑器,用于编辑公告内容。在 `save_site_wide_notice_meta_box()` 函数中,我们使用 `update_post_meta()` 函数将公告标题和内容保存到 WordPress 数据库中。
/ {: j( _1 x5 o0 }' f' e# E+ Y8 q* L/ S- F& X; }8 E; m" n
4. 在前端页面中显示公告:在 WordPress 主题文件中添加以下代码,以在您的网站上显示公告:4 m8 t- w  g+ L' i8 d! `" ]9 F

+ f# F8 c! H% g" y5 R1 A1 U   ```* A1 h+ M) l. G0 n% y7 Q  R4 Q
   $args = array(
) n8 B/ U8 v8 K      'post_type' => 'site-wide-notices',: d* a+ L5 q% l2 N3 d  J# t( r
      'posts_per_page' => 3,
* N+ F8 b( v& D3 Y  @0 M0 L9 [      'order' => 'DESC',2 O3 ?; I4 M8 T% i4 Y3 z
      'orderby' => 'date'. `& j- j  G9 P% V# ]# q
   );
+ y; @) b, h% q   $query = new WP_Query($args);2 M! A( [! F4 M
   if ($query->have_posts()) :
9 c2 p4 |/ t& B, g% N, p9 C, \( ~      while ($query->have_posts()) : $query->the_post(); ?>+ K: h2 j' }( Y; |
          <div class="notice">
/ L5 r: S1 |) C  A/ t8 Z% G+ q1 j* C              <h3><?php the_title(); ?></h3>+ e+ S+ [! h; a7 t2 @6 {; X* V
              <div class="notice-content"><?php the_content(); ?></div>
3 B, K( ^3 z& g6 _. C" j; e          </div>
# x& I$ g" U  y  V) K* l      <?php endwhile;
, g% P: K, t9 K4 p' g! S      wp_reset_postdata();8 O4 \9 U$ z6 l+ ?& f2 V1 _
   endif;8 c7 E- S% Q) ~5 W
   ```# G9 N+ S+ E( L/ E+ k/ I

) f. _. H8 v: S' Q0 l   在示例中,我们使用 `WP_Query` 类从 `site-wide-notices` 文章类型中获取最近发布的 3 条公告,并在前端页面中循环遍历并显示标题和内容等信息。
回复

使用道具 举报

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

本版积分规则

QQ|Archiver|手机版|小黑屋|通达产控投资 ( 粤ICP备2023021749号-1|粤公网安备 44030402006137号 )

GMT+8, 2025-11-19 04:40 , Processed in 0.081845 second(s), 4 queries , Redis On.

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

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