我先貼一下我測試這個外掛的blog網址:
http://music.ee.ntu.edu.tw/plog/jcmg大家如果點進去看的話,會發現它比較像一個網站而非一個一般的個人網誌。
首頁上方有文章標題為「測試公告」,而下方有文章標題為「首頁」,乍看之下應該上面那一篇是藉由「設定為公告文章」做出來的,而下面那篇是設定在一個「會顯示在首頁的分類」裡的文章。
不過其實真實狀況剛好反過來。我這樣做的目的是讓系統產生的RSS,會針對那篇「測試公告」而非那篇「首頁」去產生(因為系統產生的RSS好像是抓首頁顯示的文章...我不知道要怎麼設定它去抓其他文章)。也就是實際的狀況是:上面那篇「測試公告」是一篇正常顯示在首頁的文章,而下面那篇標題為「首頁」的文章,實際上是被設定為「置頂文章」,不過我把置頂文章出現在main.template的位置換到下面去,所以看起來比較像「置底文章」...
另外,我也用lss前面提到的$showAll變數,來實做「只有首頁顯示置頂文章」(在我這裡的case是置「底」文章...)。我自己弄好之後,看文章分類裡確實不會顯示置頂文章,不過我在panel.template裡把隨時間彙整的連結拿掉了,所以沒有檢查隨時間彙整的頁面是不是也看不到置頂文章。
下面是我的main.template(原本是從mtplog修改過來的,但是在加入外掛之前我已經改過別的東西,所以忘記它跟原本mtplog的main.template有什麼差別了...orz)
-----------------------------------------------------------------------------
{include file="$blogtemplate/header.template"}
<div id="content">
{foreach from=$posts item=post}
{include file="$blogtemplate/post.template"}
<div class="pagetop"><a class="aposted" href="#top">回頁首▲</a></div>
{/foreach}
{if $showAll}
{else}
{if $stickyposts->isEnabled()}
{assign var=stickys value=$stickyposts->getArticles('sticky')}
{foreach from=$stickys item=stickypost}
{assign var="stickysDate" value=$stickypost->getDateObject()}
{assign var="stickysOwner" value=$stickypost->getUserInfo()}
<div class="blog">
<h2 class="date">{$locale->formatDate($stickysDate,"%B %d, %Y, %H:%M")} </h2>
<div class="blogbody">
<h3 class="title">{$stickypost->getTopic()}</h3>
{$stickypost->getText()}
</div>
</div>
{/foreach}
<div class="pagetop"><a class="aposted" href="#top">回頁首▲</a></div>
{/if}
{/if}
<br/>
</div>
{include file="$blogtemplate/panel.template"}
{include file="$blogtemplate/footer.template"}
----------------------------------------------------------------------------------