LifeType 中文開發論壇

開發 => 模版設計 => 主題作者是: shookware 於 五月 07, 2005, 11:10:56 下午



主題: 请教下LiteWinter模板的修改问题
作者: shookware五月 07, 2005, 11:10:56 下午
我希望加进去"最新回复"这个插件
于是我修改panel.template这个文件
加入如下的代码:

<!--Recent Comments-->
   {if $recentcomments->isEnabled()}
   <div class="blockTitle"> {$locale->tr("recentcomments")} </div>
   {assign var=comments value=$recentcomments->getRecentComments()}
   <div class="blockContent">
      <div align="center">
         {foreach from=$comments item=comment}
         {assign var=commentpostid value=$comment->getArticleId()}
         {assign var=commentpost value=$recentcomments->getArticle($commentpostid)}
            <div class="Item"><a title="View comments by {$comment->getUsername()}" href="{$url->postPermalink($commentpost)}#{$comment->getId()}">{$comment->getText()}</a></div>
         {/foreach}
         </div>
   </div>
   <div class="blockFooter">&nbsp;</div>
   {/if}

可是现在我发现 这样的结果就是每个回复之间的距离太大了……
而不象上面archieves那样,行与行之间的间隔那么小。
是不是我哪里写错了?才这样啊? 应该怎么修改?
(我的那个隔的很大的请看连接http://blog.comicing.cn)


主題: 请教下LiteWinter模板的修改问题
作者: shookware五月 07, 2005, 11:34:19 下午
我大概知道是哪里的问题了。
好象是因为回复的正文中有<P>这个标签的缘故


主題: Re: 请教下LiteWinter模板的修改问题
作者: james五月 07, 2005, 11:47:18 下午
引用自: shookware
我希望加进去"最新回复"这个插件
于是我修改panel.template这个文件
加入如下的代码:

<!--Recent Comments-->
   {if $recentcomments->isEnabled()}
   <div class="blockTitle"> {$locale->tr("recentcomments")} </div>
   {assign var=comments value=$recentcomments->getRecentComments()}
   <div class="blockContent">
      <div align="center">
         {foreach from=$comments item=comment}
         {assign var=commentpostid value=$comment->getArticleId()}
         {assign var=commentpost value=$recentcomments->getArticle($commentpostid)}
            <div class="Item"><a title="View comments by {$comment->getUsername()}" href="{$url->postPermalink($commentpost)}#{$comment->getId()}">{$comment->getText()}</a></div>
         {/foreach}
         </div>
   </div>
   <div class="blockFooter">&nbsp;</div>
   {/if}

可是现在我发现 这样的结果就是每个回复之间的距离太大了……
而不象上面archieves那样,行与行之间的间隔那么小。
是不是我哪里写错了?才这样啊? 应该怎么修改?
(我的那个隔的很大的请看连接http://blog.comicing.cn)


請把{$comment->getText()}改成<b>{$comment->getUsername()}:</b>{$comment->getText()|truncate:60:"..."|strip_tags|escape}
這樣就不會間格那麼大囉 。

之前見隔那麼大是因為回覆的內容有<p></p>的tag(你可以從原始碼中看到)
因此必需使用 strip_tags把這些html的tag移除。
同時改成上面紅色部份,會出現回覆的作者及把過長的回覆內容用...(上面truncate:60 是只抓取前30個中文字元)取代。

給你參考一下囉 :)

James