如何在后台隐藏WordPress活动和动态版块儿

[复制链接]  62查看
易西 发表于 2026-5-31 21:56:20 | 显示全部楼层 |阅读模式
如何在后台隐藏WordPress活动和动态版块儿% [6 @: L1 G, h6 m! D" R
 楼主| 易西 发表于 2026-5-31 21:56:43 | 显示全部楼层
在WordPress后台隐藏“活动”和“动态”(通常指“WordPress新闻”或“概览”中的动态模块)可以通过代码实现。这不仅能净化后台界面,还能稍微提升加载速度(因为不再请求外部RSS源)。
* n" r4 \/ ~1 r- L5 N6 v( E0 e% Q5 k* z
以下是几种方法,推荐‌方法一‌,因为它最干净且无需插件。, o# C. W$ y5 _) o* Z2 g

! M' `3 H8 ~$ [, f6 j# P: G( _方法一:使用代码移除(推荐)& t, O- B* v/ s$ V) v
将以下代码添加到你的主题 functions.php 文件或自定义插件中。这段代码会针对‌非管理员‌用户隐藏这些模块,如果你希望所有用户(包括管理员)都隐藏,可以去掉权限判断。" |3 t) p, Y' p

* d6 h# `$ S: Sphp
) ?& J( s8 v" t' `/**. B1 \# V3 r5 I% a
* 隐藏后台仪表盘中的特定模块
$ Q1 `; A3 T/ _0 [ */
+ H, B( T* j. d3 f2 E) Y" I4 Gadd_action('wp_dashboard_setup', 'remove_unnecessary_dashboard_widgets');/ b: a7 M5 \' V0 }: J- R

/ ]+ U. v  `/ V! u7 ~function remove_unnecessary_dashboard_widgets() {
) |  F; ]7 s2 d+ ?1 ^/ h    global $wp_meta_boxes;
% w8 q8 a5 A& m1 w# k" W1 V# q. O6 l
    // 1. 隐藏“活动”模块 (Activity)
1 `8 p$ F! o; O5 z    // 注意:在较新版本WP中,活动模块可能合并到了“概览”中,或者ID为 'dashboard_activity'' ?9 r9 m+ N$ H0 r3 |$ O
    unset($wp_meta_boxes['dashboard']['normal']['core']['dashboard_activity']);6 z! y2 k" S" g1 u2 [: ~
   
, }, u+ o) W% H& v    // 2. 隐藏“WordPress新闻”模块 (WordPress News / Dynamic)
0 m; z* i. B; L. Q1 Z, y    unset($wp_meta_boxes['dashboard']['side']['core']['dashboard_primary']);1 Q* L/ _) o2 M; O
    ( U6 J" h# o9 r/ i, |6 D2 k
    // 3. (可选) 隐藏“概览”中的快速草稿等,只保留核心状态. C  h  C* _7 O4 X
    // unset($wp_meta_boxes['dashboard']['normal']['core']['dashboard_right_now']);+ I& }8 d( P# y: H8 g, n
   
% v( O6 j$ o) K/ \* l    // 4. (可选) 隐藏“站点健康状态”
/ G' _% o& l- p    // unset($wp_meta_boxes['dashboard']['normal']['core']['dashboard_site_health']);) U" B7 ?# X: x' G* B  {4 M
}
: y6 c* _& ~. Z6 ~2 m$ L/ P方法二:仅对非管理员隐藏(更人性化)
# N+ |: v6 e3 J* x4 ~如果你希望管理员仍然能看到这些信息以便监控网站状态,但普通作者/编辑看不到,可以使用以下代码:# a+ [4 m5 v& W: P' ]
& o- m4 S: ]9 ~% h7 J/ H
php
6 `  W- N; u& @: D; Z+ h7 Wadd_action('wp_dashboard_setup', 'remove_dashboard_widgets_for_non_admins');
/ ~& @# r9 m1 t4 w" N. w! ^" D5 r' h
- g5 l6 k; E( `. Q# v5 Afunction remove_dashboard_widgets_for_non_admins() {
& F* Q! x# M' |+ A5 v- t6 E    // 如果是管理员,则不执行隐藏操作
# f5 F5 A2 K: s% _* C4 @    if (current_user_can('administrator')) {
5 t' R; f4 A& T# v        return;/ w) A, d% j8 r9 x5 P# G
    }
. A1 e/ z, C5 u$ N& x0 v7 V- m! }' w3 r
    global $wp_meta_boxes;6 z) @6 U, }! S% \3 C
    3 M6 a* l( N( @+ j
    // 隐藏活动
1 H6 T) z6 T2 \; `+ l' N$ c& _    unset($wp_meta_boxes['dashboard']['normal']['core']['dashboard_activity']);
  i; V# C* b$ p+ T$ J   
" J0 z7 r; w, c; \    // 隐藏WordPress新闻/动态8 u: o* o- }! ~
    unset($wp_meta_boxes['dashboard']['side']['core']['dashboard_primary']);
' D/ C2 S6 f2 d9 H# S3 O/ \- n    / ^. }7 D: J/ A8 k
    // 隐藏“快速草稿”3 L  f$ ~2 Q/ U/ M& X
    unset($wp_meta_boxes['dashboard']['side']['core']['dashboard_quick_press']);
# B+ L; Y' Z, ]+ H+ `$ Q/ k   
5 }; `6 Z" P2 f2 M. k    // 隐藏“引入链接”" M8 K2 ^4 T1 p' e" r4 x! ]; V
    unset($wp_meta_boxes['dashboard']['normal']['core']['dashboard_incoming_links']);9 s4 J% D/ L) ^
}
6 j# a' @8 m; B  G- V方法三:使用CSS隐藏(简单粗暴,但不推荐)
' M% T0 s8 _0 w1 C  T; b如果你不想修改PHP文件,可以通过后台的“自定义CSS”或插件注入CSS来隐藏。但这只是视觉隐藏,后台仍然会加载数据。
& K$ t* ?6 p" b8 j0 x( z# X
( v: |, g( M6 ~6 Icss
' B; [! E, k( g7 K1 J% e/* 隐藏活动模块 */1 ~: ]. u' n9 n; E& G* y# p3 S
#dashboard_activity {, e% o2 d3 ~" v. I# _* h1 M. J, f
    display: none !important;
, P" o" z7 v) T' T/ G% Y}
) S8 R6 D2 p0 z: a3 l* ~. R% l/ k8 D, Q' q: k/ D/ z5 z; v! U
/* 隐藏WordPress新闻模块 */: A# z& h; k# z  U$ Q, ?, I
#dashboard_primary {  S) q. c0 d# e8 b% p
    display: none !important;
& P3 s1 y2 d0 e% R* i}
8 }0 t& ]5 R8 `" k/ z+ k常见模块ID对照表
* U% U/ f  F* s8 f如果你想隐藏其他模块,可以参考以下ID:
' J8 @; m% I3 U. @
; m8 X  G- r+ I6 t& ~8 _表格2 ]. C" W  m6 Y6 m6 G/ i
模块名称        模块ID (用于 unset)        位置
; n$ i+ Q" Z$ `1 _, U‌活动 (Activity)‌        dashboard_activity        normal/core
1 }- m% F$ _" d& I, X% `‌WordPress新闻 (News)‌        dashboard_primary        side/core
; {6 l6 U2 {! \& ^# D) t‌概览 (At a Glance)‌        dashboard_right_now        normal/core4 x# z% H& |- _: [+ o! _; F: z
‌快速草稿 (Quick Draft)‌        dashboard_quick_press        side/core+ V, V" ]4 B$ ?! f3 W. q
‌站点健康 (Site Health)‌        dashboard_site_health        normal/core
# g( Q$ T& M0 P. r. a. U‌欢迎面板 (Welcome)‌        dashboard_welcome_panel        (特殊处理)
. P9 l0 }- P$ C6 c, d- a+ ~补充:如何彻底禁用“WordPress新闻”的外部请求?
3 K6 x& s+ e4 A6 |0 m除了隐藏模块,WordPress默认还会在后台尝试连接 wordpress.org 获取新闻。如果你希望彻底禁止这个外部请求以提升后台速度,可以在 wp-config.php 中添加:
/ Q# z; _* f, w! P( E( I( G. F' r7 Z; i
php
9 m( z" b. J  p+ g1 }' Cdefine('WP_DISABLE_NEWS_WIDGET', true);- T. ~5 k% O: ]- N5 p
(注:此常量在某些旧版本WP中可能无效,主要依靠上面的 unset 方法)* b( ]& v2 }* C- F; ^3 E% l

" {% S1 v" K7 |. u6 a6 A建议3 a7 }. K5 {; z, r8 x! ^+ f
对于你的‌溯源插件‌场景,建议使用‌方法二‌。因为普通用户(商家/作者)不需要关心WordPress官方的动态和活动,他们只需要关注自己的‌溯源服务状态‌(你之前添加的面板)。这样可以让他们的后台更专注、更清爽。
7 _+ r4 g+ O) ]/ ]. G) Y- s( Z  }; ?6 q- T
参考
[发帖际遇]: 易西 发帖时在路边捡到 5 金钱,偷偷放进了口袋. 幸运榜 / 衰神榜
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

邮箱|首页|小黑屋|吾侪 ( 蜀ICP备2020029307号-4 )

GMT+8, 2026-8-28 15:02 , Processed in 0.066865 second(s), 23 queries .

Powered by Discuz! X3.5

Copyright © , 吾侪网

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