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

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

[复制链接]

340

主题

529

回帖

3524

积分

管理员

积分
3524
QQ
发表于 2023-5-18 08:34:20 来自手机 | 显示全部楼层 |阅读模式
您可以使用以下方法来快速在 WordPress 后台增加一个全站公告的功能:5 n9 r1 B: F7 W  H# G5 O: r  f

. E1 u2 N4 }5 B: p1. 在 WordPress 插件库中寻找可用的公告插件,例如 WP Notification Bars、Announcements、SSP Elegant Notification Bar 等。. n7 [2 }4 t# R# p: s& M

3 s+ k4 T. l# h' q2. 安装并激活您选择的插件。您可以在 WordPress 后台的「插件」->「添加新插件」界面中搜索并安装插件,然后在「插件」->「已安装插件」界面中激活它。
- O- b* Q2 m( U
( l2 O) H8 s. F7 ?) M9 ]3. 在插件的设置页面中配置您的公告内容和样式。不同插件的设置选项和功能可能会有所不同,但通常都允许您定义公告的文本、链接、颜色、位置等。  n$ N  N( q; k: w8 B! q

: F! e# M1 p* {& C/ j2 S6 o4. 将公告添加到您的网站上。在插件设置页面中完成公告的设置后,您可以通过编辑 WordPress 主题的代码或使用插件提供的方法将公告添加到您的网站中。不同插件可能使用不同的添加方法,具体请查看详细说明或联系插件作者。3 L2 z* ?; s! {0 j6 ]5 D2 B6 c# C8 j
# h4 `7 d8 N' n! U( p# A
注意,如果您使用的 WordPress 主题已经包含了公告功能,或使用了其他公告插件,可能会导致冲突或功能重复。如果您遇到了这样的问题,请查看主题文档或联系主题作者以获取解决方案。
回复

使用道具 举报

340

主题

529

回帖

3524

积分

管理员

积分
3524
QQ
 楼主| 发表于 2023-5-18 08:34:51 来自手机 | 显示全部楼层
如果是自己开发的话,具体要怎么做?5 O7 I$ D0 U: U: E3 f9 R

9 P7 Y, s$ ?9 e0 k/ `( k如果您自己开发 WordPress 主题或插件,并且需要在后台中增加一个发布全站公告的功能,可以按照以下步骤操作:9 q# J- a3 X) ?
+ i$ |# ^3 v- L; W. i# z
1. 创建一个自定义的 WordPress 后台页面。您可以使用 `add_menu_page()` 或 `add_submenu_page()` 函数来创建一个自定义后台页面,例如:# S& m) ]* g! }) p3 E
& [% x- g6 a8 W9 x: n! ^
   ```
  a1 P$ l* C' ]- W  Y6 b' j) r   add_menu_page(1 D) ~! e6 I8 ~" l
       '全站公告',
" ^# Z; v. [" y% F( h       '全站公告',8 P+ H; t# y$ E% z: h! Q  {* g7 R
       'manage_options', //需要的用户权限2 c: e% ]$ H0 X* o
       'site-wide-notice', //后台页面的 slug9 u/ l+ [& |$ W" e" v
       'render_site_wide_notice_page', //用于渲染后台页面内容的函数8 t2 V. v6 A0 @' ?
       'dashicons-megaphone', //用于显示在菜单中的图标. R. K% B' w( N8 |' i4 J
       30 //菜单项的位置
+ |  V0 y) w7 H5 B# S; p3 T   );3 M, p# j9 B7 I, I& Z  m
   ```
! `+ }  y9 q7 r
/ U  J+ ]8 r  n0 G( E% p   在该示例中,我们使用 `add_menu_page()` 函数来创建了一个名为“全站公告”的菜单项,并指定需要的用户权限(`manage_options`),在后台页面的 slug 为 `site-wide-notice`,用于渲染后台页面内容的函数为 `render_site_wide_notice_page`,在菜单中显示的图标为 `dashicons-megaphone`,菜单项的位置为 30。1 Q% m% @  [$ m! W7 B0 U4 e4 C
1 S  l/ C9 e6 P1 G" u* i; {8 N
2. 编写用于显示和保存全站公告内容的代码。您可以在自定义后台页面中创建一个表单,让用户输入公告的标题、内容等信息,并将这些信息保存到 WordPress 数据库中的某个表中。例如:* s  H9 `* Z! c  A

2 f/ U8 g  y7 ]: [4 ]. J   ```
8 C! _7 d) J6 `- _( Q   function render_site_wide_notice_page() {
+ W4 S* n. q* n0 d$ r; B, m% l      // 渲染后台页面内容5 J2 ]( m( D& L7 ^5 F: [" u; k
      echo '<div class="wrap">0 v) x- r2 z) i" r
          <h2>全站公告</h2>: a1 K6 O% w: @# X/ {
          <form method="post" action="">
( I5 |  _# B4 n3 c. f5 J6 R              <label for="title">公告标题:</label>  v; W+ H+ p4 ~& Q2 q
              <input type="text" name="title" value="'.get_option('site_wide_notice_title').'"><br><br>
$ U7 f$ ]5 I& N. r% @3 Q              <label for="content">公告内容:</label>
5 U! @8 z3 S6 Q3 r: Z              <textarea name="content">'.get_option('site_wide_notice_content').'</textarea><br><br>; Z; w+ \. W  p
              <input type="submit" name="submit" value="保存设置">
5 ^0 E) `7 V! |" {. }6 i          </form>
5 P! }! `4 {8 v6 o0 l! c      </div>';: O  s/ ^) a# J
& M) C, C% Z" p7 r
      // 处理表单数据
- c7 i: V) K) U) I# i: q      if (isset($_POST['submit'])) {
+ X7 e2 l# a: Q$ H5 S9 T6 r+ _$ _          update_option('site_wide_notice_title', sanitize_text_field($_POST['title']));: C+ g6 \& a, v6 I: z
          update_option('site_wide_notice_content', sanitize_text_field($_POST['content']));
: {) }6 N' W4 v0 a) f7 Z      }( K8 p1 H$ K1 x
   }
) P& d  A9 G% @   ```! b0 O: x8 E1 i$ N+ q8 s

, r1 j, m' I& j: U5 ?& i6 I; j   在该示例中,我们创建了一个表单,让用户输入公告的标题和内容,并使用 `update_option()` 函数将这些数据保存到名为 `site_wide_notice_title` 和 `site_wide_notice_content` 的 WordPress 配置项中。如果用户点击提交按钮,则将表单数据更新到配置项。& k# o5 Z$ V$ e

. {4 R) F5 \6 \3. 在 WordPress 主题中显示全站公告。您可以通过在 WordPress 主题的 `header.php` 文件中添加代码,将公告内容显示在网站的顶部或其他位置。例如:( ?8 l6 |$ M; L4 U
+ D* z# Y# ~  Q# E8 N& w; ?
   ```) E# f" Z) ]1 W
   <?php
3 \- {  a/ J4 ^: Y' G   $site_wide_notice_title = get_option('site_wide_notice_title');
( Q* k8 j2 F3 p, Z   $site_wide_notice_content = get_option('site_wide_notice_content');6 [2 P1 l1 D- _8 u3 d
   if (!empty($site_wide_notice_title) || !empty($site_wide_notice_content)) {2 O: ?2 }9 k9 P' i
       echo '<div class="site-wide-notice">';
" e2 Z& J8 G$ X. J# i; n4 ]- d) Z       if (!empty($site_wide_notice_title)) {) i( ^( Z3 V: x0 \+ p; g% R
           echo '<h3>'.$site_wide_notice_title.'</h3>';
+ F1 A! e3 \' |* k1 x       }" g* B; Z: |8 E. [2 P
       if (!empty($site_wide_notice_content)) {+ k0 P  z. P5 j: H
           echo '<p>'.$site_wide_notice_content.'</p>';9 s: z% C2 B1 f
       }
0 B* s) f( b( U, q" h       echo '</div>';4 X, x2 i' {4 Z* j; ]! j/ y4 z
   }
' }& _7 F5 M% ~. ~5 m   ?>
. U$ `- y! n2 @$ i4 o- `   ```
6 R# ]+ L* c- B2 |: V) r+ T1 {4 L5 e; U
   在该示例中,我们检查 WordPress 配置项中名为 `site_wide_notice_title` 和 `site_wide_notice_content` 的值是否为空,如果不为空,则在 `header.php` 文件中添加一个名为 `site-wide-notice` 的容器,将公告标题和内容显示在其中。
  B, S. W. C' V: ]6 y+ Y0 ?  h9 ^( z
请注意,本示例仅提供了一个框架,具体实现可能会根据您的需求和实际情况有所不同,您需要根据自己的需要进行修改和调整。同时,为了确保安全性,您还会需要对用户输入的数据进行适当的验证和过滤,例如使用 `sanitize_text_field()` 函数来过滤表单数据。
回复

使用道具 举报

340

主题

529

回帖

3524

积分

管理员

积分
3524
QQ
 楼主| 发表于 2023-5-18 09:26:50 来自手机 | 显示全部楼层
那如果需要发布多条公告,并进行管理,要如何实现?+ w/ u9 `' [; q; c) q# V
+ X, Y8 b) m& Q) ]8 u5 l' g
您可以创建一个自定义的 WordPress文章类型,例如“公告”,并对其进行自定义化,以实现发布多条公告并进行管理的功能。以下是具体步骤:. m+ z/ d0 o7 T
; {+ B" V" x" c" k9 G  ?/ i9 W
1. 创建一个自定义的文章类型:在你的主题 `functions.php` 文件中,添加以下代码:
2 [% b# Y: h, a( {) K' U$ l+ {7 e: \1 D, X" }
```5 U1 i$ ^4 q* w) h
function create_custom_post_type() {! y: B) q3 d# s1 b
    $args = array(
# C+ b/ K. a' |5 A( }        'labels' => array(! H' f1 D' o, z9 v" k9 ?
            'name' => '公告',
0 T" m% W/ T2 y5 l$ Y$ K$ M            'singular_name' => '公告'0 U. n6 C, `) O7 h
        ),
2 n; K5 r# D) l        'public' => true,$ L: ^! }2 H, n0 [6 S
        'has_archive' => true,  `0 y( p7 M% U/ [
        'supports' => array('title', 'editor', 'thumbnail', 'excerpt', 'custom-fields', 'revisions'),
6 y0 f! ~" Q7 r# R& J6 \1 T* R( i        'taxonomies' => array('category', 'post_tag'),' z4 B. e/ n# e6 g9 ~
        'menu_icon' => 'dashicons-megaphone',2 n% J7 s/ X+ N6 k) z
        'menu_position' => 5,
3 B* u/ H# n3 M6 o/ M        'rewrite' => array('slug' => 'site-wide-notices')
* H" t- \6 t. f9 h: w    );
! }+ r# Y* A- ^8 L# v    register_post_type('site-wide-notices', $args);
4 n. _$ ]" v+ Y7 M9 G" r# J, X- n}
; A5 ^% E5 t" u- e7 G7 sadd_action('init', 'create_custom_post_type');+ k1 Y  N% {; s. A8 ~3 C
```
# P1 l) f8 o' w8 A
: G% k8 s6 [* X在示例中,我们注册了一个名为 "site-wide-notices" 的新的文章类型,并定义了文章类型名称、缩略名、文章类型支持的功能、分类法、管理菜单图标等设置。2 D& f: I& p5 O

. ?2 c1 K3 D7 `0 I; t2 L0 ~3 E2. 在你的 WordPress 后台中创建新文章类型“公告”:现在,你就可以在 WordPress 后台中通过导航到“公告”菜单,来添加、编辑或删除公告了。您可以在编辑公告的页面中添加标题、内容、特色图像或其他自定义的元数据字段。
8 _6 E  ?" b' O  U
& b! a/ C( a9 ^% U3. 在主题中显示公告:在您的 WordPress 主题文件中添加以下代码,以在您的网站上显示公告:
$ M- C- O% p+ l1 a( F( `& }
! R) I3 J% j& ]- ~+ m4 r5 m# b```) I9 ?0 m7 ?% s% C) l  r! C3 W
$args = array(
6 C& C6 o" w$ U    'posts_per_page' => 3, // 显示的公告数量% U, M1 P' G3 @  E$ N/ j
    'post_type' => 'site-wide-notices', // 公告文章类型
" E( I0 H: R! q9 P( _% {    'post_status' => 'publish', // 公告状态
' \4 z) j, I, z% |5 e    'order' => 'DESC' // 排序方式- l, T! b; @* h9 v9 a9 _) K; k& _
);! o7 k0 Z  m+ I+ @' F2 y5 X
$ E0 W; O& l7 a# S" v) m2 v& j: g
$notices = new WP_Query($args);
2 c- Q8 i5 U- E) Wif ($notices->have_posts()) :
' ?6 b* G% F) T4 P, T! ?    while ($notices->have_posts()) : $notices->the_post(); ?>
4 p/ x# X8 p; I+ f/ `& g2 [        <div class="notice">( H4 ]/ k) k2 f3 g/ M+ \8 D, s
            <h3><?php the_title(); ?></h3>' X8 `" \: V1 e% f3 U& p' O# o
            <div class="notice-content"><?php the_content(); ?></div>
6 A2 j4 p/ f% W        </div>( N3 ]2 x% A0 q% c6 _7 Y0 u
    <?php endwhile;
2 t! e5 E6 x8 I6 g, E) s7 Felse :
* G% q2 Y3 L2 e7 o2 A    echo "暂无公告";
( f8 J2 P, A! _5 G' }- Aendif;+ L0 N; [% P, M. C
wp_reset_query();0 z" }3 \% |+ J4 `) P
```
7 A' u; m, `( k0 s( U2 O* ?" H( B. s; X0 g
这段代码将使用 WordPress 的 `WP_Query` 类从公告文章类型中获取最新发布的 3 条公告,并在前端页面中循环遍历并显示公告标题和内容等信息。2 V% N+ ?6 x% |- F9 H- A5 R) R1 C8 }7 o
- O( l+ B, Q. C8 K
以上便是实现 Wordpress 后台发布多条全站公告的基本步骤。需要注意的是,自定义文章类型可对应多篇文章,具体根据您的需求进行调整。
回复

使用道具 举报

340

主题

529

回帖

3524

积分

管理员

积分
3524
QQ
 楼主| 发表于 2023-5-18 09:27:55 来自手机 | 显示全部楼层
如果不想修改functions.php,有其他更好的办法吗?: Z, k' Z+ o2 @

0 J" p& s2 p7 p* g' A* o如果您不想修改主题 `functions.php` 文件,也可以创建一个自定义插件来添加新的文章类型。
2 J+ m1 ]1 X0 P9 W- ~3 D
1 x; J, c  }$ b2 g以下是创建自定义插件的步骤:: B0 |: A! p2 B( z; F

. P2 U( \  t/ p: d' h) c$ `, R8 J1. 创建新插件:在 WordPress 插件目录中创建一个新的子目录,例如 `site-wide-notices-plugin`,然后在该目录中创建一个新的 PHP 文件,例如 `site-wide-notices-plugin.php`,并在文件头部添加必需的标记,例如:! t/ M; M/ M$ p' X. g$ S
9 Z9 U1 Q4 k$ h! N4 E
   ```
7 X2 N( r) j" f5 `6 H1 m' s0 g   <?php
4 [+ t7 ]! H1 @6 k) }   /*
; ^4 K  A" u$ Y3 t   Plugin Name: Site Wide Notices Plugin
! h/ r' h) w9 {( U. c! P( U8 X   Description: Adds a new custom post type for site-wide notices.
+ {, o  y! \3 H/ f) x* R   Version: 1.0
" b. b5 k' C7 u" e   Author: Your Name
# L5 w4 W# S: m   Author URI: http://example.com' ~* |! W# I; K' q9 \+ A
   */, p- y6 ]$ q$ a! k- u& D

) ]4 f$ d1 |. f  K- q# i% F   // Add plugin code here...
" J; b4 O0 E' Q& `   ```
" {+ z$ c+ V7 x0 ~: o, f$ @. _1 [5 C( y
   在示例中,我们创建了一个名为 `Site Wide Notices Plugin` 的新插件,该插件添加了一个新的自定义文章类型,并指定了版本、作者和作者 URI 等元信息。
& o! L4 ^- I8 |3 f: F& Y
3 ^/ K! r( K3 }+ T' t2. 在插件中注册新的文章类型:在 PHP 文件中添加以下代码,用于注册一个名为“site-wide-notices”的自定义文章类型:
: h6 h6 O* E" F5 ^! f' j, ~1 A! W, L1 {
   ```9 U7 ?3 x5 f0 ?# n8 l5 V
   add_action('init', 'create_custom_post_type');! n6 c+ C+ @8 O$ Z) H2 \
   function create_custom_post_type() {: l/ q+ @9 T( Y
      $labels = array(
% E6 e) b9 l- g4 q' U/ M          'name' => 'Site Wide Notices',) o( j" O) q# M  s
          'singular_name' => 'Site Wide Notice',
. K* z6 _; w# O7 }2 n# P8 }' c- \          'add_new' => 'Add New',
2 Y9 h& g! X- p$ e" k; e4 ?  j% z          'add_new_item' => 'Add New Site Wide Notice',
/ p  K4 o5 Z$ U8 M5 {& i          'edit_item' => 'Edit Site Wide Notice',
) O. }+ I$ ^% G7 v( n6 R9 |$ f+ u          'new_item' => 'New Site Wide Notice',6 L$ {; g9 g) V$ Y( g8 N/ G
          'view_item' => 'View Site Wide Notice',
# A9 Q! ^4 f* L0 b; n          'search_items' => 'Search Site Wide Notices',
, {; p% m; |4 H2 p9 H. E5 i3 _4 G          'not_found' => 'No site-wide notices found',
, N- [9 C% y1 H          'not_found_in_trash' => 'No site-wide notices found in trash'
8 x9 g4 F9 C( Z; f- u: w3 `      );5 s# A! E" Z3 k6 I

2 d0 q8 {+ l! e* H6 q; J  j  H      $args = array(
6 v: l; x, E* ^          'labels' => $labels,+ h' Q( s' C5 m  }3 Z/ t; o4 l
          'public' => true,
* z0 Q" ?5 i' N+ R          'has_archive' => true,
+ N/ {9 y5 \0 z1 C0 \- e3 G          'supports' => array('title', 'editor', 'thumbnail', 'excerpt', 'custom-fields', 'revisions'),
9 M# i+ i% Y; J% h* f          'taxonomies' => array('category', 'post_tag'),
6 d8 n/ F8 |9 s+ Y3 c1 a1 p          'menu_icon' => 'dashicons-megaphone',% l2 n! v9 r2 B) Z
          'menu_position' => 5,' O. ]2 M! u! X5 Q, V
          'rewrite' => array('slug' => 'site-wide-notices')  g: J7 N+ p) w( Y
      );
) ~' r: U/ k0 U9 O* H5 e. g* |) h1 s6 x# d1 k, u' Y* P1 o
      register_post_type('site-wide-notices', $args);" T! W: ?4 _* A6 B- l9 m
   }
7 u- T7 j5 G0 G4 H  i" I. H! d   ```
2 F8 r# b. x' W% i  y8 o1 ^+ z$ T+ R" S/ @" \9 l" V
   在示例中,我们使用 `register_post_type()` 函数注册一个新的文章类型,并定义了该文章类型的名称、标签和其他设置。% ^2 U3 s9 H$ j6 h$ U& k

. s1 f% L  h/ a* V& u+ ]' P3. 在后台中添加公告编辑页面:您可以使用 `add_meta_box()` 函数在后台中添加公告编辑页面,并自定义字段和元数据,例如:/ r! R0 x" \0 K, R3 E! S$ s" v& a* Q

8 p4 ~0 [: t8 o5 N   ```
$ q. Y# }- t& C! @1 i   add_action('add_meta_boxes', 'add_site_wide_notices_boxes');
" {6 U& ~0 c- S5 J3 J# A2 H   function add_site_wide_notices_boxes() {7 u3 f; |+ q) e+ M# ^
      add_meta_box('notice-details', 'Notice Details', 'notice_details_meta_box', 'site-wide-notices', 'normal', 'high');$ B& N% B0 I5 J7 i' b
   }
5 Q+ E  U' J$ R
0 Z, d$ @( A, B   function notice_details_meta_box($post) {
: y, l1 F- H8 m      wp_nonce_field(basename(__FILE__), 'notices_nonce');
/ u$ p- ^/ w, ~- o* N      $notice_title = get_post_meta($post->ID, 'notice_title', true);& k7 K2 H8 S% a( ?# F4 {" _& x
      $notice_content = get_post_meta($post->ID, 'notice_content', true);# N* Z; ^$ ^( x1 T% y+ h
      ?>( t2 J( v9 O! R# f2 ~: t+ N' z
      <p>/ E, e& b6 m; O- ]) z5 D# h
          <label for="notice-title">Notice Title</label><br>9 |. y  c  V6 D
          <input type="text" id="notice-title" name="notice_title" style="width: 100%;" value="<?php echo $notice_title; ?>">
6 c+ @( z  V) u      </p>
1 `0 S# V+ q3 S9 N      <p>
8 ^! _: U* f5 L. w          <label for="notice-content">Notice Content</label><br>+ [( T& \4 {  Q# e2 K: k
          <?php wp_editor($notice_content, 'notice-content', array('textarea_rows' => 10)); ?>
. D$ a* e0 Y: P7 ^: Q1 W( p0 r3 p      </p>8 q. ]. |+ a  o) F3 W
      <?php
% }8 A$ E% ?" [5 v: D   }
- l: t$ {5 p5 |! N1 Q# W9 O
: H0 @6 w' W- @( H/ }   add_action('save_post', 'save_site_wide_notice_meta_box');' b% g1 i1 S% y6 Z6 \( E
   function save_site_wide_notice_meta_box($post_id) {
- v8 Y/ E4 w" x- _6 }      if (!isset($_POST['notices_nonce']) || !wp_verify_nonce($_POST['notices_nonce'], basename(__FILE__)))" d# i, ^" e6 M; y
         return;* [( H% \: t( n  L
      if (defined('DOING_AUTOSAVE') && DOING_AUTOSAVE)
, Q/ b+ P* n! L         return;+ w% u& G  }- @% b6 O) r( `
$ ~, D( X) z, m  C9 L1 f
      if (isset($_POST['notice_title'])) {, x! Z' b- A% ^" v" c
          update_post_meta($post_id, 'notice_title', sanitize_text_field($_POST['notice_title']));# T- Z) \, q' ~9 v! D
      }
2 k2 R( R8 J6 s5 L6 v. A# w      if (isset($_POST['notice_content'])) {! J* L. ?3 }: Y
          update_post_meta($post_id, 'notice_content', wp_kses_post($_POST['notice_content']));
8 x/ D6 O: [3 F! z0 K      }
, l0 L  I! h5 L6 F& @   }* @9 }; {$ O8 ^
   ```
5 R: F4 a! M, C+ z; r* k) x2 `' _3 y+ ^* y0 S) s9 M
   在示例中,我们使用 `add_meta_box()` 函数添加了一个名为 `notice-details` 的元框,用于在编辑页面上显示自定义字段和元数据。在 `notice-details_meta_box()` 函数中,我们使用 `wp_editor()` 函数添加了一个可视化编辑器,用于编辑公告内容。在 `save_site_wide_notice_meta_box()` 函数中,我们使用 `update_post_meta()` 函数将公告标题和内容保存到 WordPress 数据库中。" A$ b8 l3 D0 F& U* ~$ i: I: Z: X

; @% l" `4 w% z9 @, K4. 在前端页面中显示公告:在 WordPress 主题文件中添加以下代码,以在您的网站上显示公告:) I/ Q8 [* S1 X- ^1 \) E
. L9 S) B% g4 l" Y
   ```
3 G) ~, {7 k& A, o. y6 b   $args = array(1 k! V' s) I$ y. T$ _: H' k" f- K
      'post_type' => 'site-wide-notices',' z5 _2 |* x6 h& r; K, g3 Y
      'posts_per_page' => 3,
0 p, t7 o; `9 o; |0 I      'order' => 'DESC',
4 p2 Z) c1 u" D- ~      'orderby' => 'date'4 y; z2 x! j/ ^( n, T' Y2 P, N# Z
   );5 |  j8 B& M* s: W! o% k" e; I
   $query = new WP_Query($args);
) u: R6 e, S; y) ^3 O; K   if ($query->have_posts()) :; o5 ?3 a" ]. J$ M. P$ n+ E
      while ($query->have_posts()) : $query->the_post(); ?>
2 M  ^9 E6 X" B3 u          <div class="notice">
; b3 M$ D5 Q" \; {- V              <h3><?php the_title(); ?></h3>6 E% O, F7 e) b! E8 M
              <div class="notice-content"><?php the_content(); ?></div>
8 f: I- Z! T9 m1 q% r/ y( @( X          </div>, J9 f$ Q  Y5 b% g
      <?php endwhile;
' }( J; a6 a3 i& ]      wp_reset_postdata();
" V' o8 O+ r! _8 {5 m4 l$ ?5 t+ n$ q   endif;4 T, b  t; b# b! {9 q, d
   ```
) \' J4 N# T! B& _, y/ M2 P; I6 Y) F
   在示例中,我们使用 `WP_Query` 类从 `site-wide-notices` 文章类型中获取最近发布的 3 条公告,并在前端页面中循环遍历并显示标题和内容等信息。
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2026-1-17 03:56 , Processed in 0.012367 second(s), 3 queries , Redis On.

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

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