WordPress后台控制面板是每位博主几乎每天都要光临的地方。对我来说,博客后台就好像自己的家一样,希望每次进门的第一印象就是整洁,舒服!不久前,曾经折腾过这一篇《如何去除Thematic后台无用的小工具》,感觉很有用,到目前为止自己一直关注着博客后台的布局,需要的时候还是要做出更改,对自己没有用的功能选项都要坚决将其干掉,以适应个性要求。这一篇也是做个记录,我要将自己觉得没多大意思的WordPress外部消息如插件和新闻等这些小区块去掉,换上自己想要的。
虽然这些小区块本身就提供了显示或隐藏的选项,使用起来也很方便,但我的本意是要将它们去掉,那样干脆一些!这里我要干掉的几个选项为: “插件” ,“WordPress China 博客”和“其它 WordPress 相关新闻”;我想添加的一个区块选项为:“来自Chenchunlinblog的最新消息”。
未“干掉”选项前的截图:

“干掉”选项后自定义的截图:

需要用到的function功能代码不多,我将它们分为两部份(需要将它们都添加到当前主题的functions.php文件中),附带一些简要说明。
第一部份,“干掉”选项的代码:
add_action('wp_dashboard_setup', 'my_dashboard_widgets');
function my_dashboard_widgets() {
global $wp_meta_boxes;
// 执行删除小区块的动作
//var_dump( $wp_meta_boxes['dashboard'] );
// use to get all the widget IDs
unset(
$wp_meta_boxes['dashboard']['normal']['core']['dashboard_plugins'],
$wp_meta_boxes['dashboard']['side']['core']['dashboard_secondary'],
$wp_meta_boxes['dashboard']['side']['core']['dashboard_primary']);
以上代码中新建了一条function函数my_dashboard_widgets() ;另外,要删除的选项对照表如下:
‘dashboard_plugins’——“插件”
‘dashboard_secondary’——“其它 WordPress 相关新闻”
‘dashboard_primary’——“WordPress China 博客”
第二部份,添加自定义小区块的代码
// 添加自定义小区块
wp_add_dashboard_widget( 'dashboard_custom_feed', '来自Chenchunlinblog的最新消息', 'dashboard_custom_feed_output' );
}
//输出自定义小区块
function dashboard_custom_feed_output() {
echo '<div class="rss-widget">';
wp_widget_rss_output(array(
'url' => 'http://www.chenchunlin.info/feed',
'title' => 'What's up at Chenchunlinblog',
'items' => 6,
'show_summary' => 0,
'show_author' => 1,
'show_date' => 1 ));
echo "</div>";
}
这一部份许多参数值都可以按需要定义,我添加的是一个外部的feed订阅源,它的地址是http://www.chenchunlin.info/feed。
后面的几项:
‘items’ => 6 这一项指定要显示的feed条数,当然可以改成别的数字;
‘show_summary’ => 0 输出摘要,0表示不显示,1表示显示;
‘show_author’ => 1 显示作者名称,数字1改为0则不显示;
‘show_date’ => 1 显示条目日期,数字1改为0则不显示。
最后,我的博客后台变成了这样:

其实WordPress可定制性非常强,以上只不过是其中的一个小小的主题技巧,并且是完全出自个人喜好所做的修改,很随意的,我觉得好处是:根本不用去改动WordPress系统本身的核心代码,只需将以上那些函数加入主题的functions.php文件中就行了,日后如果更换了主题,原来的一切就都复原了。
您可能也喜欢的日志:[related_posts]
如果我想dashboard widget显示最新的几篇文章,应该怎么弄?求教程……
输出WordPress最新文章的代码本来是这样的:
< ?php $args = array( 'numberposts' => '5' ); $recent_posts = wp_get_recent_posts( $args ); foreach( $recent_posts as $recent ){ echo '- ' . $recent["post_title"].'
';
}
?>
如果是想在前台显示最新文章还容易一些,但要在后台新建个widget来显示最新文章,这个倒有点难度了——我本身也是WordPrss菜鸟!哈哈!