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

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

[复制链接]

340

主题

522

回帖

3498

积分

管理员

积分
3498
QQ
发表于 2023-5-18 08:34:20 来自手机 | 显示全部楼层 |阅读模式
您可以使用以下方法来快速在 WordPress 后台增加一个全站公告的功能:
, R7 {4 ~6 Z9 k9 p# t$ L; ~* M1 X" t7 ]8 F0 m* n
1. 在 WordPress 插件库中寻找可用的公告插件,例如 WP Notification Bars、Announcements、SSP Elegant Notification Bar 等。* P; v+ j$ f5 {5 j6 ^" k
, S' d; A! W" j
2. 安装并激活您选择的插件。您可以在 WordPress 后台的「插件」->「添加新插件」界面中搜索并安装插件,然后在「插件」->「已安装插件」界面中激活它。
4 L2 ?" Y- o* q" `' e7 R$ z6 F1 h+ B& Z
3. 在插件的设置页面中配置您的公告内容和样式。不同插件的设置选项和功能可能会有所不同,但通常都允许您定义公告的文本、链接、颜色、位置等。
/ r$ c5 v" B4 ]1 h, l* q
% h4 Y) t8 y2 R6 V  _( i4. 将公告添加到您的网站上。在插件设置页面中完成公告的设置后,您可以通过编辑 WordPress 主题的代码或使用插件提供的方法将公告添加到您的网站中。不同插件可能使用不同的添加方法,具体请查看详细说明或联系插件作者。
' J2 ^  x( w* M8 r$ Y$ b0 m# `  l6 `. n! o5 f
注意,如果您使用的 WordPress 主题已经包含了公告功能,或使用了其他公告插件,可能会导致冲突或功能重复。如果您遇到了这样的问题,请查看主题文档或联系主题作者以获取解决方案。
回复

使用道具 举报

340

主题

522

回帖

3498

积分

管理员

积分
3498
QQ
 楼主| 发表于 2023-5-18 08:34:51 来自手机 | 显示全部楼层
如果是自己开发的话,具体要怎么做?/ W: h! i1 `9 b  l1 ]9 T; U" A" U

1 g# M1 O8 A( V如果您自己开发 WordPress 主题或插件,并且需要在后台中增加一个发布全站公告的功能,可以按照以下步骤操作:. s) u- U) \# L0 g; h
5 x1 n/ v1 n* n" u. A6 o
1. 创建一个自定义的 WordPress 后台页面。您可以使用 `add_menu_page()` 或 `add_submenu_page()` 函数来创建一个自定义后台页面,例如:
5 a# X0 A+ R1 Q( Y( R
5 N) J2 M: A9 X2 m   ```
+ l7 [& f3 M/ U   add_menu_page(/ F0 x% ]* x: L4 a+ z
       '全站公告',
6 l2 }. J7 _7 O0 o  Z" [       '全站公告',& D  C% e5 Z3 s& G5 `& R( n9 R, Z
       'manage_options', //需要的用户权限
3 i( Y, @" L. Z- `7 A" _/ D       'site-wide-notice', //后台页面的 slug) T( s3 ~; m7 P7 j7 _' T
       'render_site_wide_notice_page', //用于渲染后台页面内容的函数
$ w* q$ l) ~" Q! L4 S& n" c       'dashicons-megaphone', //用于显示在菜单中的图标2 R- w9 o3 ~: w8 U" I
       30 //菜单项的位置
$ c! |1 D+ K0 ^   );6 V# G+ P4 R& I& a, c, h4 X1 H
   ```
  v% o, b/ |9 N7 X
6 Z8 k5 v- F( D$ @   在该示例中,我们使用 `add_menu_page()` 函数来创建了一个名为“全站公告”的菜单项,并指定需要的用户权限(`manage_options`),在后台页面的 slug 为 `site-wide-notice`,用于渲染后台页面内容的函数为 `render_site_wide_notice_page`,在菜单中显示的图标为 `dashicons-megaphone`,菜单项的位置为 30。
! C) t2 \6 U7 p7 @: _
. _8 k2 h7 Z& x- p2. 编写用于显示和保存全站公告内容的代码。您可以在自定义后台页面中创建一个表单,让用户输入公告的标题、内容等信息,并将这些信息保存到 WordPress 数据库中的某个表中。例如:: ^! w  i% x# E, t, p' M! I

7 g" X4 {( ^5 l; e5 z   ```2 k# P5 ~3 |( O$ ~8 G9 ~, Y
   function render_site_wide_notice_page() {/ s" j/ i. Z% k  }
      // 渲染后台页面内容$ m9 v1 D, @# _
      echo '<div class="wrap">
2 K3 K3 C9 E/ w" |  t9 v- W6 c          <h2>全站公告</h2>6 a7 L% n3 h1 U' R/ b8 G& k# P
          <form method="post" action="">5 c' a+ S! S: m" Y
              <label for="title">公告标题:</label>
" {" r& U, j' r8 H# T              <input type="text" name="title" value="'.get_option('site_wide_notice_title').'"><br><br>
( H, ~8 \+ j3 j/ ^0 r( }4 B0 J              <label for="content">公告内容:</label>* S' \9 g  r5 w
              <textarea name="content">'.get_option('site_wide_notice_content').'</textarea><br><br>
! |$ P) b2 p' v, W0 Z              <input type="submit" name="submit" value="保存设置">( x: G: x  l3 \8 R: I$ v( v7 j
          </form>
% V3 \: W( g7 _" |* t0 l      </div>';" f- n9 V4 t8 h6 m  r# }

: p( j" C' a; V      // 处理表单数据* J8 u8 n" ~7 P8 ^% N8 _* X
      if (isset($_POST['submit'])) {& S/ l" u2 z8 C
          update_option('site_wide_notice_title', sanitize_text_field($_POST['title']));1 z. Y. Y* b5 v
          update_option('site_wide_notice_content', sanitize_text_field($_POST['content']));5 g) F' v3 l. N2 E9 ~. W4 u
      }. b5 Q/ h" P& n) O2 \
   }
  J! p* Z2 ^$ Z, [+ I$ m   ```+ Z& d0 S( r/ ^- s4 X5 C3 P

( F* U9 N5 T/ ?9 r   在该示例中,我们创建了一个表单,让用户输入公告的标题和内容,并使用 `update_option()` 函数将这些数据保存到名为 `site_wide_notice_title` 和 `site_wide_notice_content` 的 WordPress 配置项中。如果用户点击提交按钮,则将表单数据更新到配置项。* E9 _* i. Y! f
! [" p" F. i7 v$ z7 z
3. 在 WordPress 主题中显示全站公告。您可以通过在 WordPress 主题的 `header.php` 文件中添加代码,将公告内容显示在网站的顶部或其他位置。例如:# G6 F! R$ c2 w' i

) G' F) W6 P& C* u1 {   ```$ i. H; ?8 B- B/ S
   <?php/ D# \; q) f# T3 E
   $site_wide_notice_title = get_option('site_wide_notice_title');
$ Y. W& s4 r, F$ h   $site_wide_notice_content = get_option('site_wide_notice_content');# R+ Z5 s% u0 W- R3 x
   if (!empty($site_wide_notice_title) || !empty($site_wide_notice_content)) {
5 \& Z: c5 L6 K+ o# ~       echo '<div class="site-wide-notice">';
+ J; _- e3 n: K  C, E) w6 }       if (!empty($site_wide_notice_title)) {
4 K* F8 ?7 j+ z5 a4 @: a3 q           echo '<h3>'.$site_wide_notice_title.'</h3>';
4 Q1 g/ B3 d1 g# }; k       }5 h9 W( |, E1 @/ s' Q5 G- A
       if (!empty($site_wide_notice_content)) {' @  K0 X/ n* b# ?1 F& Z+ v: O
           echo '<p>'.$site_wide_notice_content.'</p>';
  P" y5 A# C$ e4 T       }# W/ N0 m" o% p/ [! O/ O1 l
       echo '</div>';# y4 {! Y! J4 ]5 c
   }9 _0 g, Z; T  I4 X* ]9 n
   ?>
, I6 e1 _' c* b8 |( \" G6 b6 m4 F4 z   ```& Z0 i: |( F& u# A% K/ U
1 d3 U# q7 Q8 I, c) s2 Q
   在该示例中,我们检查 WordPress 配置项中名为 `site_wide_notice_title` 和 `site_wide_notice_content` 的值是否为空,如果不为空,则在 `header.php` 文件中添加一个名为 `site-wide-notice` 的容器,将公告标题和内容显示在其中。+ _' N3 _( W% ]4 W& ]; n

! T5 |9 h- f$ ^. B" k请注意,本示例仅提供了一个框架,具体实现可能会根据您的需求和实际情况有所不同,您需要根据自己的需要进行修改和调整。同时,为了确保安全性,您还会需要对用户输入的数据进行适当的验证和过滤,例如使用 `sanitize_text_field()` 函数来过滤表单数据。
回复

使用道具 举报

340

主题

522

回帖

3498

积分

管理员

积分
3498
QQ
 楼主| 发表于 2023-5-18 09:26:50 来自手机 | 显示全部楼层
那如果需要发布多条公告,并进行管理,要如何实现?9 W( s( M! y. H# s
1 n# l& X& [/ [$ R' j
您可以创建一个自定义的 WordPress文章类型,例如“公告”,并对其进行自定义化,以实现发布多条公告并进行管理的功能。以下是具体步骤:& T+ D" s7 @3 B! ~5 ^# }7 ?7 A

; w& u4 \6 J4 W1. 创建一个自定义的文章类型:在你的主题 `functions.php` 文件中,添加以下代码:
+ j' q7 L4 A' P4 d( f" B1 |/ E, I" J' t( N! @  K
```/ ]( D, g/ D8 t1 T7 [* v$ h8 J
function create_custom_post_type() {( q! y( `8 I9 a, V# }$ \; _+ ]' r
    $args = array(
2 M6 y5 S+ N" Y9 f! H: d! s        'labels' => array(8 q" C! g; G" A& e2 J- U( R
            'name' => '公告',
* Z7 q+ [. M  ]/ L            'singular_name' => '公告'$ j) n% _( g& n2 r) y, @' X
        ),4 f+ a/ E5 {- m( ]+ q
        'public' => true,1 ^  S: z0 K  a" }1 \+ z: r
        'has_archive' => true,& q. e1 n! F4 m& q4 A1 ~+ m. D7 l
        'supports' => array('title', 'editor', 'thumbnail', 'excerpt', 'custom-fields', 'revisions'),- z; o0 P% [) K
        'taxonomies' => array('category', 'post_tag'),3 n; {3 w1 q6 C
        'menu_icon' => 'dashicons-megaphone',2 l* M2 Z5 h2 o" I
        'menu_position' => 5,
' m$ Y) z9 ~' B        'rewrite' => array('slug' => 'site-wide-notices')0 x1 s5 T9 N2 }7 I1 F
    );
) [: e; Q' l" M% X7 S  K% p    register_post_type('site-wide-notices', $args);
4 t; E* I0 ?/ e: q}
8 ~; D# x& p' Yadd_action('init', 'create_custom_post_type');' l  N( T! e0 x. l
```
" p1 v, I, o. U2 N" j9 ~5 N4 r% c1 I  L5 e; c4 ]- `8 D
在示例中,我们注册了一个名为 "site-wide-notices" 的新的文章类型,并定义了文章类型名称、缩略名、文章类型支持的功能、分类法、管理菜单图标等设置。7 L, u8 R& m) ^4 C
3 ~3 `3 m# i8 {4 J  E, e
2. 在你的 WordPress 后台中创建新文章类型“公告”:现在,你就可以在 WordPress 后台中通过导航到“公告”菜单,来添加、编辑或删除公告了。您可以在编辑公告的页面中添加标题、内容、特色图像或其他自定义的元数据字段。
7 c6 A! o) _' O- v5 b* t, P; W9 l: W& ?( ], z  P9 ^
3. 在主题中显示公告:在您的 WordPress 主题文件中添加以下代码,以在您的网站上显示公告:, Y# Q& \9 C( T1 x
# D: F: M2 v; N+ m
```# X! b' o+ j0 c" V
$args = array(
! a6 C" L# \( u# B( Y( ~    'posts_per_page' => 3, // 显示的公告数量3 Z  f8 p/ M8 ]9 s9 b5 k( |' O
    'post_type' => 'site-wide-notices', // 公告文章类型1 ?% E$ o; _8 v, Z( l
    'post_status' => 'publish', // 公告状态
; N- `9 D% E5 m2 ]' Z! B    'order' => 'DESC' // 排序方式+ ?( H, O5 p0 n0 K# s& \# G
);
5 c% `( E7 v( {6 r' T# H) p$ P; C+ m8 X6 a
$notices = new WP_Query($args);1 s& b. `+ n* `" B) b6 G/ h  b' g
if ($notices->have_posts()) :
4 U; p/ v7 v4 l8 m7 R! W    while ($notices->have_posts()) : $notices->the_post(); ?>
, e- Q+ `; c2 T( @4 X& Z% K" b. S        <div class="notice">/ e5 p. F7 O9 N  r' Y# u
            <h3><?php the_title(); ?></h3>
& ?2 `) K  p/ ?* |8 _# I# y            <div class="notice-content"><?php the_content(); ?></div>
' U( v; u7 e1 T1 A        </div>' s4 E8 ^7 b) Y5 }0 S% D; @9 U
    <?php endwhile;
% B  T  z$ q- o% q7 Pelse :% }- ?8 r5 ^4 b( \0 m+ a3 p& r
    echo "暂无公告";1 t0 _2 V! S: Z: c% T  h3 E
endif;
. A8 @. d/ X6 o% L% @  Jwp_reset_query();
! A, _2 D6 g6 V* l% U8 @```- A: Q1 F2 @- ^& c" h3 ]9 P% j

* c3 y8 U9 w% Y+ f) g这段代码将使用 WordPress 的 `WP_Query` 类从公告文章类型中获取最新发布的 3 条公告,并在前端页面中循环遍历并显示公告标题和内容等信息。
) ?4 W* c' @, Z1 o
' ~/ K, m0 c5 D5 s: i2 A6 f" Z. `以上便是实现 Wordpress 后台发布多条全站公告的基本步骤。需要注意的是,自定义文章类型可对应多篇文章,具体根据您的需求进行调整。
回复

使用道具 举报

340

主题

522

回帖

3498

积分

管理员

积分
3498
QQ
 楼主| 发表于 2023-5-18 09:27:55 来自手机 | 显示全部楼层
如果不想修改functions.php,有其他更好的办法吗?  R7 O  W# q: z/ |' p3 g8 R! W' K8 F
5 G/ f) Z7 V$ o( q2 z7 Y
如果您不想修改主题 `functions.php` 文件,也可以创建一个自定义插件来添加新的文章类型。6 b- Q$ Y, M8 B$ j

8 n4 J/ w# a, ^1 ?以下是创建自定义插件的步骤:
0 |1 B  R4 O6 @; Q9 B
$ s" k7 u- o" ?1. 创建新插件:在 WordPress 插件目录中创建一个新的子目录,例如 `site-wide-notices-plugin`,然后在该目录中创建一个新的 PHP 文件,例如 `site-wide-notices-plugin.php`,并在文件头部添加必需的标记,例如:
; V6 }" T: P% W* R. Y' E' U) K+ o9 {* _+ O& G
   ```+ X6 W. K1 T8 G  h; {
   <?php
1 r% ?5 [/ h$ W) o: O. e- b8 i# f/ l   /*
$ E) R% e. A% T! n  O+ ^   Plugin Name: Site Wide Notices Plugin
, L: Q; a; ~$ H& F; B& |   Description: Adds a new custom post type for site-wide notices.$ e% d0 s8 A+ S. G) R3 F4 o$ ~6 s
   Version: 1.0$ x4 _( [8 g' D( w+ m; q) v" O
   Author: Your Name, F2 L3 \' w0 I6 T) h: `
   Author URI: http://example.com
6 u7 b, X" z& b   */
3 w+ B5 P8 W  B6 \& r* f% v# m) L6 X7 e, Z/ }% \9 Z1 D/ R
   // Add plugin code here...
3 K/ V: X  B2 Z   ```
+ s" [  \& U2 m5 h& k) D
5 P) N+ C( j) ~$ j: O: F  u   在示例中,我们创建了一个名为 `Site Wide Notices Plugin` 的新插件,该插件添加了一个新的自定义文章类型,并指定了版本、作者和作者 URI 等元信息。3 x2 g1 a* O- z8 ^4 \, g

+ P9 B: p0 N$ i2 q' @, r) L2 A  x2. 在插件中注册新的文章类型:在 PHP 文件中添加以下代码,用于注册一个名为“site-wide-notices”的自定义文章类型:
( i% h! H8 D, h2 o  ]- ^
0 Y: U9 x7 {1 v" t5 _, d   ```" `, C+ k1 K% S# `
   add_action('init', 'create_custom_post_type');: j+ b- y9 r2 O- T8 i- V
   function create_custom_post_type() {* G9 t1 [- \+ F6 G" ~6 s6 b8 R
      $labels = array(* C( `& ?6 c( _7 s+ X3 a0 O
          'name' => 'Site Wide Notices',  n( N4 A3 H9 n8 s' Y) {6 }8 P
          'singular_name' => 'Site Wide Notice',
$ l% g$ D2 U3 r( M: k          'add_new' => 'Add New',
; [2 k' G4 `! b          'add_new_item' => 'Add New Site Wide Notice'," |7 m' i' w/ t. m* R
          'edit_item' => 'Edit Site Wide Notice',6 B/ _/ B$ Q4 Y
          'new_item' => 'New Site Wide Notice',) M3 t' g5 x, z3 Y: Z4 A  X
          'view_item' => 'View Site Wide Notice',( U  n- e  H. q9 X+ K
          'search_items' => 'Search Site Wide Notices',
# k/ Z$ |1 J9 N( Z          'not_found' => 'No site-wide notices found',. [! h0 q4 R% L* {. G" e
          'not_found_in_trash' => 'No site-wide notices found in trash', B$ P; v2 R! @0 p( Q! K5 |& n
      );; X) a) M  S4 I) T! x+ e0 S

; g1 Y; s) }2 K3 m      $args = array(
4 h+ ?  M# {+ q5 Q6 V1 B          'labels' => $labels,1 h$ ~7 X3 L1 Z( ^1 F- H  Q
          'public' => true,
4 T% d' a* Z8 l- r          'has_archive' => true,- _: ^7 n6 I3 Y1 `0 k
          'supports' => array('title', 'editor', 'thumbnail', 'excerpt', 'custom-fields', 'revisions'),
8 b8 V$ V- _9 D3 d6 H9 e          'taxonomies' => array('category', 'post_tag'),! x4 U' p& z2 a4 ~! L! \: G
          'menu_icon' => 'dashicons-megaphone',
. p7 k' y# \' |          'menu_position' => 5,
5 B2 X9 Z& B4 X          'rewrite' => array('slug' => 'site-wide-notices')( @0 y# r3 V5 ^2 x) h. F: `
      );
' |* w3 d  P  q( d" j* P7 s1 R1 p0 D: A
      register_post_type('site-wide-notices', $args);5 W+ P! p0 b/ Y* c8 y* G( l: _
   }3 H' G& U8 |6 B$ G' o" k
   ```
& G/ Q- O5 z# e1 L- L+ I3 F" W5 c+ E0 \% t. n4 E  O
   在示例中,我们使用 `register_post_type()` 函数注册一个新的文章类型,并定义了该文章类型的名称、标签和其他设置。) Z- V& O# ]2 m$ m' i; z2 W- f( f: E

" t. ~* t. r# U1 g- a* Q2 B3. 在后台中添加公告编辑页面:您可以使用 `add_meta_box()` 函数在后台中添加公告编辑页面,并自定义字段和元数据,例如:
4 v+ x8 Y4 ^( R  G: f6 l6 _" j/ o8 ~
   ```
) Z! D- n6 x8 K' ]# b4 T, i   add_action('add_meta_boxes', 'add_site_wide_notices_boxes');
' x, o  L* x& W/ k0 {7 f   function add_site_wide_notices_boxes() {, U" ?* ^; C: j: n' n$ T9 `! K  y
      add_meta_box('notice-details', 'Notice Details', 'notice_details_meta_box', 'site-wide-notices', 'normal', 'high');
& N( d( |) s- j- ]+ R) m   }5 \7 o* P3 j. t+ E
( `- r3 H+ t( k* o
   function notice_details_meta_box($post) {
! {$ h8 m1 J( W0 j  I( P- E      wp_nonce_field(basename(__FILE__), 'notices_nonce');
1 i% v' U1 ?! X* B# r/ v+ g9 s      $notice_title = get_post_meta($post->ID, 'notice_title', true);+ @; m! T4 V) a% T
      $notice_content = get_post_meta($post->ID, 'notice_content', true);8 {* Q1 S$ c6 z7 m
      ?>
4 K, ?1 @6 W4 J' ?& m! X      <p>
/ U6 g* C; T" y/ j. B          <label for="notice-title">Notice Title</label><br>
) \& o8 N" l* c          <input type="text" id="notice-title" name="notice_title" style="width: 100%;" value="<?php echo $notice_title; ?>">* t) ^1 {+ F' }( O+ ~( V8 b
      </p># ?8 r# S* u! e
      <p>
/ n( r; v% i/ E' ~; V- y          <label for="notice-content">Notice Content</label><br>
2 t% s3 T* U# X0 k2 q6 x) ^/ \          <?php wp_editor($notice_content, 'notice-content', array('textarea_rows' => 10)); ?>0 v9 _( a$ [  u# [
      </p>* |& }1 v) _4 W6 @* [
      <?php( C7 L+ Q. ~6 T, m8 B  n) R
   }4 @, J7 j+ z  \" K7 m" C! r

& m: a: R6 l+ r7 b   add_action('save_post', 'save_site_wide_notice_meta_box');
. H, C6 B5 k, i3 u. M2 Z   function save_site_wide_notice_meta_box($post_id) {
- e: {" a" P. m. Z! l      if (!isset($_POST['notices_nonce']) || !wp_verify_nonce($_POST['notices_nonce'], basename(__FILE__)))* R5 Z9 a# K$ U# L& _: u) h# K6 u
         return;
! R1 j# w+ b: v: E1 W      if (defined('DOING_AUTOSAVE') && DOING_AUTOSAVE)( |) A$ L$ B' h3 r
         return;: {% J5 Z  h  I: p/ z2 p2 P

6 Z& i5 P8 t: \& z5 N, Z! h6 [      if (isset($_POST['notice_title'])) {9 h2 }; j( l% i
          update_post_meta($post_id, 'notice_title', sanitize_text_field($_POST['notice_title']));8 _1 I/ _8 H) T& n) n
      }, U( S% p6 e* K0 M2 m
      if (isset($_POST['notice_content'])) {1 @# @7 f5 |5 z6 G. x$ R
          update_post_meta($post_id, 'notice_content', wp_kses_post($_POST['notice_content']));
3 D, E! ~' Y6 k5 B, E( z! f, ?. t: G" {      }/ K. ~- d  j: h6 A  e. i& ?: f
   }/ c. Y! _. f# h! T& Q# u* _4 h
   ```9 J  g2 ^& }+ z* C( M* T/ l3 M2 r
& w7 g  x8 \4 L3 }. B% U) K
   在示例中,我们使用 `add_meta_box()` 函数添加了一个名为 `notice-details` 的元框,用于在编辑页面上显示自定义字段和元数据。在 `notice-details_meta_box()` 函数中,我们使用 `wp_editor()` 函数添加了一个可视化编辑器,用于编辑公告内容。在 `save_site_wide_notice_meta_box()` 函数中,我们使用 `update_post_meta()` 函数将公告标题和内容保存到 WordPress 数据库中。
+ x: V6 H/ l7 _' e9 a& c
% z- J! y  r& t/ `- y$ U: L4 b4. 在前端页面中显示公告:在 WordPress 主题文件中添加以下代码,以在您的网站上显示公告:0 y5 h* O8 @( K

# Z1 Z: [/ v7 z1 a: m/ e7 s4 I   ```/ v9 Z* b  K; o, _& K# K  C
   $args = array(7 a4 Z8 b- s! s
      'post_type' => 'site-wide-notices',
/ v3 e' P! h6 s6 N/ V      'posts_per_page' => 3,& Q$ k( R( C& _; q$ [
      'order' => 'DESC',0 X0 {- S7 N+ i8 N7 b2 ^" n
      'orderby' => 'date'$ ?: O7 q0 N0 ]
   );# F% f9 O+ A* e( _8 P0 x
   $query = new WP_Query($args);  Y/ ?1 M3 H7 `2 I
   if ($query->have_posts()) :
1 J) Z- {6 h4 O3 u$ D      while ($query->have_posts()) : $query->the_post(); ?>
( ~  i1 M1 N5 u! I5 Y8 r          <div class="notice">
" I( `; v8 r  X: @              <h3><?php the_title(); ?></h3>
) \1 a! m8 B& z5 z$ j  [' X9 V              <div class="notice-content"><?php the_content(); ?></div>$ Y3 S' y, R  t$ {6 a9 I2 X) U5 y
          </div>' i7 s4 l6 i# }* v: q- m* Y! B1 w4 \
      <?php endwhile;
3 s- d1 M. {7 @! k% e% }9 P      wp_reset_postdata();# S+ n$ x! i, j: ]4 O' y' D
   endif;
% S3 I5 l; W, X) K! O4 ]- E2 [0 N7 e   ```+ `, T0 |6 p+ A* s) F& P6 W% X3 g; Y

6 P& i7 M1 }# P   在示例中,我们使用 `WP_Query` 类从 `site-wide-notices` 文章类型中获取最近发布的 3 条公告,并在前端页面中循环遍历并显示标题和内容等信息。
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2026-1-13 13:42 , Processed in 0.014283 second(s), 2 queries , Redis On.

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

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