2007年3月25日

Hacks In Lifetags:Label/Archive Page's View

上次修改Josh's Lifetags已經快半個月了,剛好晚上睡不著,就來繼續之前的工作;我在Hacks In Lifetags:Read More有提到過我是用直接展開的方式,其中還有另一個考量,在文中第一個步驟有加載一個JavaScript,而這個JavaScript也可以用在這個Hack上面,這是我在文中所沒有提到的。

Peek-A-Boo的修改方法如下:(參考文章:Peek-A-Boo view of posts in label/archive pages
1、加載JavaScript(如果已經有的話請略過)
<script type='text/javascript'
src='http://www.anniyalogam.com/widgets/hackosphere.js' />

2、這個步驟有點複雜,所以我將全部的程式碼貼上:
<b:includable id='PeekABooPost' var='post'>
<div class='post uncustomized-post-template'>
<table><tr><td width='40px'>
<a href='javascript:void(0)' title='Expand/collapse this post' style='text-decoration:none' expr:onclick='"javascript:toggleIt(\"" + data:post.id + "\");"'>[+/-]</a>
</td><td>
<h3 class='post-title'><a expr:href='data:post.url'><data:post.title/></a></h3>
</td></tr></table>
<div class='post-body' expr:id='data:post.id' style='display:none'>
<p><data:post.body/></p>
<div style='clear: both;'/> <!-- clear for photos floats -->
</div>
</div>
</b:includable>


<b:includable id='main' var='top'>
<!-- posts -->
<div id='blog-posts'>
<b:loop values='data:posts' var='post'>
<b:if cond='data:post.dateHeader'>
<h2 class='date-header'><data:post.dateHeader/></h2>
</b:if>

<b:if cond='data:blog.homepageUrl != data:blog.url'>
<b:if cond='data:blog.pageType != "item"'>
<b:include data='post' name='PeekABooPost'/>
<b:else/>
<b:include data='post' name='post'/>
</b:if>
<b:else/>


<b:include data='post' name='post'/>

</b:if>

<b:if cond='data:blog.pageType == "item"'>
<b:if cond='data:post.allowComments'>
<b:include data='post' name='comments'/>
</b:if>
</b:if>
</b:loop>
</div>

將紅色部份加入範本內即可。

然而,如果你只想在Label/Archive的頁面只Show出文章的Title而不想Show出文章內容,作法則是更簡單。
1、首先找到下面的程式片段:(參考文章:New hack to improve your label/archive pages
<div class='blog-posts'>
<b:include data='top' name='status-message'/>
<b:loop values='data:posts' var='post'>
<b:if cond='data:post.dateHeader'>
<h2 class='date-header'><data:post.dateHeader/></h2>
</b:if>
<b:include data='post' name='post'/>
<b:if cond='data:blog.pageType == "item"'>
<b:include data='post' name='comments'/>
</b:if>
</b:loop>
</div>

2、將上列的紅色部份以下列程式碼取代:
<b:if cond='data:blog.homepageUrl != data:blog.url'>
<b:if cond='data:blog.pageType != "item"'>
<a expr:href='data:post.url'>
<data:post.title/></a><br/><br/>
<b:else/>
<b:include data='post' name='post'/>
</b:if>
<b:else/>
<b:include data='post' name='post'/>
</b:if>


以上兩種方法,提供給各位做參考。

3 則留言:

  1. 你給了個 broken link (尾巴被截斷),正確的連結為:
    Peek-A-Boo view of posts in label/archive pages

    回覆刪除
  2. Josh 大~ 超感謝你的網站
    裡面有超多詳盡的資源跟介紹~

    你是好人~~~ (向內行人致敬= =+)

    積善之家必有餘慶~

    最後,我想請問一個問題 (目的..0.0)

    Blogger的文章 有辦法作到像 某有明大站
    可以幫文章加密嗎??

    就是要看文章要打密碼@@?
    ↑ 一些私密的文章 只想給特定人士看..

    回覆刪除
  3. To RaRaYA:
    很高興你喜歡我的Blog,但是不要發卡給我啦…
    至於你所想要功能,我曾經看過國外有人用JavaScript+Key Word做出來,改天我再寫篇教學,但是不像是有名大站那一種密碼鎖定。

    回覆刪除