在优博有一个Yo2Mass插件,可以把所关注的或好友的Feed文章聚合到自己的博客页面上。功能很酷,但是这个插件需要模板一定的配合,大多数模板在显示Yo2Mass的时候都不行。我不清楚Yo2Mass具体是怎么工作的,但是我通过“黑盒测试”得到一些结论。可以依此修改模板,来适应Yo2Mass。

首先确定是Yo2Mass调用哪个文件来输出的。oneoo说是调用的“index.php”,没有“index.php”就调用“archive.php”。其实它优先调用的是“single.php”。

“single.php”是我们用来输出单篇日志的,有的人还用在这个文件里加入了Google Ads。用它来输出Yo2Mass显示很乱,或者有的模板可能只显示一条RSS。那么我们如何控制Yo2Mass?

在打开Yo2Mass页面的时候,我分别用is_single()、is_archive()、is_home()判断。发现is_single()和is_archive()都返回true。在正常的WordPress工作状态下不可能出现这种情况。因此,可建立一个is_yo2mass()函数来判断当前是否是Yo2Mass页面。函数如下:
<?php
function is_yo2mass(){
$yo2mass = is_single()&&is_archive();
return $yo2mass;}
?>
把它放在function.php下就可以使用了。要注意:is_yo2mass()函数的判断必需在is_single()和is_archive()之前,否则在is_single()和is_archive()处就已经分支跳转了。另外,也要在is_tag()和is_category()之前,因为在标签页和分类页is_archive()也返回true。

有了这个函数我们就可以方便的控制Yo2Mass页面了。比如,在进入single.php的时候用is_yo2mass()实现分支结构,运行专门用于输出yo2mass的代码。还可以控制Yo2Mass页面的title标签等:
<?php if( is_yo2mass() ) : ?>
<title>Yo2Mass</title>
<?php endif; ?>

Related posts:

  1. WordPress搭建全记录
  2. 为wordpress做一个导航菜单
  3. register_sidebars
  4. some links in 2007
  5. 单间宿舍