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

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

[复制链接]

334

主题

517

回帖

3396

积分

管理员

积分
3396
QQ
发表于 2023-5-18 08:34:20 来自手机 | 显示全部楼层 |阅读模式
您可以使用以下方法来快速在 WordPress 后台增加一个全站公告的功能:
- r! W, X7 i7 I+ B5 z& O
- G/ B7 N2 q, M5 Z0 G* G6 V1. 在 WordPress 插件库中寻找可用的公告插件,例如 WP Notification Bars、Announcements、SSP Elegant Notification Bar 等。
# u1 l  o2 {7 r. \
2 v& m, K+ b: Q6 P6 i3 a6 z2. 安装并激活您选择的插件。您可以在 WordPress 后台的「插件」->「添加新插件」界面中搜索并安装插件,然后在「插件」->「已安装插件」界面中激活它。
2 E' H4 [7 f: S5 ]  t: F, C# \/ r1 W
3. 在插件的设置页面中配置您的公告内容和样式。不同插件的设置选项和功能可能会有所不同,但通常都允许您定义公告的文本、链接、颜色、位置等。/ {$ {* h* r+ g

; `3 W2 ^) ^) M( |0 ?, w' \4. 将公告添加到您的网站上。在插件设置页面中完成公告的设置后,您可以通过编辑 WordPress 主题的代码或使用插件提供的方法将公告添加到您的网站中。不同插件可能使用不同的添加方法,具体请查看详细说明或联系插件作者。
6 n% j5 E  T. _2 Z0 X& H- c7 i" Y2 h) f) A0 }$ U# i; p# d: L
注意,如果您使用的 WordPress 主题已经包含了公告功能,或使用了其他公告插件,可能会导致冲突或功能重复。如果您遇到了这样的问题,请查看主题文档或联系主题作者以获取解决方案。
回复

使用道具 举报

334

主题

517

回帖

3396

积分

管理员

积分
3396
QQ
 楼主| 发表于 2023-5-18 08:34:51 来自手机 | 显示全部楼层
如果是自己开发的话,具体要怎么做?
) |5 D7 [4 w4 Z% m
5 |1 J: ]; C$ z: B+ p0 b如果您自己开发 WordPress 主题或插件,并且需要在后台中增加一个发布全站公告的功能,可以按照以下步骤操作:# T- F' X0 {* h( N

% U: d7 _' I+ }/ [1. 创建一个自定义的 WordPress 后台页面。您可以使用 `add_menu_page()` 或 `add_submenu_page()` 函数来创建一个自定义后台页面,例如:
- A4 N% ]! a) l- f/ C
6 |% o# R( t! e  w8 w  \2 C3 y   ```% O% j) h' w3 q! u8 b
   add_menu_page(
& F/ m+ P2 T4 z( H( i       '全站公告',
4 p) v* s9 y# D, k       '全站公告',
+ X  h: U6 x& @! e. ]       'manage_options', //需要的用户权限
5 l, A& p9 `% j7 a, Q4 e2 {       'site-wide-notice', //后台页面的 slug3 L& F7 ]3 F4 u7 a( }9 z  f
       'render_site_wide_notice_page', //用于渲染后台页面内容的函数( t- X7 u' A& X; t
       'dashicons-megaphone', //用于显示在菜单中的图标
; s5 i6 v- Q- f: \8 b1 K       30 //菜单项的位置1 L- m% T1 D; d: }6 o1 y2 M* n% e3 J4 v
   );
+ @$ Y' |5 O6 n" B$ X7 p   ```
8 c, w5 Z1 S: [1 J. o: V' k( f- P! a' L7 {5 d' a; p* F
   在该示例中,我们使用 `add_menu_page()` 函数来创建了一个名为“全站公告”的菜单项,并指定需要的用户权限(`manage_options`),在后台页面的 slug 为 `site-wide-notice`,用于渲染后台页面内容的函数为 `render_site_wide_notice_page`,在菜单中显示的图标为 `dashicons-megaphone`,菜单项的位置为 30。
2 n! n2 q; }  F' S- f' v5 v: F
3 S+ q6 [6 O$ `2. 编写用于显示和保存全站公告内容的代码。您可以在自定义后台页面中创建一个表单,让用户输入公告的标题、内容等信息,并将这些信息保存到 WordPress 数据库中的某个表中。例如:
0 X/ h% y' v( B  S& F/ R
; [! K+ J5 b/ l1 p8 G2 K! z! z   ```9 H: h5 H# A$ g; X$ P
   function render_site_wide_notice_page() {
3 F) G3 }8 u1 [# q      // 渲染后台页面内容) N5 H& e) _$ V: S. P) J% J# i: f
      echo '<div class="wrap">( d' m' `7 V% i" f9 V0 ]: O( S3 o& ]
          <h2>全站公告</h2>
) J" c1 x- k" p% H$ t: v          <form method="post" action="">
6 {* I6 q3 H1 V              <label for="title">公告标题:</label>
5 s' S/ U. p. s0 Q% a              <input type="text" name="title" value="'.get_option('site_wide_notice_title').'"><br><br>0 Y7 @3 A7 l) X
              <label for="content">公告内容:</label>
6 D& {7 C( f9 G  i! K1 z              <textarea name="content">'.get_option('site_wide_notice_content').'</textarea><br><br>6 I& S6 N8 `) }8 o7 m" E7 T3 @. \/ d
              <input type="submit" name="submit" value="保存设置">
' K& ~# r% f1 f& ^6 Y& `          </form>5 O! d3 y4 x+ m% x+ J
      </div>';
, v4 U# I9 v. y- v3 R% ?1 y4 l& \) C, A# n2 y" P: W8 O4 Q
      // 处理表单数据
! T9 [  O" r+ N9 Q; B$ @      if (isset($_POST['submit'])) {
' u* \# H9 M. x) P          update_option('site_wide_notice_title', sanitize_text_field($_POST['title']));
, Y7 {( S5 j& d          update_option('site_wide_notice_content', sanitize_text_field($_POST['content']));
7 ]- s' v: P3 Y. i6 J. D      }
( i) l( Q6 a( I* H( H" b0 t   }
: u1 V: Y1 v6 T" Z) I) Q   ```
3 K! r% H- o& e" c7 U; I; u) }
! B+ N6 @) n+ z: P$ D/ y   在该示例中,我们创建了一个表单,让用户输入公告的标题和内容,并使用 `update_option()` 函数将这些数据保存到名为 `site_wide_notice_title` 和 `site_wide_notice_content` 的 WordPress 配置项中。如果用户点击提交按钮,则将表单数据更新到配置项。& ~- P. R! A; {" n

+ l0 t6 l. E0 {! @# U3. 在 WordPress 主题中显示全站公告。您可以通过在 WordPress 主题的 `header.php` 文件中添加代码,将公告内容显示在网站的顶部或其他位置。例如:
2 r6 `* I+ |. \- p: y& t/ ]2 M, s
* S  L1 @: Z" z7 e/ N$ F+ \5 ]   ```  Q5 `3 A- D( S. ]" D2 m- X
   <?php
6 e: _# z$ b& P% D# E, G2 e7 J   $site_wide_notice_title = get_option('site_wide_notice_title');
4 C; I! s) U; x' e4 z5 ]   $site_wide_notice_content = get_option('site_wide_notice_content');& G! X+ Z. O9 K' L- r
   if (!empty($site_wide_notice_title) || !empty($site_wide_notice_content)) {. U; I* I& d# Y) s
       echo '<div class="site-wide-notice">';# Q/ s$ G# S, H8 @) x
       if (!empty($site_wide_notice_title)) {7 N- ]+ }9 z; O4 D6 T
           echo '<h3>'.$site_wide_notice_title.'</h3>';
) |/ E  E6 R' O       }- p& b$ |5 C: f" T' G$ b
       if (!empty($site_wide_notice_content)) {& g1 D' R; }! }
           echo '<p>'.$site_wide_notice_content.'</p>';
( y$ O4 a: o* F/ `3 M. @       }0 r& G# \0 ~7 I( F
       echo '</div>';( I7 h1 s+ C& B2 r2 M: F
   }4 C2 G2 _9 h$ V% y# @( y4 L0 N
   ?>
* x) X3 }6 u# L3 M' o% N   ```
' @% n* L9 O) `
6 T: c3 j: A; z4 i* _" a& B   在该示例中,我们检查 WordPress 配置项中名为 `site_wide_notice_title` 和 `site_wide_notice_content` 的值是否为空,如果不为空,则在 `header.php` 文件中添加一个名为 `site-wide-notice` 的容器,将公告标题和内容显示在其中。
- P& m5 s' ?& s: b( x- q  p6 G
0 M' w& F! ~2 B5 N! y3 _- \请注意,本示例仅提供了一个框架,具体实现可能会根据您的需求和实际情况有所不同,您需要根据自己的需要进行修改和调整。同时,为了确保安全性,您还会需要对用户输入的数据进行适当的验证和过滤,例如使用 `sanitize_text_field()` 函数来过滤表单数据。
回复

使用道具 举报

334

主题

517

回帖

3396

积分

管理员

积分
3396
QQ
 楼主| 发表于 2023-5-18 09:26:50 来自手机 | 显示全部楼层
那如果需要发布多条公告,并进行管理,要如何实现?
; J5 J& Z* V3 r, W4 ]
! {: W( m2 Q: e+ D1 T% P$ H, C您可以创建一个自定义的 WordPress文章类型,例如“公告”,并对其进行自定义化,以实现发布多条公告并进行管理的功能。以下是具体步骤:
' e9 Z& h# Z5 P0 j. O( k
8 c' K2 p) n( \; X1. 创建一个自定义的文章类型:在你的主题 `functions.php` 文件中,添加以下代码:3 e3 h# P. b+ y" M: d: a
3 j7 `* U5 W+ u" U( v; N; L1 R
```
2 F4 A7 T/ a( q( k* N# gfunction create_custom_post_type() {9 b+ y" Q; g' ^! M5 j7 `; q# f
    $args = array(, V$ U" V2 A- w( ~3 W7 U6 N* W
        'labels' => array(
; V, o: [# M9 j# x1 G9 g            'name' => '公告',
" N/ ^; E  g5 H/ ^# Z; U            'singular_name' => '公告'9 q) F, ~' K! N
        ),
2 e3 ]+ o; c; k- q: f        'public' => true,
6 n# x6 A6 [; f9 N        'has_archive' => true,
# N0 v4 B- x& L( f( }        'supports' => array('title', 'editor', 'thumbnail', 'excerpt', 'custom-fields', 'revisions'),
/ k/ i& w+ w7 A- S1 k5 ^; ]* @        'taxonomies' => array('category', 'post_tag'),2 k( h, L& @& u4 D% J+ _- A
        'menu_icon' => 'dashicons-megaphone',
7 E8 H& d0 {' q+ \* [& D        'menu_position' => 5,6 C$ a) ?7 B: P- u
        'rewrite' => array('slug' => 'site-wide-notices')
( f; T- t9 R0 T    );0 p; ~0 F6 b) h
    register_post_type('site-wide-notices', $args);
* y+ i. k( C$ b! A7 r# m}% H" d% j1 Q$ M9 Z  Y+ t. k
add_action('init', 'create_custom_post_type');% L. M  K, f1 }4 t  j
```" w2 V: Q- `7 q* j( I+ F6 x

% K% W& t& f- U+ V9 D) y7 I3 s) Y在示例中,我们注册了一个名为 "site-wide-notices" 的新的文章类型,并定义了文章类型名称、缩略名、文章类型支持的功能、分类法、管理菜单图标等设置。0 M, {1 p0 h) b2 h  k

+ I* Z, Y: y) A7 S2. 在你的 WordPress 后台中创建新文章类型“公告”:现在,你就可以在 WordPress 后台中通过导航到“公告”菜单,来添加、编辑或删除公告了。您可以在编辑公告的页面中添加标题、内容、特色图像或其他自定义的元数据字段。
6 W0 K. Q+ h2 i: ^3 [4 \8 @; N( j8 F5 @  k- M" _8 t
3. 在主题中显示公告:在您的 WordPress 主题文件中添加以下代码,以在您的网站上显示公告:6 {" Y( _' ~9 L, n/ ~* H
% y( w: p+ b9 `8 Y( h6 d
```
; c3 E$ n5 Q& K1 k$ i$args = array(& c* [& N- V) G: {( X
    'posts_per_page' => 3, // 显示的公告数量+ y- Z, }' l$ P8 N1 p
    'post_type' => 'site-wide-notices', // 公告文章类型- Y- ?0 S2 w2 l0 n+ R% \, C- r
    'post_status' => 'publish', // 公告状态# }1 w# k- X: ^/ Z. r+ m6 [; `
    'order' => 'DESC' // 排序方式. d; _2 u  Z9 ]3 H$ s% {
);& i0 p* m' h, @3 e  _. g, z

3 f; |7 G: V  W4 F* k/ f$notices = new WP_Query($args);+ w+ d* O  k% B1 m3 N& j6 `' C
if ($notices->have_posts()) :) G& [! A8 k' }- `
    while ($notices->have_posts()) : $notices->the_post(); ?>
2 Y  R3 x9 ]0 F. Q  B1 O! [        <div class="notice">
( P4 R8 Z/ y. ], K1 W8 [            <h3><?php the_title(); ?></h3>
) H& O. e! Y7 q* Q. a9 n+ l            <div class="notice-content"><?php the_content(); ?></div>
, U2 w- g/ [8 b6 c9 _# @        </div>5 U+ Z' v' P8 m- y7 U0 e' Q
    <?php endwhile;& v0 Z2 [8 m5 e! K: x
else :
9 ?4 |* L- d" Z7 a0 ?8 R    echo "暂无公告";& i5 L3 S0 [9 W& B( F# I
endif;
0 J0 ^7 H' q! \wp_reset_query();/ |- y5 ]# {' H1 S8 u' Z4 e
```
* D) }  m/ l3 ~& I. ?. h) U5 Q/ z6 m3 {
这段代码将使用 WordPress 的 `WP_Query` 类从公告文章类型中获取最新发布的 3 条公告,并在前端页面中循环遍历并显示公告标题和内容等信息。
/ P$ p9 N" |4 E9 f" F- u+ E
3 `; j5 E8 _& @! ^以上便是实现 Wordpress 后台发布多条全站公告的基本步骤。需要注意的是,自定义文章类型可对应多篇文章,具体根据您的需求进行调整。
回复

使用道具 举报

334

主题

517

回帖

3396

积分

管理员

积分
3396
QQ
 楼主| 发表于 2023-5-18 09:27:55 来自手机 | 显示全部楼层
如果不想修改functions.php,有其他更好的办法吗?
9 q. |- d* [6 B! o1 Y+ q2 v$ P+ L) `9 n% p) X9 T4 I3 G) J- p
如果您不想修改主题 `functions.php` 文件,也可以创建一个自定义插件来添加新的文章类型。
  b9 ?8 F% Z  f  b/ L. X! l; t- v  S& X) F* M* A2 }; Z3 Q
以下是创建自定义插件的步骤:- Z/ x; _# q$ k5 l+ L
8 [2 I# D$ k" y% o
1. 创建新插件:在 WordPress 插件目录中创建一个新的子目录,例如 `site-wide-notices-plugin`,然后在该目录中创建一个新的 PHP 文件,例如 `site-wide-notices-plugin.php`,并在文件头部添加必需的标记,例如:
" D$ g4 D5 E% {0 Q- s1 P% x6 v/ s$ _4 A
   ```
8 R$ f& q3 K6 J: g# v   <?php
* F8 \5 B6 j2 K6 P2 Q   /*
; N! Q( K/ K1 `4 t: q! t: K4 t   Plugin Name: Site Wide Notices Plugin
; g4 V  S0 W" w& n; ~* K. u5 a   Description: Adds a new custom post type for site-wide notices.
! M. \) M6 }9 f  E   Version: 1.0
- ^! V! y# I6 G3 N  Q   Author: Your Name3 o4 o. S+ j, J' n- s5 c
   Author URI: http://example.com
; b8 [7 v. H/ H; I; M4 W. x7 i" t   */
% {7 ~# N: i3 \1 P- ?; T+ h3 a5 [9 K- Y8 |: A6 K
   // Add plugin code here..., i5 X6 t5 \$ I9 Y- |! w$ V
   ```3 z! B8 B2 h8 b" r* R
  W# S) ]7 A( \! U5 r/ v
   在示例中,我们创建了一个名为 `Site Wide Notices Plugin` 的新插件,该插件添加了一个新的自定义文章类型,并指定了版本、作者和作者 URI 等元信息。
$ Z, F3 Y0 S: ?& p9 H* M, H- k3 X0 _3 l2 c
2. 在插件中注册新的文章类型:在 PHP 文件中添加以下代码,用于注册一个名为“site-wide-notices”的自定义文章类型:
% y. X* f9 g2 l0 m. p2 o) l8 ^2 k1 U# b- }& A/ V9 v! _6 y
   ```" y7 p: k$ l2 _3 U3 H
   add_action('init', 'create_custom_post_type');" x9 t, j3 [. b9 |. l: m
   function create_custom_post_type() {8 T! a- j% D1 a* E% e' {
      $labels = array(
1 t- [! y% k' ]2 Y/ v2 U          'name' => 'Site Wide Notices',
: ]% F( u/ D& f! Y          'singular_name' => 'Site Wide Notice',
7 G  Z% y( x! L) f. ^$ M' l          'add_new' => 'Add New',
1 ]' }' I/ }( G. w. q7 s          'add_new_item' => 'Add New Site Wide Notice',
2 i9 H% e% n' B& w% w1 s          'edit_item' => 'Edit Site Wide Notice',
) L$ h' E: U2 m: \          'new_item' => 'New Site Wide Notice',
8 P2 N! [0 _6 g6 S( x+ A6 }          'view_item' => 'View Site Wide Notice',
9 D/ x8 E/ |" Q+ \          'search_items' => 'Search Site Wide Notices',
4 I+ }6 n# r' H7 Q' L: Y0 \7 z0 T          'not_found' => 'No site-wide notices found',
* a, f: w8 U/ u& |! G          'not_found_in_trash' => 'No site-wide notices found in trash'- T6 B! d2 E5 O2 \
      );
6 z, v7 k6 C- K- E+ U0 s
5 t0 ~  u6 R3 @5 g      $args = array(
+ `/ a6 \7 A8 T          'labels' => $labels,- r7 W, b' ?8 x7 p# }! K
          'public' => true,
$ L& B9 K8 Q0 W& L1 o" Q8 k9 L          'has_archive' => true,# ]8 t, o2 \, e8 p
          'supports' => array('title', 'editor', 'thumbnail', 'excerpt', 'custom-fields', 'revisions'),( ?0 F" D0 R% b
          'taxonomies' => array('category', 'post_tag'),
0 m% I, }# X8 P4 i: _% E- ]7 v+ O          'menu_icon' => 'dashicons-megaphone',$ o3 J0 H8 k* R( W* O+ o
          'menu_position' => 5,' ^4 i- ?0 }# r, g8 S/ n2 Q) J6 b; S
          'rewrite' => array('slug' => 'site-wide-notices')
4 M9 r$ ~, n$ i/ A      );5 k, S9 [$ y/ `% Q0 K- p  u8 G
7 J4 e1 u( u0 N0 v
      register_post_type('site-wide-notices', $args);3 F. {! W( q6 t9 {
   }
* a0 H' Q. n9 ~   ```, D# E; V, k9 S( R3 d) Z8 n

. @6 `* ?- T% V: k5 S) w. J   在示例中,我们使用 `register_post_type()` 函数注册一个新的文章类型,并定义了该文章类型的名称、标签和其他设置。! S8 B7 H% r- F5 G8 S. a

  M) [0 j" Q1 G9 Y, c, r0 j3. 在后台中添加公告编辑页面:您可以使用 `add_meta_box()` 函数在后台中添加公告编辑页面,并自定义字段和元数据,例如:  L6 K7 a2 n( O% P* Z0 V
0 {; X8 `- [+ _( Q0 e7 Y% s- K
   ```
# V. Q- w) o" ^7 t   add_action('add_meta_boxes', 'add_site_wide_notices_boxes');( ^7 i: |8 Z6 k, o* o
   function add_site_wide_notices_boxes() {5 K. o9 [7 M8 g( r; @
      add_meta_box('notice-details', 'Notice Details', 'notice_details_meta_box', 'site-wide-notices', 'normal', 'high');& q6 c# w7 o) m. w8 ]. x) U- i
   }2 i: {& ~5 F+ l0 [$ u8 H6 U
/ r, M) g/ J, k" A2 j, y- Z  Y
   function notice_details_meta_box($post) {; l8 r, y0 ]) I
      wp_nonce_field(basename(__FILE__), 'notices_nonce');
+ I* U& _, b0 C      $notice_title = get_post_meta($post->ID, 'notice_title', true);! D5 o6 W) \$ d9 Q
      $notice_content = get_post_meta($post->ID, 'notice_content', true);
5 L% ]- }! C4 P5 z' R! }8 t      ?>
  I9 p6 [) _3 E9 V      <p>
& k2 \4 C, H1 |$ y          <label for="notice-title">Notice Title</label><br>
) J9 G5 k! E" d% O% f+ }          <input type="text" id="notice-title" name="notice_title" style="width: 100%;" value="<?php echo $notice_title; ?>">& ^8 j& N9 D9 N% l+ Y6 Y* V
      </p>/ N' i- x& S/ l$ `; p# V
      <p>
! v: x# E- ^, h- b% i          <label for="notice-content">Notice Content</label><br>
8 }" ~- @: S4 h2 M2 x          <?php wp_editor($notice_content, 'notice-content', array('textarea_rows' => 10)); ?>3 S+ q& E* p  A6 v/ x
      </p>
& \( {& F4 I0 @      <?php4 a) G2 S: y* L9 y1 M! l
   }
- @$ c5 @6 K' b1 D& q. a
  E$ j* X5 T6 k+ ~3 P   add_action('save_post', 'save_site_wide_notice_meta_box');
6 e3 i- R3 l. Q0 ~2 p  a' l. ]   function save_site_wide_notice_meta_box($post_id) {
2 }5 M  G! g6 f2 \      if (!isset($_POST['notices_nonce']) || !wp_verify_nonce($_POST['notices_nonce'], basename(__FILE__)))" |" p4 J+ v" `1 f5 @& D0 H/ g1 a
         return;8 J. t! ]3 r( x9 y) f& z9 q
      if (defined('DOING_AUTOSAVE') && DOING_AUTOSAVE)
. k* ]+ k; p) K) W; B         return;4 Y$ c( y! r  c5 [: h; M' }
3 E" W4 j0 e! n$ X, I9 N
      if (isset($_POST['notice_title'])) {
% ]2 Z- d" O' N* {$ q& w! ^          update_post_meta($post_id, 'notice_title', sanitize_text_field($_POST['notice_title']));" I2 y2 j. Y" V" o! `
      }
. V  h! q% D4 x) }9 H      if (isset($_POST['notice_content'])) {
% p8 r$ d: E. j* h* q" ?          update_post_meta($post_id, 'notice_content', wp_kses_post($_POST['notice_content']));& ]- M" b+ O# ~0 [3 ]9 L& W
      }2 @! H# W7 o0 O: u2 J! h6 |
   }
, w9 C, ~0 q3 m( G+ D- R  o   ```
2 S9 P  H! I, _! P% \' }4 y" n
; ~# ^' K4 M) g9 _' ~   在示例中,我们使用 `add_meta_box()` 函数添加了一个名为 `notice-details` 的元框,用于在编辑页面上显示自定义字段和元数据。在 `notice-details_meta_box()` 函数中,我们使用 `wp_editor()` 函数添加了一个可视化编辑器,用于编辑公告内容。在 `save_site_wide_notice_meta_box()` 函数中,我们使用 `update_post_meta()` 函数将公告标题和内容保存到 WordPress 数据库中。! S* B0 s* K6 K3 o

+ t$ O9 B) J6 @/ i4. 在前端页面中显示公告:在 WordPress 主题文件中添加以下代码,以在您的网站上显示公告:8 G: w  _5 c( P% I5 p# }1 I) Q

4 W& z( r3 s# f; D. Z2 k2 u   ```
* H2 \, a# }9 z& }9 j6 E2 U: p$ T   $args = array(
. n1 w. h/ @/ L      'post_type' => 'site-wide-notices',& }: R3 j8 b! D
      'posts_per_page' => 3,1 B" t/ s: W  y
      'order' => 'DESC',
0 H4 z8 Z" x% A; P; ]& j      'orderby' => 'date'
0 t$ E& f' r8 E6 B   );$ T0 p- ?: i" h1 i
   $query = new WP_Query($args);3 D( X, K! ?. {3 E$ F& d
   if ($query->have_posts()) :
9 d2 G: D3 C- |  \: s9 ]! }8 x      while ($query->have_posts()) : $query->the_post(); ?>4 ?* s' F( e* W. m
          <div class="notice">
6 Q/ I& n- e- l* N* B+ n$ H" C              <h3><?php the_title(); ?></h3>
- n7 T+ _% F1 ^- D* b' w              <div class="notice-content"><?php the_content(); ?></div>
) b' R( S6 g, k  K  j' b          </div>3 n  `) r/ p$ |7 z( c' i$ z
      <?php endwhile;
2 ?1 J+ P7 o8 y$ I8 n, K# n      wp_reset_postdata();7 q# k7 A5 s( Z3 b; j2 E$ S6 j/ ]
   endif;8 g, ~: p/ g8 _! v' n8 I6 e
   ```4 j! c" z, |0 c- O1 a# c9 Y. N

8 ~- t: @# c' ~% }: Z   在示例中,我们使用 `WP_Query` 类从 `site-wide-notices` 文章类型中获取最近发布的 3 条公告,并在前端页面中循环遍历并显示标题和内容等信息。
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-12-3 01:45 , Processed in 0.078967 second(s), 3 queries , Redis On.

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

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