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

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

[复制链接]

340

主题

522

回帖

3494

积分

管理员

积分
3494
QQ
发表于 2023-5-18 08:34:20 来自手机 | 显示全部楼层 |阅读模式
您可以使用以下方法来快速在 WordPress 后台增加一个全站公告的功能:
" W! N# R- p! d) \3 ]5 x( \0 \# p" L1 f
1. 在 WordPress 插件库中寻找可用的公告插件,例如 WP Notification Bars、Announcements、SSP Elegant Notification Bar 等。3 A5 v# N$ T8 G1 @: `
; W/ G! P) G0 S0 k8 Q+ V  D' R
2. 安装并激活您选择的插件。您可以在 WordPress 后台的「插件」->「添加新插件」界面中搜索并安装插件,然后在「插件」->「已安装插件」界面中激活它。$ U; a2 R/ U  ?" p9 }

* C: o+ n; F: z: U3. 在插件的设置页面中配置您的公告内容和样式。不同插件的设置选项和功能可能会有所不同,但通常都允许您定义公告的文本、链接、颜色、位置等。
: H  e; d. M, }+ M. f. Z$ z6 `, Z) Z3 H, r
4. 将公告添加到您的网站上。在插件设置页面中完成公告的设置后,您可以通过编辑 WordPress 主题的代码或使用插件提供的方法将公告添加到您的网站中。不同插件可能使用不同的添加方法,具体请查看详细说明或联系插件作者。
4 ]4 r- C; t0 M/ M: h4 e
& \/ A' v% I1 e+ Y$ Q% ]9 `% `, N5 `7 U注意,如果您使用的 WordPress 主题已经包含了公告功能,或使用了其他公告插件,可能会导致冲突或功能重复。如果您遇到了这样的问题,请查看主题文档或联系主题作者以获取解决方案。
回复

使用道具 举报

340

主题

522

回帖

3494

积分

管理员

积分
3494
QQ
 楼主| 发表于 2023-5-18 08:34:51 来自手机 | 显示全部楼层
如果是自己开发的话,具体要怎么做?
. n2 Q% j8 V5 O& y" d% c9 s
! J) j" ^- y; b; S# w如果您自己开发 WordPress 主题或插件,并且需要在后台中增加一个发布全站公告的功能,可以按照以下步骤操作:
  t$ v  i" ^3 p1 r/ A
! M5 q9 z' Y+ g# ]; v/ r( {1. 创建一个自定义的 WordPress 后台页面。您可以使用 `add_menu_page()` 或 `add_submenu_page()` 函数来创建一个自定义后台页面,例如:- m: L# e8 K. K0 U/ Q. Z# w
' T0 ?. ?! j- D8 Y6 H: \; z
   ```# V5 D; N5 t% R0 q6 _: M# p8 }9 c+ b1 A9 B
   add_menu_page(9 k8 b; k$ y9 I& G& I) l6 h
       '全站公告',$ z* y$ l2 I8 r/ t
       '全站公告',4 x) b5 M# v- S9 h; a
       'manage_options', //需要的用户权限2 _1 U: v- @- z! ?
       'site-wide-notice', //后台页面的 slug2 D$ u* g  ~2 Y0 y, d3 T( s
       'render_site_wide_notice_page', //用于渲染后台页面内容的函数$ @/ ?- t6 d! v* f) }
       'dashicons-megaphone', //用于显示在菜单中的图标
5 \- |0 p  E; R8 L3 O       30 //菜单项的位置
( q) ?- @; }, G   );
9 p1 j1 t! s  b. [- T1 Q, G   ```
8 j% b* ^# N( J7 G$ W6 q
* y) n4 [9 H! r- Q7 v- s# z   在该示例中,我们使用 `add_menu_page()` 函数来创建了一个名为“全站公告”的菜单项,并指定需要的用户权限(`manage_options`),在后台页面的 slug 为 `site-wide-notice`,用于渲染后台页面内容的函数为 `render_site_wide_notice_page`,在菜单中显示的图标为 `dashicons-megaphone`,菜单项的位置为 30。
/ {9 y# b) R5 t" J
8 s' \. c/ z7 d& v2. 编写用于显示和保存全站公告内容的代码。您可以在自定义后台页面中创建一个表单,让用户输入公告的标题、内容等信息,并将这些信息保存到 WordPress 数据库中的某个表中。例如:
1 ^, e4 v* G/ i# g# U
9 m4 m8 \' X) r% I$ q   ```
3 B* E4 g7 Y: H- J% J" [   function render_site_wide_notice_page() {
2 e. w, ]8 `7 S6 K      // 渲染后台页面内容
0 |4 O% T3 M& F& l! h& K$ ]/ l7 y& p      echo '<div class="wrap">
  r7 l  S4 P" ]7 R7 k          <h2>全站公告</h2>7 V* b( B- P' _! S( d
          <form method="post" action="">
) }/ A, r" z. s              <label for="title">公告标题:</label>( U! y: q2 U  r) V! B; Q/ _4 D8 j
              <input type="text" name="title" value="'.get_option('site_wide_notice_title').'"><br><br>
' `$ o. Y5 z% o$ P$ S3 ~              <label for="content">公告内容:</label>: u2 C  m3 P# Z: @: k
              <textarea name="content">'.get_option('site_wide_notice_content').'</textarea><br><br>9 G3 D% r; y- i) {6 R& U0 _& `
              <input type="submit" name="submit" value="保存设置">
' e, A$ {9 v0 R9 z  b- N* t          </form># H+ C0 @) W% x) w
      </div>';* C  ^4 j  _1 D; ~" w1 H

7 _  C) I1 [( `/ e      // 处理表单数据
! W- T. k) L9 r6 [- b; S* N      if (isset($_POST['submit'])) {
( o) ?, S- U2 [0 M          update_option('site_wide_notice_title', sanitize_text_field($_POST['title']));
2 a! _: a" V/ S; u          update_option('site_wide_notice_content', sanitize_text_field($_POST['content']));
- I! d5 o! ?. `1 B$ T$ r4 ]      }( g3 y6 }. ^) g5 O$ L  X
   }. x' f' u& S. e9 q( H
   ```. N. |* n9 o$ Q2 E% U' Q# p! r: a

. M: \% t0 y8 H6 k   在该示例中,我们创建了一个表单,让用户输入公告的标题和内容,并使用 `update_option()` 函数将这些数据保存到名为 `site_wide_notice_title` 和 `site_wide_notice_content` 的 WordPress 配置项中。如果用户点击提交按钮,则将表单数据更新到配置项。
- |" E% D1 J/ f/ n' S6 I; S
; H. I9 S8 W) L  P) r7 [5 j3. 在 WordPress 主题中显示全站公告。您可以通过在 WordPress 主题的 `header.php` 文件中添加代码,将公告内容显示在网站的顶部或其他位置。例如:
. d9 C9 N: f6 \, U$ H9 w$ V+ o5 j' D8 G% \' W* l# I" E; K9 j/ N
   ```
$ U$ l+ ^7 l* t% |& R# A9 p   <?php! M/ [$ Z9 p7 {  a0 C7 A
   $site_wide_notice_title = get_option('site_wide_notice_title');
: \$ K" R* e2 T9 T2 a5 W   $site_wide_notice_content = get_option('site_wide_notice_content');8 o- H7 U/ \, n9 U; o" O
   if (!empty($site_wide_notice_title) || !empty($site_wide_notice_content)) {
; |6 r( Q0 Q1 C8 F" {( G       echo '<div class="site-wide-notice">';/ S2 u0 \. s; g! J
       if (!empty($site_wide_notice_title)) {* |/ `! ?6 r! a
           echo '<h3>'.$site_wide_notice_title.'</h3>';
, A+ M) ?1 A& q       }0 |' z- z$ [. |1 L  j+ j
       if (!empty($site_wide_notice_content)) {7 S$ f# a0 Y1 ~- L( u: I4 ?
           echo '<p>'.$site_wide_notice_content.'</p>';
8 @5 P3 N; t' {1 U, S: [       }" A' X9 [) e+ J* q: D, Y
       echo '</div>';
2 ]0 q) m& w% S) B   }
' c% @; `, n8 |   ?>: \5 K* R1 Q7 H6 k+ X
   ```
. O6 c4 R% Y* |. \( e- y0 d+ Z( M! y9 R
   在该示例中,我们检查 WordPress 配置项中名为 `site_wide_notice_title` 和 `site_wide_notice_content` 的值是否为空,如果不为空,则在 `header.php` 文件中添加一个名为 `site-wide-notice` 的容器,将公告标题和内容显示在其中。
( p2 e3 B# `4 Q, @/ Z* M, G$ H. H: `
请注意,本示例仅提供了一个框架,具体实现可能会根据您的需求和实际情况有所不同,您需要根据自己的需要进行修改和调整。同时,为了确保安全性,您还会需要对用户输入的数据进行适当的验证和过滤,例如使用 `sanitize_text_field()` 函数来过滤表单数据。
回复

使用道具 举报

340

主题

522

回帖

3494

积分

管理员

积分
3494
QQ
 楼主| 发表于 2023-5-18 09:26:50 来自手机 | 显示全部楼层
那如果需要发布多条公告,并进行管理,要如何实现?
& ?% I8 n; F( ?" {- D4 S9 H$ D5 F$ I/ v4 W% U  s
您可以创建一个自定义的 WordPress文章类型,例如“公告”,并对其进行自定义化,以实现发布多条公告并进行管理的功能。以下是具体步骤:7 r" m0 n% R' g. t) U. n
& U& s* B; f# w: f
1. 创建一个自定义的文章类型:在你的主题 `functions.php` 文件中,添加以下代码:
; ~7 v7 A1 E7 ~9 Z# F
) k3 g! @3 u, M, C6 r3 \$ N```
6 c1 z! ^4 f: F5 F4 w" Cfunction create_custom_post_type() {; j& v  t4 R+ \  H
    $args = array(! {2 C) R* [5 I! ?' S$ Y5 P
        'labels' => array(
3 \% w1 c8 E/ K  D/ n  F: g. R            'name' => '公告',6 R  [8 `9 W1 Y8 {! Q
            'singular_name' => '公告'. `. c" v+ X1 W; L
        ),
! y# B7 ^. q1 d3 ?9 u        'public' => true,
2 ?( A. N2 C/ _8 N        'has_archive' => true,6 G. e- \) b' S
        'supports' => array('title', 'editor', 'thumbnail', 'excerpt', 'custom-fields', 'revisions'),3 a' }& W  i) W7 D* D" R
        'taxonomies' => array('category', 'post_tag'),
* Q, q4 i% i8 k3 |; \        'menu_icon' => 'dashicons-megaphone',& N8 O8 N, r: Q
        'menu_position' => 5,1 W6 q: L; u6 {! [
        'rewrite' => array('slug' => 'site-wide-notices')5 I$ l4 {, N  c4 |
    );
8 v! T5 o! l# v0 o( t" R; M    register_post_type('site-wide-notices', $args);% y9 C- c4 T! I" C& H
}, [' Q0 y2 A0 m9 t; m
add_action('init', 'create_custom_post_type');/ a4 }/ a# ^6 l1 y( Y
```. O. B$ R7 V; e( [
$ i  g6 y. E; U4 p
在示例中,我们注册了一个名为 "site-wide-notices" 的新的文章类型,并定义了文章类型名称、缩略名、文章类型支持的功能、分类法、管理菜单图标等设置。0 `) y' Q/ _' p' w6 F$ G; P
9 h  N) Y' Z- u) Z9 j6 K% X2 W
2. 在你的 WordPress 后台中创建新文章类型“公告”:现在,你就可以在 WordPress 后台中通过导航到“公告”菜单,来添加、编辑或删除公告了。您可以在编辑公告的页面中添加标题、内容、特色图像或其他自定义的元数据字段。6 v$ w: B$ E& z& f' @6 m
5 v1 K' s& R, ^" h9 [
3. 在主题中显示公告:在您的 WordPress 主题文件中添加以下代码,以在您的网站上显示公告:
7 Y. X1 N; w+ F/ R% j2 }6 g8 ?4 o7 g4 ]! Q( A, \+ z7 F
```; _) X' a7 I1 |8 j$ f0 |
$args = array(
. v& B: y; o. v- C  _    'posts_per_page' => 3, // 显示的公告数量
2 D- v0 x4 {  T7 r2 e% t    'post_type' => 'site-wide-notices', // 公告文章类型8 n; ]$ ^( [6 j0 Y3 H( h$ y# {" w
    'post_status' => 'publish', // 公告状态
9 E( q5 B4 B4 @( H( c7 l- s, x    'order' => 'DESC' // 排序方式; u% n7 a3 F3 D0 t- o0 Q6 s2 M! q
);
6 @7 N, R+ p* j
, s0 \6 l5 y9 s* r( B  B$notices = new WP_Query($args);( d2 f4 Y8 A0 I9 a9 f5 B/ U
if ($notices->have_posts()) :
. i* {2 o0 B7 M# Z$ m' K2 ~    while ($notices->have_posts()) : $notices->the_post(); ?>* i8 a& M5 P& ]4 {
        <div class="notice">6 o$ Z  _% N$ F1 a; o1 ]
            <h3><?php the_title(); ?></h3>- M" O) X) a* D" ~9 O
            <div class="notice-content"><?php the_content(); ?></div>( T9 j" @- |7 g" m' t
        </div>
/ i+ @. f! S0 q' D0 z& r    <?php endwhile;
( q$ `6 I" [( L2 b4 l8 `; Ielse :+ l" M7 ]! p  k3 y4 Y
    echo "暂无公告";1 a  `9 `) \  c8 R. _8 h. _  A2 v
endif;
* L; i6 C5 B) C( ewp_reset_query();
( g5 |' g& e4 D( A3 x. \7 V3 V- d) |```) n4 q$ g/ f& a/ F9 Y8 d3 r4 ^

$ z- F, r" X& @- h- q2 e: h这段代码将使用 WordPress 的 `WP_Query` 类从公告文章类型中获取最新发布的 3 条公告,并在前端页面中循环遍历并显示公告标题和内容等信息。
2 P* w- g7 S* q& P1 x8 h: K  M- H3 z( L/ `: ]. v
以上便是实现 Wordpress 后台发布多条全站公告的基本步骤。需要注意的是,自定义文章类型可对应多篇文章,具体根据您的需求进行调整。
回复

使用道具 举报

340

主题

522

回帖

3494

积分

管理员

积分
3494
QQ
 楼主| 发表于 2023-5-18 09:27:55 来自手机 | 显示全部楼层
如果不想修改functions.php,有其他更好的办法吗?
' C! q* |/ v' `' p: j4 v
+ c, e* q2 u" B如果您不想修改主题 `functions.php` 文件,也可以创建一个自定义插件来添加新的文章类型。
; x9 |/ \+ x4 D1 n4 e) c5 P1 o
: A9 B  W. a0 u% o% n以下是创建自定义插件的步骤:
9 Y/ _; X3 l! Z3 l: f' h& r5 P  d) ^4 R* o1 ?; O( b
1. 创建新插件:在 WordPress 插件目录中创建一个新的子目录,例如 `site-wide-notices-plugin`,然后在该目录中创建一个新的 PHP 文件,例如 `site-wide-notices-plugin.php`,并在文件头部添加必需的标记,例如:; ^" p" }5 ?+ w7 l) f
0 j* s* L7 X& g7 L$ w) N- w
   ```
: }5 B" w$ \$ D' d# w5 p/ j   <?php
0 X0 s: k2 z; v" [   /*0 p2 {0 w! a) a! G1 o# {$ l
   Plugin Name: Site Wide Notices Plugin
: s. Q9 g# [+ i. a' U* d   Description: Adds a new custom post type for site-wide notices.
* D+ j  x) z7 d8 \   Version: 1.0) |6 c* N$ S) H
   Author: Your Name
5 K! H) I+ J$ b* n0 I   Author URI: http://example.com
; l- d1 r& f  t   */; \! G7 G. r9 Y" |" R. g
* Z0 y, L9 x, H
   // Add plugin code here...& P) P# m1 ?6 u/ w# s
   ```7 \% I6 Q; `" h3 H6 K

4 A7 B% @3 Q0 a+ z  x$ @! r   在示例中,我们创建了一个名为 `Site Wide Notices Plugin` 的新插件,该插件添加了一个新的自定义文章类型,并指定了版本、作者和作者 URI 等元信息。
+ {4 Z( }$ P& [2 z, K6 l# X1 V
" d: O$ j$ `0 P2. 在插件中注册新的文章类型:在 PHP 文件中添加以下代码,用于注册一个名为“site-wide-notices”的自定义文章类型:0 L4 r' e: w; T

& i1 m5 {' Y9 ~* o% C7 T5 `   ```
- z& Q$ E0 b6 A" L5 J& X  Z   add_action('init', 'create_custom_post_type');
4 @  F0 _; [) W' D   function create_custom_post_type() {3 m* u. O2 d. V5 Y  F
      $labels = array(
1 |& W$ n" v7 u8 B( D! i          'name' => 'Site Wide Notices',6 H6 ^; u  B7 s$ r9 q. @8 s# \
          'singular_name' => 'Site Wide Notice',7 x5 g0 }2 I) H' D& v4 {
          'add_new' => 'Add New',
( }9 @- _/ e# J  Z          'add_new_item' => 'Add New Site Wide Notice',. s  r+ W) H6 ^, f, ^: M6 n3 n2 Y
          'edit_item' => 'Edit Site Wide Notice',
1 m5 o6 h+ H, ~' q) X' T1 \' c          'new_item' => 'New Site Wide Notice',
4 U3 x- a- x( V! T2 H* _! V          'view_item' => 'View Site Wide Notice',5 |# w0 Q/ V* p/ V7 D( b4 K
          'search_items' => 'Search Site Wide Notices'," {; d+ W4 b; @6 x/ D
          'not_found' => 'No site-wide notices found',) Q% i' ~4 Y8 C3 }$ r0 Q
          'not_found_in_trash' => 'No site-wide notices found in trash') M1 f, q/ G4 }. P" {3 I' H$ i
      );+ L  w( Z0 m  k
: @9 Y/ ]$ U9 J$ O' u' g0 E5 B
      $args = array(3 }6 l" x7 _0 ]8 Q8 x0 [* R+ `
          'labels' => $labels,8 l; A2 g( ?( [8 h0 B" J
          'public' => true,
7 F- C3 b" F. F          'has_archive' => true,- i1 V2 t! E# L* \; {) ^. D* U
          'supports' => array('title', 'editor', 'thumbnail', 'excerpt', 'custom-fields', 'revisions'),( n. Z( w1 `8 |4 Z' x
          'taxonomies' => array('category', 'post_tag'),8 y! r: s+ g& P6 S
          'menu_icon' => 'dashicons-megaphone',
/ `6 R  D! R% m7 y) \$ o# Z9 ~          'menu_position' => 5,
& n" L( m& ]& D) i: S5 ]" }          'rewrite' => array('slug' => 'site-wide-notices')
% N! c% \7 T6 v  o/ n      );$ Z, Z! t$ n3 V% Z" q, V: z
1 |5 C' X! w% v8 c$ B
      register_post_type('site-wide-notices', $args);
, g, a# F6 z9 J' j- u& u& M1 ~   }; _! Z  x' i, g5 O9 y+ k
   ```& B3 n7 b1 ~3 ]+ {* B- x8 t5 ^
1 U; x6 ~) d0 g1 }& x' h* O+ s
   在示例中,我们使用 `register_post_type()` 函数注册一个新的文章类型,并定义了该文章类型的名称、标签和其他设置。4 G5 ^; g* v/ O: O: r& u1 P7 F1 [) f

9 Y+ |; g0 N) P* S' }: j3. 在后台中添加公告编辑页面:您可以使用 `add_meta_box()` 函数在后台中添加公告编辑页面,并自定义字段和元数据,例如:
6 u5 P1 W% \- h5 g) ^% m" f4 ]( P' `, U9 f" H6 j9 i' c
   ```8 h% k# S% N6 n2 `
   add_action('add_meta_boxes', 'add_site_wide_notices_boxes');/ x9 ^* d7 z/ V) _3 }
   function add_site_wide_notices_boxes() {
) G+ ?* }5 S: V/ V" T4 x      add_meta_box('notice-details', 'Notice Details', 'notice_details_meta_box', 'site-wide-notices', 'normal', 'high');/ N2 T) B1 n) _. J5 V2 t3 E& M) c
   }
% t  c' h1 T: \/ _  D% i6 b4 S
% \3 I  p! y! U- i   function notice_details_meta_box($post) {6 b" M  M6 V9 y, p: z
      wp_nonce_field(basename(__FILE__), 'notices_nonce');. Z  y# w( @2 f& W- ^/ g
      $notice_title = get_post_meta($post->ID, 'notice_title', true);
8 C' k  p) d: \! Y- q2 I6 o: y      $notice_content = get_post_meta($post->ID, 'notice_content', true);% G) _5 Q4 u, l" v% N8 g
      ?>8 J6 q4 Y; g# M' C
      <p>9 [, @  b8 E4 \
          <label for="notice-title">Notice Title</label><br>
' M* ?9 n& m' D" h. c          <input type="text" id="notice-title" name="notice_title" style="width: 100%;" value="<?php echo $notice_title; ?>">6 m$ W* l- u! P# c% L$ e8 T
      </p>& E: d! ]1 t$ T+ o5 F8 `- A. i
      <p>
' T1 v# E. X( h          <label for="notice-content">Notice Content</label><br>9 c6 c, @# @2 g0 V# p
          <?php wp_editor($notice_content, 'notice-content', array('textarea_rows' => 10)); ?>7 }- o7 @4 t* `; Q6 z
      </p>: X" z8 L9 t2 g
      <?php
. t8 P5 s* C" ]9 |6 A   }
+ F7 E; J) K5 ~
# o+ P9 H2 {! w9 a& B5 c1 `   add_action('save_post', 'save_site_wide_notice_meta_box');
4 E% K1 Y- o, H% m! O2 F4 I8 s/ g   function save_site_wide_notice_meta_box($post_id) {
! @" Q* T# k6 f6 l5 W      if (!isset($_POST['notices_nonce']) || !wp_verify_nonce($_POST['notices_nonce'], basename(__FILE__)))
1 b! z, c! ~) ^5 l0 I         return;( V- z) x  k# v0 _1 U' e- J
      if (defined('DOING_AUTOSAVE') && DOING_AUTOSAVE)
% [% q2 B# f/ a         return;4 i8 w0 ~: N( M8 S, ]
1 Q7 A+ M! W* ^; S
      if (isset($_POST['notice_title'])) {
! p) q% y, m3 ]- P$ M  p          update_post_meta($post_id, 'notice_title', sanitize_text_field($_POST['notice_title']));: q- V0 Y0 u# [6 q5 W4 u2 E, {
      }
& K- \$ p. L" W8 Q. i      if (isset($_POST['notice_content'])) {6 j* h( A4 J  J! y1 u% r$ X3 Y
          update_post_meta($post_id, 'notice_content', wp_kses_post($_POST['notice_content']));
/ `2 m+ K$ ^% m, R3 |! p      }4 A! S5 j6 D; l* L$ y
   }% `; V' v& C6 O" j
   ```9 V8 W/ ?6 Q% B0 Z# u8 x$ |
" ^! z! v# D- ~/ t
   在示例中,我们使用 `add_meta_box()` 函数添加了一个名为 `notice-details` 的元框,用于在编辑页面上显示自定义字段和元数据。在 `notice-details_meta_box()` 函数中,我们使用 `wp_editor()` 函数添加了一个可视化编辑器,用于编辑公告内容。在 `save_site_wide_notice_meta_box()` 函数中,我们使用 `update_post_meta()` 函数将公告标题和内容保存到 WordPress 数据库中。
1 T0 M5 C, G0 j/ |* ?$ C  q, o7 K2 x
4. 在前端页面中显示公告:在 WordPress 主题文件中添加以下代码,以在您的网站上显示公告:
- H7 H% H1 O5 q1 e* l9 d2 i: A+ t: s% B. g
   ```
# F' i8 M" m4 i" l9 F8 N   $args = array(5 d9 x+ v+ `7 K9 e
      'post_type' => 'site-wide-notices',) t% C; g3 W' p9 U" Q
      'posts_per_page' => 3,
! G& E0 T3 e6 h4 j      'order' => 'DESC',9 \6 f0 U- u% \1 e; O* {. z! p
      'orderby' => 'date'" i; T; k* ^6 u5 @" g6 g
   );
$ V' s& U* P" j8 T% [8 H& d  Y# O   $query = new WP_Query($args);
) {& J" m& x0 \8 q3 F" k- f/ _   if ($query->have_posts()) :9 ?9 u' `% A3 h$ t$ U( [
      while ($query->have_posts()) : $query->the_post(); ?>% @: A( N7 d9 W! }, X
          <div class="notice">
1 j7 o' _7 ~) u7 I6 a              <h3><?php the_title(); ?></h3>
7 H* m& O6 R+ b/ [              <div class="notice-content"><?php the_content(); ?></div>) O: b/ v  w  Q1 }: t9 o7 r6 d
          </div>) A& |  V, f7 ?$ _- [
      <?php endwhile;: M7 i0 z: ^; }$ z6 v
      wp_reset_postdata();
+ u, j# v/ ?9 X   endif;" T' F  R' U; r  N# K( v1 T* t
   ```/ `6 s+ v, j7 N4 P
& c8 s$ m8 P! w
   在示例中,我们使用 `WP_Query` 类从 `site-wide-notices` 文章类型中获取最近发布的 3 条公告,并在前端页面中循环遍历并显示标题和内容等信息。
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2026-1-12 14:27 , Processed in 0.018107 second(s), 2 queries , Redis On.

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

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