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

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

[复制链接]

319

主题

484

回帖

3117

积分

管理员

积分
3117
QQ
发表于 2023-5-18 08:34:20 来自手机 | 显示全部楼层 |阅读模式
您可以使用以下方法来快速在 WordPress 后台增加一个全站公告的功能:2 A) ~( V! ]. [: R* U% B
! w5 p2 G3 X7 W- E! r
1. 在 WordPress 插件库中寻找可用的公告插件,例如 WP Notification Bars、Announcements、SSP Elegant Notification Bar 等。* z, }& Z* q& g: v

8 ~7 g: i5 ]4 m* ~+ ~- k( X# `2. 安装并激活您选择的插件。您可以在 WordPress 后台的「插件」->「添加新插件」界面中搜索并安装插件,然后在「插件」->「已安装插件」界面中激活它。
& ^: ^+ a1 Z  d  c) A  N
, b6 i% d% F! r; ?+ w8 Q3. 在插件的设置页面中配置您的公告内容和样式。不同插件的设置选项和功能可能会有所不同,但通常都允许您定义公告的文本、链接、颜色、位置等。
, d/ Q$ u- @5 ?1 c
6 p. t5 a% r3 L5 }4. 将公告添加到您的网站上。在插件设置页面中完成公告的设置后,您可以通过编辑 WordPress 主题的代码或使用插件提供的方法将公告添加到您的网站中。不同插件可能使用不同的添加方法,具体请查看详细说明或联系插件作者。
4 P6 r: r7 N" S( ]* X* y
1 u. |0 q/ w3 w  j1 M9 }3 v# s$ _注意,如果您使用的 WordPress 主题已经包含了公告功能,或使用了其他公告插件,可能会导致冲突或功能重复。如果您遇到了这样的问题,请查看主题文档或联系主题作者以获取解决方案。
回复

使用道具 举报

319

主题

484

回帖

3117

积分

管理员

积分
3117
QQ
 楼主| 发表于 2023-5-18 08:34:51 来自手机 | 显示全部楼层
如果是自己开发的话,具体要怎么做?
6 _3 |* d* B; _7 @# Q* a0 S& f: b$ D: K  N1 T/ j% |
如果您自己开发 WordPress 主题或插件,并且需要在后台中增加一个发布全站公告的功能,可以按照以下步骤操作:
% C/ P" t( f+ X3 a; N9 t9 S$ q6 D( \
1. 创建一个自定义的 WordPress 后台页面。您可以使用 `add_menu_page()` 或 `add_submenu_page()` 函数来创建一个自定义后台页面,例如:
  W# s& b  w; u! X7 `* U$ F5 v1 t# a9 e# T& Q* z* s2 t
   ```1 n. B- I' a6 Y8 |9 i& H
   add_menu_page(
+ e  @6 s: m8 ?2 t) F$ @       '全站公告',$ c, s, c) q2 n9 @
       '全站公告',+ O! r8 B4 I+ T5 N: k
       'manage_options', //需要的用户权限1 ^# o4 l5 c# z
       'site-wide-notice', //后台页面的 slug  J: \. k, R1 I# Q- y4 E" t- l
       'render_site_wide_notice_page', //用于渲染后台页面内容的函数) D9 J/ e: A2 t3 o# c) f4 @
       'dashicons-megaphone', //用于显示在菜单中的图标
# i3 @: U- N  H1 T0 Y       30 //菜单项的位置0 P" k& T. _2 |) h6 m
   );
. H! ]5 l% o  {3 K   ```# D2 |. E# V. j/ _; G; g

! N' p% C" u; N( X- a! P   在该示例中,我们使用 `add_menu_page()` 函数来创建了一个名为“全站公告”的菜单项,并指定需要的用户权限(`manage_options`),在后台页面的 slug 为 `site-wide-notice`,用于渲染后台页面内容的函数为 `render_site_wide_notice_page`,在菜单中显示的图标为 `dashicons-megaphone`,菜单项的位置为 30。/ P  l% G8 C" V/ u

0 [+ O6 q/ M& R8 F' g2. 编写用于显示和保存全站公告内容的代码。您可以在自定义后台页面中创建一个表单,让用户输入公告的标题、内容等信息,并将这些信息保存到 WordPress 数据库中的某个表中。例如:
: |- q3 _8 q/ t
) A5 Y' T; _/ D   ```. `% \) t* a# A3 U9 I) @
   function render_site_wide_notice_page() {
$ p7 V: k' A9 z4 W4 _% K      // 渲染后台页面内容% k% Y  N2 x$ Y: n# t, ~6 W
      echo '<div class="wrap">
! q* K- S1 x. H5 x% [3 ~          <h2>全站公告</h2>% [7 m. H+ a/ R5 i; C! H* \
          <form method="post" action="">
5 F7 M) }* a! p8 s9 ?' F6 e! `              <label for="title">公告标题:</label>
' L' x6 p5 s. K- g' \5 s3 F              <input type="text" name="title" value="'.get_option('site_wide_notice_title').'"><br><br>* @, e% R' j# V0 F* b3 {( \
              <label for="content">公告内容:</label>2 D$ N7 k/ q. s- l4 B
              <textarea name="content">'.get_option('site_wide_notice_content').'</textarea><br><br>3 x* o1 i; `3 j' P4 }% M4 U
              <input type="submit" name="submit" value="保存设置">
- }2 p1 }6 n4 X$ F3 a$ Y          </form>
/ [. I; G4 Q1 H8 ~; [      </div>';
* J- \$ z5 N5 A. C& B- x7 X) I9 B
7 `" w& i& }) m+ y; _. e% q      // 处理表单数据
: @2 ~; i! o# Q) A4 g/ y      if (isset($_POST['submit'])) {2 F, w; \$ o6 o+ m8 f
          update_option('site_wide_notice_title', sanitize_text_field($_POST['title']));7 E5 l' P4 j7 a$ R& k
          update_option('site_wide_notice_content', sanitize_text_field($_POST['content']));( H. N. g( v5 H: j; e' H
      }
4 [8 B, [/ g/ f, A+ y   }( S8 [  l' b9 V
   ```/ ~, j* D9 r( K! G4 ]' A
) z- n  {1 U; X% k, M
   在该示例中,我们创建了一个表单,让用户输入公告的标题和内容,并使用 `update_option()` 函数将这些数据保存到名为 `site_wide_notice_title` 和 `site_wide_notice_content` 的 WordPress 配置项中。如果用户点击提交按钮,则将表单数据更新到配置项。( l2 ^- ]- r$ k8 N0 t1 y
5 U+ e% ]0 S4 y6 i" p! e. P
3. 在 WordPress 主题中显示全站公告。您可以通过在 WordPress 主题的 `header.php` 文件中添加代码,将公告内容显示在网站的顶部或其他位置。例如:# `: q/ I  L: Y( z3 ^& p. {

( m; V8 h+ R* [  C: s   ```& @1 ^* @0 J' [5 {4 h& ~3 P& M+ ?
   <?php. q& ~$ w* j0 M/ {0 k- E
   $site_wide_notice_title = get_option('site_wide_notice_title');& ]2 G8 Z+ `7 K! u( b0 @+ O- B1 x. v
   $site_wide_notice_content = get_option('site_wide_notice_content');
9 x8 l8 W/ ?4 K5 d$ ^   if (!empty($site_wide_notice_title) || !empty($site_wide_notice_content)) {- a7 i1 @, k. W7 r7 s/ t
       echo '<div class="site-wide-notice">';
& N* r5 t) j& x8 o8 H       if (!empty($site_wide_notice_title)) {5 S+ O: u5 Z8 {! h" x$ y
           echo '<h3>'.$site_wide_notice_title.'</h3>';5 c6 d6 W9 M3 U  t6 ^% x1 |7 x
       }2 H! Y+ F6 J9 t, ]
       if (!empty($site_wide_notice_content)) {
& Y5 z; I# v/ b1 L+ S           echo '<p>'.$site_wide_notice_content.'</p>';% d; |: k/ W$ R) E$ F) {$ f3 B
       }. t+ Z0 {: {* t4 P0 q
       echo '</div>';9 _# J. H9 r8 U0 ^3 i' z& Q9 O
   }! u9 n% V% j6 z, _9 i: h1 K1 o
   ?>* n& c/ L3 M: \2 }3 q
   ```) }9 I, q5 t3 g0 v% _

: t9 I  N& j1 _6 y; z+ M0 _. u5 |   在该示例中,我们检查 WordPress 配置项中名为 `site_wide_notice_title` 和 `site_wide_notice_content` 的值是否为空,如果不为空,则在 `header.php` 文件中添加一个名为 `site-wide-notice` 的容器,将公告标题和内容显示在其中。
$ F9 L5 K6 b  D6 G& C& I  W8 x
7 q% V" ^0 F0 T% K/ M请注意,本示例仅提供了一个框架,具体实现可能会根据您的需求和实际情况有所不同,您需要根据自己的需要进行修改和调整。同时,为了确保安全性,您还会需要对用户输入的数据进行适当的验证和过滤,例如使用 `sanitize_text_field()` 函数来过滤表单数据。
回复

使用道具 举报

319

主题

484

回帖

3117

积分

管理员

积分
3117
QQ
 楼主| 发表于 2023-5-18 09:26:50 来自手机 | 显示全部楼层
那如果需要发布多条公告,并进行管理,要如何实现?5 K0 e5 |1 ^  H8 a

; j' h0 ?( a% ~5 a您可以创建一个自定义的 WordPress文章类型,例如“公告”,并对其进行自定义化,以实现发布多条公告并进行管理的功能。以下是具体步骤:' [1 H* t" i1 I
( j9 }' _9 ^& [! R
1. 创建一个自定义的文章类型:在你的主题 `functions.php` 文件中,添加以下代码:
% \/ b2 X% ]6 [$ p6 ]( t  H  z3 z) {6 U  F- J" e, b% I
```7 e5 o7 o$ S+ E* U
function create_custom_post_type() {
: `, d! L0 b+ @% v( @: H* U    $args = array(4 S4 i6 m# z4 |: y1 }4 x
        'labels' => array(  n+ ^! j' {4 |4 g. y+ k9 b
            'name' => '公告',8 w$ r7 s! M; D! N/ p' d
            'singular_name' => '公告'3 i  i4 i& Y% L! H
        ),/ \, q$ v3 M7 g) i
        'public' => true,# N3 ^; B" F) G8 v
        'has_archive' => true,) W' E1 D- Z. E- }/ ^2 M
        'supports' => array('title', 'editor', 'thumbnail', 'excerpt', 'custom-fields', 'revisions'),
- \3 A2 I0 o- w9 O% B; t" p        'taxonomies' => array('category', 'post_tag'),
' ]2 u- O5 _% E' W; [8 W& T        'menu_icon' => 'dashicons-megaphone',
4 g: `1 k; L* t/ I, y7 M: u# t        'menu_position' => 5,
5 d- b' J, V& |- f        'rewrite' => array('slug' => 'site-wide-notices')' d; d- ~; K' \0 e* n  j2 c
    );
* v% b0 ~/ _7 U# |9 x    register_post_type('site-wide-notices', $args);
2 N! _& \4 J! }6 |" b: _! e}
6 m4 j' O" B5 Yadd_action('init', 'create_custom_post_type');) ~3 w& e/ F/ e2 L
```
; z# B- X0 J7 f; B- E) P  R6 U! p* ?* n# ^. T; z0 e% p5 }. q
在示例中,我们注册了一个名为 "site-wide-notices" 的新的文章类型,并定义了文章类型名称、缩略名、文章类型支持的功能、分类法、管理菜单图标等设置。
7 A. e2 {7 e; T3 ~4 }8 s
# K4 S# x4 Q# _0 x9 V7 [5 j7 u2. 在你的 WordPress 后台中创建新文章类型“公告”:现在,你就可以在 WordPress 后台中通过导航到“公告”菜单,来添加、编辑或删除公告了。您可以在编辑公告的页面中添加标题、内容、特色图像或其他自定义的元数据字段。: E# o! k6 p2 X8 m' M' k/ C

5 ?1 ]' U2 |7 K  h# B1 M3. 在主题中显示公告:在您的 WordPress 主题文件中添加以下代码,以在您的网站上显示公告:
% e, s- C6 h9 f+ z0 W0 {% D
4 T7 c# }3 g7 Z& o4 D```
1 O* t4 T2 R% m" r- b. _* W# u$args = array(6 f# p# w7 p, O/ q( r/ e2 X
    'posts_per_page' => 3, // 显示的公告数量6 @" k0 q' i4 e6 a# s3 H, H
    'post_type' => 'site-wide-notices', // 公告文章类型
& ^$ ?/ T) X& P' e    'post_status' => 'publish', // 公告状态& ]. R7 n  J# W# A' `+ _) g5 S
    'order' => 'DESC' // 排序方式, E* J( t/ |" X! D3 [6 J
);. G+ ]8 ]+ H: _' L, r. h
: ?+ O2 R% E$ E+ }) G
$notices = new WP_Query($args);( C2 e% T$ V9 u' j5 \5 A! O
if ($notices->have_posts()) :: y# N( q4 n9 P% y
    while ($notices->have_posts()) : $notices->the_post(); ?>" L" }% h) f' S4 t! C1 C1 |2 G
        <div class="notice">
, B- b6 |) R( e7 p) S" Z            <h3><?php the_title(); ?></h3>
; g  X: I- @& Y            <div class="notice-content"><?php the_content(); ?></div>7 n5 P' r& `- h: F* M9 l# U3 u
        </div>
/ X. E: t1 X: {: @/ N    <?php endwhile;" a( ?# X' z) |$ M( h
else :
$ e2 e' G' `  O3 y: x    echo "暂无公告";. a3 Z) e9 G  j8 y8 Y8 b& `
endif;) d* y1 @% ~4 D7 w
wp_reset_query();
3 X- C1 `! e6 q```8 ~: z3 G+ {" R5 |  i
1 Z9 L& }9 M4 n8 Y0 t, N
这段代码将使用 WordPress 的 `WP_Query` 类从公告文章类型中获取最新发布的 3 条公告,并在前端页面中循环遍历并显示公告标题和内容等信息。
0 g$ x. g" ]) S2 x5 y2 C& M( H: P* @2 r
以上便是实现 Wordpress 后台发布多条全站公告的基本步骤。需要注意的是,自定义文章类型可对应多篇文章,具体根据您的需求进行调整。
回复

使用道具 举报

319

主题

484

回帖

3117

积分

管理员

积分
3117
QQ
 楼主| 发表于 2023-5-18 09:27:55 来自手机 | 显示全部楼层
如果不想修改functions.php,有其他更好的办法吗?" F# w3 i' k3 H9 I8 V
7 R* {6 E1 N5 Z- n6 X
如果您不想修改主题 `functions.php` 文件,也可以创建一个自定义插件来添加新的文章类型。
3 u, Z$ N. }& V: K" {, O
3 {2 o0 q8 j% U4 w以下是创建自定义插件的步骤:7 S- o% T8 ]5 }, O& A; k2 [
) F- S2 O- N$ [$ W
1. 创建新插件:在 WordPress 插件目录中创建一个新的子目录,例如 `site-wide-notices-plugin`,然后在该目录中创建一个新的 PHP 文件,例如 `site-wide-notices-plugin.php`,并在文件头部添加必需的标记,例如:8 C, M4 {5 l# B* z5 ?6 E" [

: L" Z/ u8 S# k1 V% ]   ```9 f; U% w/ d2 J% _* z
   <?php2 F5 }* l7 P" w- J' s) C
   /*
5 @. m( m; o! d   Plugin Name: Site Wide Notices Plugin
8 Y$ C5 `+ V3 |8 n1 u   Description: Adds a new custom post type for site-wide notices.8 X6 |. C" M' v+ i$ G5 m4 }
   Version: 1.0
2 z# g- Y! b7 W   Author: Your Name. r; ~* Y. o1 N9 n
   Author URI: http://example.com9 A. I# j% H8 e- k! f8 x" B; v
   */
4 X0 m" M: W/ r( q; s, g1 g  }4 J$ y& _5 q" |9 _( g9 C( T
   // Add plugin code here...
" w" o7 Q3 b- V3 d$ A   ```: g0 j0 z8 C: R, ?

+ N6 h# q% I! O9 ]! [   在示例中,我们创建了一个名为 `Site Wide Notices Plugin` 的新插件,该插件添加了一个新的自定义文章类型,并指定了版本、作者和作者 URI 等元信息。
/ N6 S7 P, ?8 r8 l
$ N0 A/ K6 h) B* u5 r9 G7 S2. 在插件中注册新的文章类型:在 PHP 文件中添加以下代码,用于注册一个名为“site-wide-notices”的自定义文章类型:
- P) W- ^3 \0 _  B3 w
3 o4 C, H+ h% F# r8 O) q   ```
' i/ B+ r2 i* s) [, O   add_action('init', 'create_custom_post_type');
. ^5 [* S- ~' R. c9 r0 P   function create_custom_post_type() {: g1 P5 t- f& G
      $labels = array(7 {5 Q- W& \3 o
          'name' => 'Site Wide Notices',
* c) ?4 B2 T2 S/ l" r          'singular_name' => 'Site Wide Notice',8 Y, w1 U' u: P9 [: s* ?
          'add_new' => 'Add New',
  T. U- [* s. q6 }" w5 V          'add_new_item' => 'Add New Site Wide Notice',
$ d; u/ U# ]7 i' r) _          'edit_item' => 'Edit Site Wide Notice'," L9 {+ ^4 e3 ]* a# Z$ I
          'new_item' => 'New Site Wide Notice',
; R3 B' K& j( t! E; ~7 e          'view_item' => 'View Site Wide Notice',, u5 @! {- n& D' L* `% E
          'search_items' => 'Search Site Wide Notices',
: T' E; a8 D  m8 x9 s* ~) [          'not_found' => 'No site-wide notices found',
2 ?7 f/ g3 [( E" p0 v! t. H- C          'not_found_in_trash' => 'No site-wide notices found in trash'
2 G* U3 S5 J7 N. T0 [0 g: t6 a      );
4 |1 F0 I5 {0 @- S' f, _
2 ^0 Y: D9 [7 z& V; O/ c& O      $args = array(# a& ^- P9 l) H6 |
          'labels' => $labels,4 a) H9 A" Z4 p5 x
          'public' => true,' E9 S+ e# E/ [, N3 G" y* g
          'has_archive' => true,6 M/ `, \* A: [. ~' L! `
          'supports' => array('title', 'editor', 'thumbnail', 'excerpt', 'custom-fields', 'revisions'),
1 H5 H- E9 q3 D$ s  k) T1 N8 s9 Q  ~          'taxonomies' => array('category', 'post_tag'),
$ i" M) k# h) k$ U( N          'menu_icon' => 'dashicons-megaphone',4 {0 Z* H" z" [7 P1 g, l/ _% C
          'menu_position' => 5,! ?- a, ~/ s7 \- F
          'rewrite' => array('slug' => 'site-wide-notices')$ D8 h4 l) s8 ~3 u
      );
4 \$ M: c7 j7 z0 ], t+ R; w- X# {/ C: h+ S# b
      register_post_type('site-wide-notices', $args);& x7 m6 P3 C8 e' C
   }8 D5 y+ _) [  f0 Y+ ?
   ```
+ U$ l* n6 P& S3 y
' u, n& N9 x# j3 M- {. @0 w   在示例中,我们使用 `register_post_type()` 函数注册一个新的文章类型,并定义了该文章类型的名称、标签和其他设置。
1 B& G  U4 f* z3 V- \! A# j4 G+ u4 d( E4 A* Q
3. 在后台中添加公告编辑页面:您可以使用 `add_meta_box()` 函数在后台中添加公告编辑页面,并自定义字段和元数据,例如:& k6 m% b' c/ I3 z- L1 S! R$ ]
1 e8 I. f' G, f7 s
   ```
% U$ d* G8 a& S! E* }# D   add_action('add_meta_boxes', 'add_site_wide_notices_boxes');% n2 ?$ v7 J5 @' r$ g8 O
   function add_site_wide_notices_boxes() {" B7 y7 Y; {# s
      add_meta_box('notice-details', 'Notice Details', 'notice_details_meta_box', 'site-wide-notices', 'normal', 'high');
, r0 o1 q$ h6 w- [1 i# n; Y, r' N   }
9 q) o( u, d! W0 p* G7 \
1 V' ^2 D8 k8 r' T9 R   function notice_details_meta_box($post) {
* x, J8 f# O* @6 `' x1 C1 x      wp_nonce_field(basename(__FILE__), 'notices_nonce');+ q( ]+ t/ s. A  R" l. }7 p. b: u
      $notice_title = get_post_meta($post->ID, 'notice_title', true);1 n" w/ H& ^/ m" U! T& U  w
      $notice_content = get_post_meta($post->ID, 'notice_content', true);: ?5 g* m3 {0 |( x+ @: x, e( N
      ?>4 ~1 |9 C, V  k" I% L# `0 `
      <p>
4 {4 E3 N# H5 J9 z3 s" x# Q          <label for="notice-title">Notice Title</label><br>4 J' C6 g0 d# J
          <input type="text" id="notice-title" name="notice_title" style="width: 100%;" value="<?php echo $notice_title; ?>">
  l+ w) m; l8 O. H  ]8 G- N# [, Z      </p>$ T* M; V) A2 s4 o
      <p>
1 a0 u1 e! W% _$ T& m$ B$ t          <label for="notice-content">Notice Content</label><br>
9 a) }( K* L1 K6 q          <?php wp_editor($notice_content, 'notice-content', array('textarea_rows' => 10)); ?>0 J6 W& C) `# L9 S4 b: O
      </p>1 r) f6 C& z( k; Z8 q4 |
      <?php
  D! ]4 H/ [' x2 F0 g$ x   }7 r# c, S7 T: f

6 |" N4 d% s/ J- X! _. R1 m   add_action('save_post', 'save_site_wide_notice_meta_box');  D% M! _0 h. B1 o5 c
   function save_site_wide_notice_meta_box($post_id) {' Z3 h0 j; B7 b3 w& j$ z
      if (!isset($_POST['notices_nonce']) || !wp_verify_nonce($_POST['notices_nonce'], basename(__FILE__)))$ D% g& d6 t' w+ B& V
         return;
; T+ X( s. F7 }/ \) w      if (defined('DOING_AUTOSAVE') && DOING_AUTOSAVE)9 f" d+ k: {* X* f- {# r3 ]
         return;
! q: i: n  N9 R) B9 C
& ~+ I! ?3 h. x/ x      if (isset($_POST['notice_title'])) {9 a3 e5 y6 w/ c# |# w
          update_post_meta($post_id, 'notice_title', sanitize_text_field($_POST['notice_title']));
% V8 g: g* `+ `  X      }
/ u/ p+ ~& t+ s: E      if (isset($_POST['notice_content'])) {
, z6 O+ w$ {* z, P          update_post_meta($post_id, 'notice_content', wp_kses_post($_POST['notice_content']));  D4 ?8 i( S/ G1 s# W
      }- O- c$ _2 c& t: i; S( x
   }( \7 L  B& y+ H" G0 z0 V& X
   ```
+ @5 L5 l  V: Y0 F3 |2 I" v9 o# y
* H/ @7 T; [/ C' n6 |   在示例中,我们使用 `add_meta_box()` 函数添加了一个名为 `notice-details` 的元框,用于在编辑页面上显示自定义字段和元数据。在 `notice-details_meta_box()` 函数中,我们使用 `wp_editor()` 函数添加了一个可视化编辑器,用于编辑公告内容。在 `save_site_wide_notice_meta_box()` 函数中,我们使用 `update_post_meta()` 函数将公告标题和内容保存到 WordPress 数据库中。
5 \" V8 D3 C9 x, ?% o& h
/ A& A) b& h1 C- }; W! f' _4. 在前端页面中显示公告:在 WordPress 主题文件中添加以下代码,以在您的网站上显示公告:& s! ~" B7 K  B, i$ ^

  z0 [: Z( L. w- o( D- V; \   ```4 D& b* }9 Y, |3 p! r! U
   $args = array(
- e' _; U/ A! k$ A      'post_type' => 'site-wide-notices',( F, B$ Z8 J% y" @3 |1 z
      'posts_per_page' => 3,6 v  j" |- _/ L/ k) \
      'order' => 'DESC',/ h, \' k1 e' v3 P
      'orderby' => 'date'
9 h+ a: v: x: ~   );
7 ~# W4 P; A5 m$ H   $query = new WP_Query($args);! p% I2 _+ j$ t- P8 B
   if ($query->have_posts()) :& C5 H7 V9 g8 ?& c# @( B' B; ~
      while ($query->have_posts()) : $query->the_post(); ?>, e' r* {# Z( T! }! d6 [
          <div class="notice">
5 C+ H+ O! R- q' x              <h3><?php the_title(); ?></h3>
) ^( t4 \3 ~1 [2 B, D              <div class="notice-content"><?php the_content(); ?></div>$ N& f0 {" N" S: o0 ^
          </div>
" S3 k  C7 n" ?9 e0 P7 ~' c" a7 H      <?php endwhile;) Q3 ^# E  s0 ^: X# ^* d
      wp_reset_postdata();. ^4 H0 T4 e; z3 B, a1 l! P
   endif;' _/ T; J. F' l4 v& t  l# U
   ```
; [: }& w- _# w  S: o* g! Y8 f  t, T1 z2 p
   在示例中,我们使用 `WP_Query` 类从 `site-wide-notices` 文章类型中获取最近发布的 3 条公告,并在前端页面中循环遍历并显示标题和内容等信息。
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-7-10 14:01 , Processed in 0.084736 second(s), 3 queries , Redis On.

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

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