Modify Summary

Modify Summary

出自LifeType 中文文件计画

跳转到: 导航, 搜寻

目录

下拉式Blog列表

有逛过 PowerOS 无限志 的人,应该对他 Summary 的下拉式网志列表感到印象深刻。感谢 LiP 提供。

  • 使用方法:
将以下语法放到适当位置即可。

  1. {literal}<script language="javascript" type="text/javascript">
  2. function MM_jumpMenu(targ,selObj,restore){
  3. eval(targ+".location='"+selObj.options[selObj.selectedIndex].value+"'");
  4. if (restore) selObj.selectedIndex=0;
  5. }</script>{/literal}
  6.  
  7. <form name="blog" style="margin:2px;">
  8. <select name="menu_menu" onChange="MM_jumpMenu('parent',this,0)">
  9. <option value="\" select>{$locale->tr("blog")}列表</option>
  10. <option value="\">---------------------</option>
  11. <option value="?op=BlogList"> >>> 前往{$locale->tr("blog")}列表</option>
  12. <option value="\">---------------------</option>
  13. {foreach from=$blogs item=blog}
  14. {assign">assign">assign var="blogId" value=$blog->getId()}
  15. <option value="{$url->blogLink($blogs[$blogId])}"> [{$blog->getId()}] {$blog->getBlog()}....({$blog->getViewedTotal()}人阅览)</option>
  16. </select>
  17. </form>
  18.  
  19. P.S. 其中10~13行可自行修改需要的文字或拿掉。

原文发表在 Lifetype中文发展论坛

不在 summary 显示「恭喜!」的小技巧

如果你用LifeType来架社群,那么当开始有人註册的时候,最新文章的地方老是会显示出「恭喜!」这篇预设的文章,当然如果你改过语言档的话,也许是别的标题,总而言之,如果同一天註册的人多了,总是觉得很碍眼,因此很久以前在论坛上就看到有人问说怎样可以不产生这篇文章之类的问题,例如下面的文章:

http://forum.lifetype.org.cn/index.php?topic=825.0

只是不生成这篇文章,会造成网志一篇文章都没有的错误;且保留这篇文章,你可以在这篇文章中写上一些欢迎词和使用规范等等,其实还满有用的。因此,你可以修改核心程式,让summary在显示最新文章时过滤掉这个预设的文章。

不过,这有点大费周章,对于LifeType架构不熟悉的人,你要他改,他也不想改,因此这边就用改模版的方法,两行程式码就将这件事情完成。

怎么做,其实简单的很,就是给一个判断式 if ,去决定最新文章要不要显示;白话文的逻辑就是

如果 标题不是 「恭喜!」那就显示下面的东西。

实做如下:

1. 打开你的summary/post.template

2. 在

  1. {assign">assign">assign var="blog" value=$post->getBlogInfo()}
  2. {assign">assign">assign var="request" value=$blog->getBlogRequestGenerator()}

的下面插入

  1. {if $post->getTopic()!= $locale->tr( "register_default_article_topic" )}

3. 然后在档案的最下面,再加上{/if},结束这个叙述,就完成了。

虽然是很暴力也没啥技巧的方法,不过可以很快的达成你的目的「不显示恭喜这篇文章」,我想需要的人就自行修改吧。

原文发表在 (模版教学) 不在 summary 显示「恭喜!」的小技巧

不显示新使用者的「恭喜!」文章

预设在新Blog出生时,会在自动发表一篇「恭喜!」。如果一次有很多使用者註册,那就很烦了。因此 Resnick 写了这篇教学。

  • 修改办法:
1. 打开你的summary/post.template
2. 在

  1. {assign">assign">assign var="blog" value=$post->getBlogInfo()}
  2. {assign">assign">assign var="request" value=$blog->getBlogRequestGenerator()}
的下面插入

  1. {if $post->getTopic()!=$locale->tr("register_default_article_topic" )}
3. 然后在档案的最下面,再加上 {/if},结束这个叙述,就完成了。

原文发表在 Resnick's small world

如何让最新文章能显示所有的文章,而不是只有一个 Blog 一篇文章呢

把class/summary/dao/summarystats.class.php里的function getRecentArticles 里面的

  1. while( ($row = $result->FetchRow()) && ($i < $maxPosts) ) {
  2. if (!in_array($row["blog_id"], $blogs))
  3. {
  4. $blogs[] = $row["blog_id"];
  5. array_push( $posts, $this->articles->_fillArticleInformation($row) );
  6. $i++;
  7. }
  8. }

改成

  1. while( ($row = $result->FetchRow()) && ($i < $maxPosts) ) {
  2. // if (!in_array($row["blog_id"], $blogs))
  3. // {
  4. // $blogs[] = $row["blog_id"];
  5. array_push( $posts, $this->articles->_fillArticleInformation($row) );
  6. $i++;
  7. // }
  8. }

应该就可以了!

原文请参考:这里