| 1 | |
| 2008.1 |
有些Widget,如Related Posts,一般来说只应出现在单帖的页面中,而通常首页里大家会习惯堆砌比较多的Widgets,如Twitter、Del.icio.us之类的。WordPress默认并没有给予用户这种便利,而且搜索了一下Plug-in Category似乎也没有找到这样功能的插件,只好自己动手来改造一下。
根据Google到的一些线索发现,其实Widgets机制本身是支持多个Sidebar的,不过大部分的Theme并没有很好的利用这项功能,即使有用到的情况也大多是并排多个Sidebar的用法。于是顺手牵羊,将它略加改造,用于在不同的页面显示不同的Sidebar。分享改造方法如下:
1. 修改Theme下的functions.php,将
if ( function_exists('register_sidebars') )
register_sidebar();
修改为:
if ( function_exists('register_sidebars') )
{
register_sidebar(array('name'=>'Sidebar Home',));
register_sidebar(array('name'=>'Sidebar Single',));
register_sidebar(array('name'=>'Sidebar Archive',));
}
2. 修改Theme下的sidebar.php,将
get_sidebar();
改为:
if ( function_exists('dynamic_sidebar')
{
if (is_home() && dynamic_sidebar('Sidebar Home'));
elseif (is_single() && dynamic_sidebar('Sidebar Single'));
elseif ((is_archive() || is_search()) && dynamic_sidebar('Sidebar Archive'));
else dynamic_sidebar();
}
3. 然后回到你的首页后,再打开Widgets管理页面,就可以看到3个不同的Sidebar了。现在就来随心所欲的调整Blog在不同页面下的Widgets组合吧!
Tip:未设置的Sidebar将继承Sidebar Home。
| 24 | |
| 2006.9 |
常常在网上碰到一些有趣的文章、有用的信息,希望与朋友们分享。由于最近开始喜欢上了del.icio.us,所以打算利用它在Blog上实现“网摘分享”功能。
del.icio.us提供了一个“Daily Blog Post”的服务,但我个人不太喜欢在blog里转贴,因为这样一方面容易招致原文作者的反感(纵然加入了转载链接),另一方面也容易淹没自己Blog中的原创文章。为了保持个人Blog的原汁原味,我采用了另一种分享的方式——“del.icio.us Widget”。
这应该是Widgets插件自带的一个模块吧,以前都弃之未用,今天才把它翻了出来。配置很简单,这里就不多说了,不过有一个小小的提示:del.icio.us本身是有“私有收藏”功能的,只不过默认没有开启(“Settings - Bookmarks - Private Saving”)。对于不想在Blog上分享的个人收藏,在添加至del.icio.us时只要选上“do not share”即可。
具体的效果请看右边栏 >>

