添加删除自定义WordPress后台仪表盘模块

我们在做 wordpress 主题开发的时候,如果想把 wordpress 做个供多用户使用的网站,特别是准备用来做个企业网站,就会发现后台仪表盘的很多模块是多余的,而且每次进入后台这些模块都会被加载,会拖慢后台打开速度。为了后台的整洁,也为了迅速加载,就有必要屏蔽一些你不用的模块。那就是将下面的代码添加到当前主题的 functions.php 文件中。

1、 屏蔽 WordPress 后台仪表盘的文章活动、快速草稿、概览、WordPress 活动及新闻和站点健康状态等模块 :

  1. function example_remove_dashboard_widgets() {
  2. // Globalize the metaboxes array, this holds all the widgets for wp-admin
  3. global $wp_meta_boxes;
  4. // 以下这一行代码将屏蔽 "快速草稿" 模块
  5. unset($wp_meta_boxes['dashboard']['side']['core']['dashboard_quick_press']);
  6. // 以下这一行代码将屏蔽 "引入链接" 模块
  7. unset($wp_meta_boxes['dashboard']['normal']['core']['dashboard_incoming_links']);
  8. // 以下这一行代码将屏蔽 "插件" 模块
  9. unset($wp_meta_boxes['dashboard']['normal']['core']['dashboard_plugins']);
  10. // 以下这一行代码将屏蔽 "近期评论" 模块
  11. unset($wp_meta_boxes['dashboard']['normal']['core']['dashboard_recent_comments']);
  12. // 以下这一行代码将屏蔽 "近期草稿" 模块
  13. unset($wp_meta_boxes['dashboard']['side']['core']['dashboard_recent_drafts']);
  14. // 以下这一行代码将屏蔽 "WordPress活动及新闻" 模块
  15. unset($wp_meta_boxes['dashboard']['side']['core']['dashboard_primary']);
  16. // 以下这一行代码将屏蔽 "概况" 模块
  17. unset($wp_meta_boxes['dashboard']['normal']['core']['dashboard_right_now']);
  18. // 以下这一行代码将屏蔽 "站点健康状态" 模块
  19. unset($wp_meta_boxes['dashboard']['normal']['core']['dashboard_site_health']);
  20. }
  21. add_action('wp_dashboard_setup', 'example_remove_dashboard_widgets' );
  22. // 以下这一行代码将屏蔽 "welcome" 模块
  23. remove_action('welcome_panel', 'wp_welcome_panel');

2、屏蔽主菜单项:

  1. function remove_menus() {
  2.     global $menu;
  3.     $restricted = array(
  4.         __('Dashboard'),
  5.         __('Posts'),
  6.         __('Media'),
  7.         __('Links'),
  8.         __('Pages'),
  9.         __('Appearance'),
  10.         __('APP'),
  11.         __('Tools'),
  12.         __('Users'),
  13.         __('Settings'),
  14.         __('Comments'),
  15.         __('Plugins')
  16.     );
  17.     end ($menu);
  18.     while (prev($menu)){
  19.         $value = explode(' ',$menu[key($menu)][0]);
  20.         if(strpos($value[0], '<') === FALSE) {
  21.             if(in_array($value[0] != NULL ? $value[0]:"" , $restricted)){
  22.                 unset($menu[key($menu)]);
  23.             }
  24.         }else {
  25.         $value2 = explode('<', $value[0]);
  26.             if(in_array($value2[0] != NULL ? $value2[0]:"" , $restricted)){
  27.                 unset($menu[key($menu)]);
  28.             }
  29.         }
  30.     }
  31. }
  32. if (is_admin()){
  33.     // 屏蔽左侧菜单
  34.     add_action('admin_menu', 'remove_menus');
  35. }

3、屏蔽主菜单下的子菜单项:

  1. function remove_submenu() {
  2.     // 屏蔽”设置”下面的子菜单”隐私”
  3.     remove_submenu_page('options-general.php', 'options-privacy.php');
  4.     // 屏蔽”外观”下面的子菜单”编辑”
  5.     remove_submenu_page('themes.php', 'theme-editor.php');
  6. }
  7. if (is_admin()){
  8.     //屏蔽子菜单
  9.     add_action('admin_init','remove_submenu');
  10. }

4、屏蔽后台顶部 LOGO 和页脚版权信息:

  1. //屏蔽顶部LOGO
  2.     function annointed_admin_bar_remove() {
  3.             global $wp_admin_bar;
  4.             /* Remove their stuff */
  5.             $wp_admin_bar->remove_menu('wp-logo');
  6.     }
  7.     add_action('wp_before_admin_bar_render', 'annointed_admin_bar_remove', 0);
  8. //屏蔽页脚版权
  9.     function change_footer_admin () {return '';}
  10.     add_filter('admin_footer_text', 'change_footer_admin', 9999);
  11.     function change_footer_version() {return '';}
  12.     add_filter( 'update_footer', 'change_footer_version', 9999);

我们在做 wordpress 主题开发的时候,为了更加的让使用者熟悉自己做的 wordpress 主题,都会在主题后台做详细的描述,有的时候会想到在仪表盘上也加些教程链接和说明更加好,那么今天就教大家如何给 wordpress 仪表盘添加自定义信息模块,下面就直接说教程了,打开你们 wordpress 主题的 functions.php 文件,将一下代码加入:

  1. if ( ! function_exists( 'add_dashboard_widgets' ) ) :
  2. function welcome_dashboard_widget_function() {
  3. echo "<ul><li>这里填第一段内容;</li><li>这里填第二段内容;</ul>";
  4. }
  5. function add_dashboard_widgets() {wp_add_dashboard_widget
  6. ('welcome_dashboard_widget', '这里替换成面板标题', 'welcome_dashboard_widget_function');
  7. }
  8. add_action('wp_dashboard_setup', 'add_dashboard_widgets' );
  9. endif;

或者

  1. function custom_dashboard_help() {
  2. echo '这里填使用说明的内容,可填写HTML代码';
  3. }
  4. function example_add_dashboard_widgets() {
  5. wp_add_dashboard_widget('custom_help_widget', '这里替换成面板标题', 'custom_dashboard_help');
  6. }
  7. add_action('wp_dashboard_setup', 'example_add_dashboard_widgets' );

修改以上代码为自己的内容,再去仪表盘看看,是否多出了自定义的信息模块出现了!

原创文章,作者:DavidWu,如若转载,请注明出处:https://www.davidwu.net/archives/76613

WordPress安全防护插件
服务项目 服务内容 收费标准(元)
开发定制 WordPress主题/插件开发定制 (以最终需求为准)
主题/插件汉化 汉化团队WordPress主题/插件,翻译率95% (以标的主题/插件的句子数量为准)
服务器环境配置 基于您现有服务器,搭建配置网站运行环境,结合我们多年来实战经验,可完美支持WordPress等PHP程序运行,并配置伪静态规则、优化目录权限等问题。服务器我们强烈推荐使用Linux系统。 100元/次
网站托管 若贵站目前尚无技术人员,无法完成服务器环境配置,可选择我们的网站托管服务,直接交付正常运行的WordPress站点,并且无需担心服务器的后续维护工作,一切都由我们来帮您完成。 标配套餐:1000元/年/站点 高配套餐:联系客服获取
网站加速优化 从服务器后端配置优化到WordPress数据库缓存、前端页面缓存、JS和CSS压缩合并,全方位优化网站加载速度,实现秒开。(此服务仅针对(云)服务器/VPS) 500元/次(仅站内优化200元/次)
主题配置 本站所有主题均支持,可快速实现,若有任何问题可以咨询客服解决,若您希望我们提供配置服务,可选购此服务。 英文主题安装 60元/次 汉化主题安装 30元/次
HTTPS配置 HTTPS已经不断普及,并且有着更高的安全性以及SEO上的优待。该服务收取的为服务费,SSL证书产生的费用请自行承担。 100元/次
网站搬家 迁移网站所有文件和数据库信息、网站相关配置的调整、以及迁移中的疑难问题故障排除。 标准收费:500元/次 若网站数据量大,需协商
网站运维 提供整站的运维服务,保证网站正常运行。包含:网站故障定位及排除、网站数据备份和恢复、网站攻击及木马等问题的处理等 标准收费:2000元/年 IP 5000以上需协商

发表评论

电子邮件地址不会被公开。 必填项已用*标注