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

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

[复制链接]

347

主题

565

回帖

3689

积分

管理员

积分
3689
QQ
发表于 2023-5-18 08:34:20 来自手机 | 显示全部楼层 |阅读模式
您可以使用以下方法来快速在 WordPress 后台增加一个全站公告的功能:
6 P1 i( E0 B! j' t
1 @  K  w+ r( f" F$ y+ G; _1. 在 WordPress 插件库中寻找可用的公告插件,例如 WP Notification Bars、Announcements、SSP Elegant Notification Bar 等。
8 B1 j' c! t! v: ~. L  x
. Q( z* l9 i: a2. 安装并激活您选择的插件。您可以在 WordPress 后台的「插件」->「添加新插件」界面中搜索并安装插件,然后在「插件」->「已安装插件」界面中激活它。" _: F) [  Q1 s/ |5 T" f
* U6 w( ]! H: B" R% D
3. 在插件的设置页面中配置您的公告内容和样式。不同插件的设置选项和功能可能会有所不同,但通常都允许您定义公告的文本、链接、颜色、位置等。6 D0 A) y! {, j% s' M. r

) g$ ^' B. z( Q6 L4. 将公告添加到您的网站上。在插件设置页面中完成公告的设置后,您可以通过编辑 WordPress 主题的代码或使用插件提供的方法将公告添加到您的网站中。不同插件可能使用不同的添加方法,具体请查看详细说明或联系插件作者。
' T) |" e; ?; f% b
( M+ O* J3 z7 G注意,如果您使用的 WordPress 主题已经包含了公告功能,或使用了其他公告插件,可能会导致冲突或功能重复。如果您遇到了这样的问题,请查看主题文档或联系主题作者以获取解决方案。
回复

使用道具 举报

347

主题

565

回帖

3689

积分

管理员

积分
3689
QQ
 楼主| 发表于 2023-5-18 08:34:51 来自手机 | 显示全部楼层
如果是自己开发的话,具体要怎么做?; X& Q  a6 R' D, p, c
9 {2 T& v- C: I; R/ e+ r
如果您自己开发 WordPress 主题或插件,并且需要在后台中增加一个发布全站公告的功能,可以按照以下步骤操作:9 h) \' Q' B+ K- G1 j5 h- ]' T
0 V! X0 |3 `- g0 @9 z# Q! d' j/ n
1. 创建一个自定义的 WordPress 后台页面。您可以使用 `add_menu_page()` 或 `add_submenu_page()` 函数来创建一个自定义后台页面,例如:
% S1 [0 E3 F( S0 Y2 [' N8 f0 P# x8 j' d# m
   ```
) d8 f5 W8 K+ [9 b  G' l   add_menu_page(8 V) ]7 v7 T- D
       '全站公告',
) b' _1 g7 g. i  j       '全站公告',' C5 z; }- x6 e* @8 j8 e0 B( G8 f
       'manage_options', //需要的用户权限
4 }' P$ f- Q( p5 \       'site-wide-notice', //后台页面的 slug3 g* P  a* p& Q4 w5 g9 v' M
       'render_site_wide_notice_page', //用于渲染后台页面内容的函数, l7 `, M7 @- R. i
       'dashicons-megaphone', //用于显示在菜单中的图标: q, x' Z; B5 }
       30 //菜单项的位置
: @; f7 M0 J" T8 Q+ ]  M   );9 n( P1 I; ^& _4 u+ _
   ```
' C. v, v$ n1 M' X: L8 P: E
2 v5 b( P5 M" m$ b/ X' W   在该示例中,我们使用 `add_menu_page()` 函数来创建了一个名为“全站公告”的菜单项,并指定需要的用户权限(`manage_options`),在后台页面的 slug 为 `site-wide-notice`,用于渲染后台页面内容的函数为 `render_site_wide_notice_page`,在菜单中显示的图标为 `dashicons-megaphone`,菜单项的位置为 30。* y% g5 f; }: ~; T1 Z

/ h7 x  A8 l  f, F4 m2. 编写用于显示和保存全站公告内容的代码。您可以在自定义后台页面中创建一个表单,让用户输入公告的标题、内容等信息,并将这些信息保存到 WordPress 数据库中的某个表中。例如:
3 i( G1 q* D2 L! D) d
( G# H+ S& ^6 D& [  ?& U   ```
7 C( w; x1 |3 U$ O3 h3 h3 n   function render_site_wide_notice_page() {% _1 E; H! c7 [$ P% I# [- A
      // 渲染后台页面内容
! c: k9 v# W8 Z: U! d+ Z2 i. X      echo '<div class="wrap">
! W7 |( B& i4 `  p& Q          <h2>全站公告</h2>
6 }4 K) x# Y7 ^0 k          <form method="post" action="">! b# ~+ A: M# r
              <label for="title">公告标题:</label>: `5 C1 }6 J1 A+ s, d$ J( j( C
              <input type="text" name="title" value="'.get_option('site_wide_notice_title').'"><br><br>
4 E% b( T9 D( P' U& u% _              <label for="content">公告内容:</label>
8 V- m1 M1 E) R5 g& Z              <textarea name="content">'.get_option('site_wide_notice_content').'</textarea><br><br>& G' \* a/ V3 j# K4 z6 u2 L0 |! S* H
              <input type="submit" name="submit" value="保存设置">6 X9 K; {* E: |/ Q9 N2 N
          </form>
9 A- R2 X4 i, |      </div>';
; ]4 l6 O* c+ T, i
, B, z( `+ C. N) k7 J2 P8 {0 {/ d      // 处理表单数据
, }+ X3 w8 B* C: L" I8 r8 B/ ^1 w      if (isset($_POST['submit'])) {
  l: p( T% [: ~; G1 G& S' N          update_option('site_wide_notice_title', sanitize_text_field($_POST['title']));, a9 b8 o1 Q2 Y4 @, @0 H  Y
          update_option('site_wide_notice_content', sanitize_text_field($_POST['content']));( q& _3 \) d  R
      }
2 n8 y) z( V2 Z" I  j0 [1 E3 ~   }
9 N  e' P( A$ J, K+ L   ```& l" m( x4 [/ i0 I1 w8 e0 f

( Z9 S* h# Y( ]" U6 u   在该示例中,我们创建了一个表单,让用户输入公告的标题和内容,并使用 `update_option()` 函数将这些数据保存到名为 `site_wide_notice_title` 和 `site_wide_notice_content` 的 WordPress 配置项中。如果用户点击提交按钮,则将表单数据更新到配置项。# s! R3 K/ H* U2 Q( u

6 d8 E  p/ C- h% S- x# |3. 在 WordPress 主题中显示全站公告。您可以通过在 WordPress 主题的 `header.php` 文件中添加代码,将公告内容显示在网站的顶部或其他位置。例如:
+ Q0 R' S: q* X9 e$ L1 v# {% Z: u) J5 k* G4 v3 G( S
   ```: L7 @' ~, h! q( ~3 S: K; U
   <?php  W5 ^% K- u0 U' \+ d8 X6 C6 C7 o0 O, H
   $site_wide_notice_title = get_option('site_wide_notice_title');, ^  ]$ _! v+ I! u% K# n
   $site_wide_notice_content = get_option('site_wide_notice_content');: S  c$ g  F$ O0 Z" M$ O
   if (!empty($site_wide_notice_title) || !empty($site_wide_notice_content)) {
  B6 g8 a, W6 M5 n       echo '<div class="site-wide-notice">';! K6 }2 f9 X: n( g9 v: n2 h* j+ C
       if (!empty($site_wide_notice_title)) {
, c* }" n7 C) g! i7 B( ]! }           echo '<h3>'.$site_wide_notice_title.'</h3>';
6 q# i3 d7 Z6 n. B7 w$ u       }
6 f, l. q( c, n1 S3 l       if (!empty($site_wide_notice_content)) {! ], S/ E. @! R2 A& M$ U" x  h
           echo '<p>'.$site_wide_notice_content.'</p>';
( J0 _' h% R+ j0 _# y+ c) H0 j       }
8 h( u# s  L% z, {       echo '</div>';7 O' |. }: q3 ^) x  d% ~' l
   }( {( f: ], A- d
   ?>
8 b  Y& E! K( i6 L   ```
! I9 r& V3 O. S4 H+ E) T# ~+ M  e. A: a& s/ X  J! r; Q
   在该示例中,我们检查 WordPress 配置项中名为 `site_wide_notice_title` 和 `site_wide_notice_content` 的值是否为空,如果不为空,则在 `header.php` 文件中添加一个名为 `site-wide-notice` 的容器,将公告标题和内容显示在其中。# m8 m! y( b) x* V5 K; v
# P+ D$ |6 i+ Z$ Q) P) y3 G5 _
请注意,本示例仅提供了一个框架,具体实现可能会根据您的需求和实际情况有所不同,您需要根据自己的需要进行修改和调整。同时,为了确保安全性,您还会需要对用户输入的数据进行适当的验证和过滤,例如使用 `sanitize_text_field()` 函数来过滤表单数据。
回复

使用道具 举报

347

主题

565

回帖

3689

积分

管理员

积分
3689
QQ
 楼主| 发表于 2023-5-18 09:26:50 来自手机 | 显示全部楼层
那如果需要发布多条公告,并进行管理,要如何实现?# y  s& E- j$ e% n4 i! j

: M; C& w4 w' a" D您可以创建一个自定义的 WordPress文章类型,例如“公告”,并对其进行自定义化,以实现发布多条公告并进行管理的功能。以下是具体步骤:( J: f) u" h8 K, l+ D9 L" g3 J
$ @9 m9 G- W1 ~
1. 创建一个自定义的文章类型:在你的主题 `functions.php` 文件中,添加以下代码:; }. e) C8 H8 {' e  d

# W, G' A" a5 h2 o```2 Z' S. q8 Y+ j1 k  S
function create_custom_post_type() {" W: _& s# C: H$ m' n2 G* G
    $args = array(; r3 [9 h& N. F: g
        'labels' => array(
% ~' t( s, e( Q  n            'name' => '公告',4 l9 m3 C* F: a% V" C
            'singular_name' => '公告'4 J+ D6 p: H# D5 ~7 L* O& x* a
        ),% j; O% V6 |* V  B, Z
        'public' => true,; L5 a9 z* J4 v5 m& B. U  {" o: Z2 L
        'has_archive' => true,) G$ k% m( G0 v+ J! s# X5 X, F
        'supports' => array('title', 'editor', 'thumbnail', 'excerpt', 'custom-fields', 'revisions'),
- |: |, N- q- u  b& i' C1 T  }" j        'taxonomies' => array('category', 'post_tag'),
1 W$ w5 E7 u! u/ n  o5 g        'menu_icon' => 'dashicons-megaphone',) ^9 i+ u$ k+ @1 ?. w* E5 z
        'menu_position' => 5,% X1 h6 `1 k9 C0 \8 @1 s
        'rewrite' => array('slug' => 'site-wide-notices')0 K9 r/ n7 m2 Y9 f
    );4 B3 J: D0 C: b/ \
    register_post_type('site-wide-notices', $args);! ^% f- ]6 `5 T3 P
}9 l0 r+ C& c! }- u! G" {$ v4 E
add_action('init', 'create_custom_post_type');
1 J1 X1 y( ~: {& }% g```
: k  F% T; k6 F1 M! _8 z) \7 D: I2 {$ E( t+ R. _
在示例中,我们注册了一个名为 "site-wide-notices" 的新的文章类型,并定义了文章类型名称、缩略名、文章类型支持的功能、分类法、管理菜单图标等设置。1 B8 B" D& X* x% u1 I8 r3 ~

5 f+ p2 ~* G! B0 D2. 在你的 WordPress 后台中创建新文章类型“公告”:现在,你就可以在 WordPress 后台中通过导航到“公告”菜单,来添加、编辑或删除公告了。您可以在编辑公告的页面中添加标题、内容、特色图像或其他自定义的元数据字段。4 T# O* t% O% I) l

1 p& x9 z0 E1 u1 \3. 在主题中显示公告:在您的 WordPress 主题文件中添加以下代码,以在您的网站上显示公告:1 \9 p2 v8 X0 G1 t6 X1 g# B

4 _6 J- f/ F, N3 T. A' G```$ Z1 F. F3 ^9 ~; ]
$args = array(  v# P- o, u+ w' {1 l& r
    'posts_per_page' => 3, // 显示的公告数量
2 r2 \  D# a$ g7 i* Z0 C6 f: G' G    'post_type' => 'site-wide-notices', // 公告文章类型
! N- C: N1 \( A% V    'post_status' => 'publish', // 公告状态" N& s: T8 w+ X: b) w1 o* o
    'order' => 'DESC' // 排序方式3 q- y. P8 q% M- p2 u2 E3 g$ q
);; V+ P; x3 S( B" ^/ ^( H6 T

( y1 Q* J' X2 \$notices = new WP_Query($args);
: s, X# Y: z- G7 yif ($notices->have_posts()) :
" Q5 u# h. q9 N    while ($notices->have_posts()) : $notices->the_post(); ?>
" g/ G  [, j, [6 }% o3 s        <div class="notice">
# d, L! G& y9 `1 z+ H1 Q4 A1 e4 h            <h3><?php the_title(); ?></h3>' s) Q& K0 S) M" E& s
            <div class="notice-content"><?php the_content(); ?></div>
$ q( ?- ~  B; U' ]" m5 {* C        </div>7 c: `4 ]7 I/ P: o4 G  o
    <?php endwhile;& A) C# y5 D' `1 t7 D, w) ?$ P
else :
% n& h8 U9 b! p% ^5 b- Y( Y; C    echo "暂无公告";- [" t& M! G& M  K; f! Y: Q
endif;) ?% ]8 u/ H+ O; A4 O) t
wp_reset_query();* l6 p# }4 n0 P- e& W9 `! \3 w: H
```
( Q# l, X' C. M9 z5 u  R' M% V0 T6 Y& M1 I" }: Q% J* P
这段代码将使用 WordPress 的 `WP_Query` 类从公告文章类型中获取最新发布的 3 条公告,并在前端页面中循环遍历并显示公告标题和内容等信息。5 e& N, D! B# Z" @1 W# ]
( u4 J9 }6 l6 I0 f' Z
以上便是实现 Wordpress 后台发布多条全站公告的基本步骤。需要注意的是,自定义文章类型可对应多篇文章,具体根据您的需求进行调整。
回复

使用道具 举报

347

主题

565

回帖

3689

积分

管理员

积分
3689
QQ
 楼主| 发表于 2023-5-18 09:27:55 来自手机 | 显示全部楼层
如果不想修改functions.php,有其他更好的办法吗?
) d$ j& u7 `5 O5 J/ l
$ m1 y9 [' `1 R, i$ E5 V, f如果您不想修改主题 `functions.php` 文件,也可以创建一个自定义插件来添加新的文章类型。
9 U) B, M5 `( d' V' t: l" [& d) b6 l/ L: ^
以下是创建自定义插件的步骤:
  r) r8 M' F" Z5 e$ t3 o: n
+ G6 b/ v" E+ T' V4 H0 @8 U1. 创建新插件:在 WordPress 插件目录中创建一个新的子目录,例如 `site-wide-notices-plugin`,然后在该目录中创建一个新的 PHP 文件,例如 `site-wide-notices-plugin.php`,并在文件头部添加必需的标记,例如:
2 h% Y9 k! f3 C# Z7 G: w3 v& D' `3 g: m6 K  t# Q& S4 }! y
   ```
  C6 E. L1 j; t" i; N   <?php
: O" E/ T+ X" Q9 x( o  i% s   /*
7 i( b& s9 i! l+ N/ J; V) r, Z" m   Plugin Name: Site Wide Notices Plugin) p4 \6 N* P9 D( L
   Description: Adds a new custom post type for site-wide notices.; V  `0 [' E! Y1 }, t
   Version: 1.0
6 g# G  P  H  n) A  `9 p   Author: Your Name  u! y8 g+ ?/ R9 D, S
   Author URI: http://example.com3 M9 ]0 M/ U4 v9 d+ e
   */9 s/ u% d8 T& _" r

# b7 n: X' j% t1 k   // Add plugin code here...5 M. z) B. [$ O4 e; v+ A
   ```, j, c8 x+ L% R9 K: c9 Y% E1 P' n

/ s% i8 [  p2 X( V0 Y3 k+ g" [/ F   在示例中,我们创建了一个名为 `Site Wide Notices Plugin` 的新插件,该插件添加了一个新的自定义文章类型,并指定了版本、作者和作者 URI 等元信息。4 s5 k+ u- N( a' y. s& s4 [! c
* n$ ~; S  e, s" W
2. 在插件中注册新的文章类型:在 PHP 文件中添加以下代码,用于注册一个名为“site-wide-notices”的自定义文章类型:: m/ v$ j% E) p# j

3 H' v- g: j0 M. [, h) n5 U6 ^   ```
5 Z: U  v7 \- h; T   add_action('init', 'create_custom_post_type');4 y% f) r' u+ p7 {
   function create_custom_post_type() {' i+ t( y& W7 V4 u
      $labels = array(' L0 x% a" C5 v
          'name' => 'Site Wide Notices',+ N5 E2 |  w0 C$ f$ S9 l
          'singular_name' => 'Site Wide Notice',
; U9 c8 f4 |4 j# d. G: l          'add_new' => 'Add New',5 u0 L" C9 k( Q4 E# u& s) |
          'add_new_item' => 'Add New Site Wide Notice',4 S. k. D7 H/ d' A, X- m% X
          'edit_item' => 'Edit Site Wide Notice',
6 p( E3 N- V! i4 W          'new_item' => 'New Site Wide Notice',. q2 X) B" G7 ~9 ?& d$ B
          'view_item' => 'View Site Wide Notice',
/ |- t; W8 z3 q) t          'search_items' => 'Search Site Wide Notices',' k- m& Z+ u$ I+ o  {. I
          'not_found' => 'No site-wide notices found',
/ k# k& j" p# x+ I$ m& v          'not_found_in_trash' => 'No site-wide notices found in trash'- u: S' D5 X* I
      );
+ y, v7 W( `$ [1 i5 x) @3 ~* ]5 t+ W' X5 h/ N' U& r' v3 |0 V8 ^
      $args = array(
- o# D* F' }" U+ d- o0 R          'labels' => $labels,
$ a/ j' r9 k" C3 X          'public' => true,: J4 v8 _1 r6 m$ |# }
          'has_archive' => true,  b' ]( `. _) ^* a: u' V* v
          'supports' => array('title', 'editor', 'thumbnail', 'excerpt', 'custom-fields', 'revisions'),
* F$ }) Q4 l  Y$ ^          'taxonomies' => array('category', 'post_tag'),
8 l# y. \$ X. n% J4 r          'menu_icon' => 'dashicons-megaphone',( n0 a; S' S3 v( R
          'menu_position' => 5,+ ^  S, X- I. T
          'rewrite' => array('slug' => 'site-wide-notices')$ d4 T) i6 {, ^1 j/ S9 I
      );
7 |6 D0 e( F" a  q# r) n7 h5 g% Q9 v. C9 U
      register_post_type('site-wide-notices', $args);& P! D6 t; n- o# B
   }3 a$ \7 u& v) m1 b6 M1 p
   ```
' ?+ a4 o& t# x
) h+ w3 K8 B6 }9 U' Y   在示例中,我们使用 `register_post_type()` 函数注册一个新的文章类型,并定义了该文章类型的名称、标签和其他设置。' Q4 `: u2 ?. e9 K( {( Y4 Q7 _
0 J" u9 |3 f0 r7 w; q
3. 在后台中添加公告编辑页面:您可以使用 `add_meta_box()` 函数在后台中添加公告编辑页面,并自定义字段和元数据,例如:" ]9 H2 F  i$ g* V

0 g3 a# p1 N3 A/ R0 Q  Z' V+ b# O   ```+ M' ]9 O& C; S
   add_action('add_meta_boxes', 'add_site_wide_notices_boxes');0 F* z) k& `$ \4 a& E" {
   function add_site_wide_notices_boxes() {0 x- E' R% B5 k7 `1 r
      add_meta_box('notice-details', 'Notice Details', 'notice_details_meta_box', 'site-wide-notices', 'normal', 'high');
1 `/ g. M8 ^) v   }7 {, q2 Z2 G; e" n, Y* y
1 {: i' ]# j+ w' M: {4 w0 ~2 n
   function notice_details_meta_box($post) {
: g9 V) A* ~* H9 t: j& W      wp_nonce_field(basename(__FILE__), 'notices_nonce');/ e' @4 ^/ P6 i6 Q* @8 ?
      $notice_title = get_post_meta($post->ID, 'notice_title', true);& I* e' t4 [9 `6 k7 x: \1 G
      $notice_content = get_post_meta($post->ID, 'notice_content', true);
; r6 R3 {0 U# ]" H3 f      ?>. G2 U7 t$ x6 h% K- z2 w4 q
      <p>
" j' a0 }# w' h          <label for="notice-title">Notice Title</label><br>! |. d; `* l  e- _) O& }1 m$ X2 e
          <input type="text" id="notice-title" name="notice_title" style="width: 100%;" value="<?php echo $notice_title; ?>">4 A6 [& V& O* C2 ]7 X! Z8 p! _
      </p>
6 S. C  ^: I0 l# `6 ?8 b: K, G' j) ?      <p>
# s1 Y  ?- e8 O9 m9 C/ [          <label for="notice-content">Notice Content</label><br>
  w' v: h! O) i4 m3 t4 G          <?php wp_editor($notice_content, 'notice-content', array('textarea_rows' => 10)); ?>
+ o. B+ E' r4 N& _: O, f9 p8 ]2 }      </p>  ~* T+ R4 ~% T  {( ]. U( n
      <?php
8 _7 P( j$ f* m/ i   }* z2 a5 j  f7 u" `; |) S
+ c# o: o5 G3 u. b# ]7 s
   add_action('save_post', 'save_site_wide_notice_meta_box');) F# P! n9 ?) f1 g  m6 J: p
   function save_site_wide_notice_meta_box($post_id) {
/ S8 J) K8 K  d& T  D      if (!isset($_POST['notices_nonce']) || !wp_verify_nonce($_POST['notices_nonce'], basename(__FILE__)))
( E- U6 S- A. t0 S         return;
- v: U, S, q) O% x% b      if (defined('DOING_AUTOSAVE') && DOING_AUTOSAVE)
  H/ I0 T% X6 w! g) g         return;
2 u/ e8 W6 t$ I9 t! g
+ c% v8 V3 y& i8 _" L      if (isset($_POST['notice_title'])) {, y4 G9 Z) q- r, `' i7 D0 ^
          update_post_meta($post_id, 'notice_title', sanitize_text_field($_POST['notice_title']));4 C6 j6 m) T0 Q( w% K( w0 X' Y3 b
      }; G6 R+ L2 L! @" H8 \$ X$ q
      if (isset($_POST['notice_content'])) {) u. \) `9 u# V' N% E& R
          update_post_meta($post_id, 'notice_content', wp_kses_post($_POST['notice_content']));# v3 I" ]& |' c1 ]& m( L5 m
      }1 G6 `/ g3 A7 f- T5 b- Q
   }
. X; n7 L1 j% ~  y   ```
: [0 T0 K% d- O3 a' o7 U9 _% l* r7 C  i) z6 ~
   在示例中,我们使用 `add_meta_box()` 函数添加了一个名为 `notice-details` 的元框,用于在编辑页面上显示自定义字段和元数据。在 `notice-details_meta_box()` 函数中,我们使用 `wp_editor()` 函数添加了一个可视化编辑器,用于编辑公告内容。在 `save_site_wide_notice_meta_box()` 函数中,我们使用 `update_post_meta()` 函数将公告标题和内容保存到 WordPress 数据库中。( R8 h$ r6 g- Y7 o$ F

% M. E. H5 l# ?. m% m' w, g4. 在前端页面中显示公告:在 WordPress 主题文件中添加以下代码,以在您的网站上显示公告:
0 F1 Q2 [3 u: A* V5 ]; V$ S/ N* f$ N9 s& x+ E
   ```
% p3 K! |: N% Z) U7 V7 O! q   $args = array(
- L8 h9 g) \- f! t2 T! q# r      'post_type' => 'site-wide-notices',0 g9 R3 z  C( v; u- t9 ?6 _+ \
      'posts_per_page' => 3,
- m6 f. S+ U# ?7 j( B9 w  L1 D      'order' => 'DESC'," J( `+ q$ y9 B/ R6 Z) b. \
      'orderby' => 'date'
, a" F) ?) j& X; S4 s   );
/ q$ L# d& g0 X   $query = new WP_Query($args);0 P0 q. u4 z/ a5 m3 e  k8 w
   if ($query->have_posts()) :  `# p* ^# f! `# y- M; b! X1 A
      while ($query->have_posts()) : $query->the_post(); ?>9 y1 K& Q  U* T4 K: O) h+ D
          <div class="notice">
& b: z8 q  T. V  e6 i              <h3><?php the_title(); ?></h3>- i! y# b. [' O$ V; e4 H1 P
              <div class="notice-content"><?php the_content(); ?></div>
: s* y7 J; \' _( n7 {5 U          </div>4 K- k/ E0 U% g" K$ z0 a6 r. i- L
      <?php endwhile;  V. Q$ E" Y  ]" h5 ~
      wp_reset_postdata();" t: n4 e: J$ F) m
   endif;
+ V+ k3 u2 E( ^   ```' S: V7 X: D* Z! {
5 d& L: ?' E0 a4 ]; w9 R5 S
   在示例中,我们使用 `WP_Query` 类从 `site-wide-notices` 文章类型中获取最近发布的 3 条公告,并在前端页面中循环遍历并显示标题和内容等信息。
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2026-2-21 19:10 , Processed in 0.013256 second(s), 2 queries , Redis On.

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

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