2008/02/14

在Blogger(blogspot) 單篇文章隱藏 裝置元件(widget)或網頁元素的方法




當部落格外掛元件愈來愈多時, 網頁的載入速度會拖慢, 這時候可考慮當連入到某一篇文章(非首頁)時, 只顯示部份的裝置元件(widget), 或 blogger 的網頁元素(page element).




在修改程式碼時, 記得先備份template, 然後選 版面配置 --> 修改 HTML --> 展開小裝置範本 打勾.


主要是用 <b:if cond='data:blog.pageType != "item"'></b:if> 包住想隱藏的網頁元素內容.

1.先找到像 <b:widget id='xxxx' locked='false' title='XXXX' type='cccc'> 這樣的程式碼, 這就是一個網頁元素


2.然後在這個網頁元素主要內容區域, <b:includable id='main'> (區塊開始)及 </b:includable> (區塊結束) 之間, 用<b:if cond='data:blog.pageType != "item"'>
</b:if> 包住區塊中的程式碼.

如 我想把 貼紙專區在單篇文章隱藏起來, 就在以下程式碼, 加入 這兩行紅字.

<b:widget id='HTML14' locked='false' title='貼紙專區' type='HTML'>
<b:includable id='main'>
<b:if cond='data:blog.pageType != "item"'>
<!-- only display title if it's non-empty -->
<b:if cond='data:title != ""'>
<h2 class='title'><data:title/></h2>
</b:if>
<div class='widget-content'>
<data:content/>
</div>
<b:include name='quickedit'/>
</b:if>
</b:includable>
</b:widget>>


口訣就是,[找到藍字後, 加入紅字程式碼]!

所以有幾個網頁元素想隱藏, 就重覆以上步驟吧!

儲存後, 這些在首頁會顯示的裝置


進入任一單篇文章之後, 就不見了!


相關文章 :

30 comments:

星旋 提到...

謝謝,
終於有辦法減低載入頁面的速度了。

skyvee 提到...

星旋, 少載入一些元件, 應該多少有些幫助的, 可是取捨那些元件就要煩惱了!

Kevin Tsai 提到...

我是使用三欄式的Template,進入文章後將其中一個sidebar隱藏,有興趣可以參考一下http://iamkevintsai.blogspot.com/2007/11/theme-part-ii.html

Skyvee 提到...

謝謝阿凱的資訊, 如果要隱藏整個sidebar, 阿凱的方法比較快速呢!^^

原來之前就有不少文章有提到隱藏的方法 :p

Kevin Tsai 提到...

Skyvee,我也從你這學到不少東西呢^^

Skyvee 提到...

Kevin, 很高興又多認識一個好部落格, 原來您有玩mini city 啊!看起來很有意思呢! 您的文章介紹讓我開了不少眼界! ^^

tzuche 提到...

又學到一招,skyvee謝謝,之前的聯播也用frontpage搞定了。

對了,你覺得有必要開啟留言管理功能嗎?我沒有開,目前還沒有太多垃圾留言~~
tzuche

Skyvee 提到...

tzuche, 聯播旅人行腳文章,這個想法很不錯哦!

留言管理, 主要是防機器人自動留言, 是不是有需要, 其實因人而異!我曾收過不明來歷的留言,留下可疑的網址, 所以為了安全起見, 還是多加一道關卡.不過這還是不能百分百杜絕.

.. 提到...

不好意思~想請問一下如何像你將widget中新增的元件置中呢~像是你feed訂閱那種情形,我的都會變成靠左擠在一起...謝謝版主

skyvee 提到...

在程式碼前後用<center>XXX </center>包起來就可了. 記得把全形<改成半形<

Down To Earth 提到...

ok了!感謝版主!

skyvee 提到...

^^ 不用客氣~

許願 提到...

我想請教下如果我不想每篇文章都公開,有無辦法可以做到?因為我在BLOGGER好像找不到這個功能?麻煩晒!^^

Skyvee 提到...

不公開某些文章的功能, 果然需要許願一下啊! blogger 並沒有這種設定, 目前比較常見的是把文章加密, 輸入密碼後解密的方式呈現. 你可以參考 kaie 寫的文章. Encrypt your private blog post

許願 提到...

被版主這樣搬了個爛GAG出來都唔知點接落去......anyway多謝推介~

JIANG JIANG 提到...

許願:

囧 ..
看不懂[爛GAG出來都唔知點接落去]這句話的意思
Kaie那篇其實也挺酷的
不過我是利用http://yukitowu.blogspot.com/2007/09/blogger-hack.html
雪兔這篇文章 去產生文章加密的
給你參考嚕....

skyvee 提到...

許願,冷笑話的確不好笑,抱歉!部份文章鎖碼的功能,我覺得也很需要的,可惜blogger 還沒有.不過 JIANG JIANG 推薦的這個方法,對使用者而言介面比較容易懂, 可以參考看看.

JIANG JIANG 謝謝提供這麼好用的hack. ^^

JIANG JIANG 提到...

^_^

哪裡哪裡 ... 我只是剛好有在用這個Hack .

所以提供上來

許願 提到...

謝謝兩位的熱心回覆,我會參考參考~~BTW,我唔知點接GAG只是一個事實,但不代表我覺得它不好笑,版主你還是有你的幽默感的^^

Skyvee 提到...

謝謝 JIANG JIANG 及 許願. :)

楚天格 提到...

哈~太棒囉~
我的問題終於在這裡得到解答了~謝謝~^^

我把首頁的photo slide及video都隱藏了~
嘿嘿~~~~~~~~^^""

http://giant-dogs.blogspot.com/

Skyvee 提到...

不客氣,看來我們都需要這功能. ^^

星逝 提到...

請問一下
如果原本右邊的網頁元素有框框的話
那我隱藏元件了
可是框框還在
有辦法把它去掉嗎??

Skyvee 提到...

您好, 主要是sidebar CSS區那邊要修一下.

請將 .sidebar .widget, .main .widget {
這一行,改成
.sidebar .widget-content, .main .widget {

應該就可以了!

星逝 提到...

我成功了
謝謝您的教學...
讓我受益良多!

Skyvee 提到...

不客氣.也謝謝您的留言. :)

Ryan 提到...

想請教您問題
我想讓首頁只有呈現"最新發佈的文章超連結"
當日的文章靠點選"較舊的文章"瀏覽

如何在部落格首頁放置固定的頁面將以往的最新文章首頁擠到後面的頁面呢?

Ryan 提到...

應該是說將首頁的文章隱藏
瀏覽者得靠點選右下角的"較舊的文章"
才能開始瀏覽當日及以往的文章
想在首頁之前設計幾頁固定的頁面(有點像是公告)

Skyvee 提到...

Ryan,你可以參考這種做法
1.首頁的文章隱藏: 在設定-->格式, 將顯示幾篇文章於首頁上,設為0篇

2.首頁只有呈現"最新發佈的文章超連結" :
在網頁配置-->網頁元素中的網誌文章區,新增一個網頁小工具 : 資訊提供, 輸入blog網址,就會自動顯示出最新幾篇文章的網址

不知道這樣是否有符合你的需求?

Ryan 提到...

我還真沒想過用0!
真是多謝提供意見
我再多調整看看
謝謝你

張貼留言

謝謝您願意在此分享心得, 讓文章內容更豐富.