WordPress后台开发的几个小CASE
我们使用wordpress程序做网站之后,wordpress后台有很多我们不需要的内容,例如:WordPress开发博客"、"其他WordPress新闻","日历"(WP_Widget_Calendar)、"搜索"(WP_Widget_Search)、"特别近评论"(WP_Widget_Recent_Comments),版本升级(相关视频:wordpress如何在线版本升级)等一些信息,都是我们自己做网站用不到的内容,我们可以进行wordpress后台改版来修改wordpress后台内容屏蔽掉。
去除wordpress后台Widget
wordpress后台就是我们登陆后看到的那个界面,包括了概况、近期评论、引入链接等Widget的界面,去除所有Widget的代码如下。注意这些代码都是放置在wordpress模板的函数functions.php里面的。(相关教程:wordpress模板制作教程)
/**
* Remove dashboard widgets
*/
function remove_dashboard_widgets(){
global $wp_meta_boxes;
unset($wp_meta_boxes['dashboard']['normal']['core']['dashboard_right_now']);
unset($wp_meta_boxes['dashboard']['normal']['core']['dashboard_recent_comments']);
unset($wp_meta_boxes['dashboard']['normal']['core']['dashboard_incoming_links']);
unset($wp_meta_boxes['dashboard']['normal']['core']['dashboard_plugins']);
unset($wp_meta_boxes['dashboard']['side']['core']['dashboard_quick_press']);
unset($wp_meta_boxes['dashboard']['side']['core']['dashboard_recent_drafts']);
unset($wp_meta_boxes['dashboard']['side']['core']['dashboard_primary']);
unset($wp_meta_boxes['dashboard']['side']['core']['dashboard_secondary']);
}
add_action('wp_dashboard_setup', 'remove_dashboard_widgets');
endif;
如果希望保留其中的某些Widget,只要注释掉或删除到代码中的某些unset就可以了。
增加wordpress后台Widget
去除了原有的,那么自然也就想到加入自己的Widget来显得更加个性化,比如增加一个欢迎提示或是常用任务等。代码如下;
/**
* Add dashboard widgets
*/
function welcome_dashboard_widget_function() {
// Display whatever it is you want to show
echo "<ul><li><a href='post-new.php'>添加新文章</a></li><li><a href='edit.php'>修改文章</a></li></ul>";
}
// Create the function use in the action hook
function add_dashboard_widgets() {
wp_add_dashboard_widget('welcome_dashboard_widget', '常用任务', 'welcome_dashboard_widget_function');
}
// Hook into the 'wp_dashboard_setup' action to register our other functions
add_action('wp_dashboard_setup', 'add_dashboard_widgets' );
endif;
修改wordpress后台常用任务下拉菜单
在wordpress后台管理界面的右上角有一个常用任务下拉菜单,但其中不是所有项都是我们常用到的,甚至是根本不会用到的,那么就来把它们去掉吧,当然另外可以加上自己常用的菜单。
代码如下:
/**
* modify favorite actions
*/
function custom_favorite_actions($actions) {
// remove menus
unset($actions['edit-comments.php']);
unset($actions['media-new.php']);
// add a menu link to profile.php
$actions['profile.php'] = array('My Profile', "edit_posts");
return $actions;
}
add_filter('favorite_actions', 'custom_favorite_actions');
endif;
至于删除$actions变量中的哪一项,查看一下这个变量值就知道了。
(
[edit.php?post_type=post] => Array
(
[0] => Posts
[1] => edit_posts
) [post-new.php] => Array
(
[0] => New Post
[1] => edit_posts
)
[edit.php?post_status=draft] => Array
(
[0] => Drafts
[1] => edit_posts
)
[post-new.php?post_type=page] => Array
(
[0] => New Page
[1] => edit_pages
)
[media-new.php] => Array
(
[0] => Upload
[1] => upload_files
)
[edit-comments.php] => Array
(
[0] => Comments
[1] => moderate_comments
)
)
修改wordpress后台左侧的导航功能菜单
wordpress后台某些功能根本用不到的话,不如直接在网站导航菜单中隐藏掉,代码如下:
/**
* Remove dashboard menus
*/
function remove_menus () {
global $menu;
$restricted = array(__('Dashboard'), __('Media'), __('Links'), __('Pages'), __('Appearance'), __('Tools'), __('Users'), __('Settings'), __('Comments'), __('Plugins'));
end ($menu);
while (prev($menu)){
$value = explode(' ',$menu[key($menu)][0]);
if(in_array($value[0] != NULL?$value[0]:"" , $restricted)){unset($menu[key($menu)]);}
}
}
add_action('admin_menu', 'remove_menus');
endif;
以上代码隐藏了所有的功能菜单,各位可以根据自己的实际需要将需要显示出来的在上面的代码中删除即可。
修改wordpress后台页脚提示信息
代码如下:
/**
* modify dashboard footer
*/
function modify_footer_admin () {
echo 'Modified by Maple Nan';
}
add_filter('admin_footer_text', 'modify_footer_admin');
endif;
隐藏wordpress后台自动升级提示
代码如下:
* hide wordpress update
*/
add_filter( 'pre_site_transient_update_core', create_function( '$a', "return null;" ) );
通过以上几步的操作,我们就可以打造出一个符合建站要求的wordpress后台界面了。注意这些代码都是放置在wordpress的模板函数functions.php里面的。更多对WORDPRESS程序的修改,推荐参考wordpress程序开发手册。
讲得很好,希望可以对后台的理解有帮助。谢谢!