定制WordPress后台

2019-03-18 05:47:42来源: WordPress啦 阅读 ()

新老客户大回馈,云服务器低至5折

作为一个功能强大的发布平台,WordPress备有自带的评论功能、用于创新的GUI、文章和页面编辑功能以及各种方便的内置工具,包括“导入”功能、用户角色与权限等等。

但这么多功能,有多少是我们常用的?虽然WordPress已经相当简单易用,对用户也相当友好,但通过定制WordPress的管理后台,我们可以让WordPress更加简单,更易于管理。

WordPress内置的hooks(包括“filter”和“action”)为我们定制WordPress后台提供了完美的解决方案。通过“勾入”而非修改WordPress的核心程序,可以在不影响安装文件完整性的情况下安全地作改动。

下面介绍的代码将全部在functions.php文件里完成。

禁用控制台widget

登入WordPress后台之后,最先看到的就是WordPress的Dashboard,一个类似消息中心的地方,由“WordPress开发博客”、“其他WordPress新闻”等widget组成。对一般用户来说,这里提供的信息未必是自己经常需要看到的。

我们可以用wp_dashboard_setup来移除这些widget。在执行过程中,我们会用到unset()函数来移除不需要的widget。我们所需要做的就是以wp_dashboard_setup为第一个参数、以remove_dashboard_widgets作为第二个参数调用add_action()。

function remove_dashboard_widgets(){
  global$wp_meta_boxes;
  unset($wp_meta_boxes['dashboard']['normal']['core']['dashboard_plugins']);
  unset($wp_meta_boxes['dashboard']['normal']['core']['dashboard_recent_comments']);
  unset($wp_meta_boxes['dashboard']['side']['core']['dashboard_primary']);
  unset($wp_meta_boxes['dashboard']['normal']['core']['dashboard_incoming_links']);
  unset($wp_meta_boxes['dashboard']['normal']['core']['dashboard_right_now']);
  unset($wp_meta_boxes['dashboard']['side']['core']['dashboard_secondary']); 
}

add_action('wp_dashboard_setup', 'remove_dashboard_widgets');

效果如下:

禁用标准widget

WordPress默认带有12个标准widget 。这其中包括“日历”(WP_Widget_Calendar)、“搜索”(WP_Widget_Search)、“最近评论”(WP_Widget_Recent_Comments)等。

如果你的博客不需要某个widget,就可以禁用它,比如日历widget。或者你可能采用第三方搜索功能,这时你就可以禁用WordPress的默认搜索。

这时我们要用到的是一个名为widgets_init的action。我们把这里需要用到的函数命名为remove_some_wp_widgets。同时需要用到的WordPress函数是unregister_widget(),以将要禁用的widget的名字作为参数。

function remove_some_wp_widgets(){
  unregister_widget('WP_Widget_Calendar');
  unregister_widget('WP_Widget_Search');
  unregister_widget('WP_Widget_Recent_Comments');
}

add_action('widgets_init',remove_some_wp_widgets', 1);

代码中的第三个参数是“1”,表示所用的action的优先级。默认值为10,数值越低,表示优先级越高。这里为1表示,无论该函数在functions.php的任何位置,它都会是最先被调用的函数之一。

定制常用下拉菜单

WordPress后台最上方有一个可以快速进入某些功能的下拉式菜单,WordPress在这个下拉式菜单里默认列出的选项包括“编辑新文章”、“评论”、“新页面”等。

通过调用特定filter并取消相应PHP数组中的链接,我们可以快速删除这个下拉菜单的某个选项(当然也可以添加新选项)。

下面以删除“评论”为例:

function custom_favorite_actions($actions) {
  unset($actions['edit-comments.php']);
  return $actions;
}

add_filter('favorite_actions', 'custom_favorite_actions');

修改后台页脚信息

WordPress后台的footer含有指向WordPress官方网站和官方文档的链接。我们也可以稍作改动。

function modify_footer_admin () {
  echo 'Created by <a href="http://example.com">Filip</a>.';
  echo 'Powered by<a href="http://WordPress.org">WordPress</a>.';
}

add_filter('admin_footer_text', 'modify_footer_admin');

隐藏升级提示

出于安全方面的考虑,我们不建议你隐藏后台的升级提醒,因为有些版本升级是针对安全漏洞的更新。

当然如果你希望删除或修改升级提示,你只要在functions.php里加上下面的代码:

add_filter( 'pre_site_transient_update_core', create_function( '$a', "return null;" ) );

经过这些改动,你会发现后台清爽了很多,并且都是在不用修改WordPress核心文件的情况下哦。

VIA:sixrevisions  编译:WordPress啦

标签:

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有

上一篇:从今天起做个幸福的站长 我的六大顿悟

下一篇:卢松松:如何正确进行数据分析