2011-01-30

Blogger RecentPosts 最新文章插件 V1.0.0

這次NS利用週末的時間把原本的Blogger Hack: 最新文章 AJAX 縮圖版大改,以JQuery Plugin的方式重現其原面貌,原本的功能一樣沒少,但寫法精簡很多,壓縮之後JS檔案只有3k大小,是個非常輕量化的插件。

這次的最新文章Widget,NS放入了很多強化過後的功能,利如讀取時的overlay,數字跳頁碼,自訂客製參數,都比前一個版本來的有彈性,Plugin化之後要做擴充也比較簡單,預計在下一版本的大更新時加入更多的客製參數與動畫特效。

在此隆重推出《 Blogger RecentPosts 最新文章插件 V1.0.0 》本插件特點有:
  1. JQuery插件化,僅需指定一空白DIV元素即可啟動。
  2. 內建文章縮圖,對應flickr圖床自動尋找最小縮圖節省頻寬。
  3. 動態換頁功能,本版新增數字頁碼可前後快速跳頁。
  4. 可自行更換樣式、字串,方便進階使用者客製特化。

安裝方法:

因為這是一套JQuery Plugin,所以要確保網誌內有JQuery的檔案,程式版本至少1.4.0以上,而且不能同時引用兩種版本以免造成衝突。如果先前網誌有安裝其他套件引用了舊版JQuery,請將之移除並替換成最新版本。

再來NS已經將本外掛原碼壓縮並上傳到google code,各位可以直接外連。(但如果你要確保外連的穩定性請自行下載後放到個人網路空間)


進入後台[設計] -> [修改HTML]選項,在</head>之前貼上以下兩行程式碼:
<script src='http://ajax.googleapis.com/ajax/libs/jquery/1.4.4/jquery.min.js' type='text/javascript'/>
<script charser="utf-8" src='http://jqery-recentposts.googlecode.com/files/recentposts100.js' type='text/javascript'/>
JQuery部份是利用Google提供1.4.4版的公用程式,後者空間則是我開的google code project。



接著到[網頁元素]選擇新增一個HTML/Javascript元件,進入編輯模式之後填入以下程式碼:
<style>
.RecentPosts { padding:0; margin:0; width:240px; }
.RecentPosts a { text-decoration:none; color:#333; }
.RecentPosts .display { position:relative !important; font-size:12px; padding:10px 10px 5px; }
.RecentPosts .overlay { width:100%; height:100%; position:absolute; top:0; left:0; z-index:999; color:#fff; background:#000; filter:alpha(opacity=80); -moz-opacity:0.8; -khtml-opacity: 0.8; opacity: 0.8; text-align:center; }
.RecentPosts .overlay span { display:block; margin-top:50%; }
.RecentPosts li { list-style:none; height:50px; margin-bottom:5px; }
.RecentPosts li img { float:left; width:50px; height:50px; margin-right:10px; }
.RecentPosts .pager { font-size:9px; clear:both; margin:10px 0 5px; text-align:center }
.RecentPosts .btn { border:1px solid #ccc; padding:2px 3px; margin-right:3px; }
.RecentPosts span.btn { color:#ccc; border:1px solid #fff; }
.RecentPosts span.current, .RecentPosts a.btn:hover { background:#ccc; color:#fff; border:1px solid #999; }
.RecentPosts .copyright { color:#ccc; display:block; font-size:9px; text-align:center; }
</style>


<div id="recentposts"></div>
<script type="text/javascript">

$("#recentposts").RecentPosts();
</script>

前者的部份是CSS樣式,中間有一個空的DIV,id可以自取,之後接一段script就是用JQuery選到這個空白DIV再啟動RecentPosts。

就這樣,完成了,是不是非常簡單呢?

進階使用法:

呼叫這個Plugin時候可以填入一些參數來做變化的,請參見下表。

參數名預設值說明
'currentIndex'1起始的項目編號,1為網誌第一篇
'displayAmounts'5每一頁顯示的文章數
'pagerAmounts'2跳頁頁碼的數量,若為2的話則是前後各兩頁加現在頁數共五個數字
'defaultImage'圖檔url在沒有找到文章縮圖時會顯示此圖檔,預設為一張no image的圖示
'MSG_PREV'"上一頁"上一頁按鈕的字串值
'MSG_NEXT'"下一頁"下一頁按鈕的字串值
'MSG_LOADING'"載入中"載入時overlay顯示的字串值

填入自定參數的作法如下:
$("#recentposts").RecentPosts({
'displayAmounts':7,
'defaultImage': "http://dl.dropbox.com/u/7604339/blog/nothumb.jpg",
'MSG_LOADING' : "讀取中請稍後"
});

基本上就填入你想要改的東西在一個{}中,參數名稱與值以分號相隔,項次與項次間要用逗號分開,呼叫的時候放在()內。

CSS樣式客製:

元件結構如下:
<div class="RecentPosts">
<div class="display">
<ul>
<li><a><img><span></span></a></li>
...
..
.
</ul>
<div class="pager">
<a class="btn prev"></a>
<a class="btn jump"></a>
...
..
.
<a class="btn next"></a>
</div>
<div class="overlay"></div>
</div>
<a class="copyright"></a>
</div>

除了.display要加relative來定位,還有.overlay要absolute對齊元件最左上方,其他CSS都可以自行變動。

原碼與DEMO: (點選result可直接試用此套件)



以上,歡迎給予錯誤回報或改版建議,我會在下次改版時納入參考。

11 回應:

ChiaWei 提到...

收下!回家測試看看!

私心期待一下Plurk公告插件的分享:P

無法顯示網頁 提到...

我這個留言跟這篇文章沒關係,
我 ... 我 ... 我 ...
我只是想跟你說聲新年快樂,新年快樂!

steven 提到...

嗯plug 很不錯用 謝謝大大的分享

NS 提到...

@ Steven
我發現篇數少的時候pager會有一些問題~ 下一版會改善這個bug。
請屆時再來使用更新版本喔 :)

d p i 提到...

NS大太厲害了,這個Plug-in寫的好棒。
晚上回家我再來裝看看~

NS 提到...

有問題歡迎發問喔 :P

chocobo 提到...

你好~NS大大! 我是想請教關於"Blogger Hack: 最新文章 AJAX 縮圖版 "

我的blog:
http://iphone-iapps.blogspot.com/p/iphone-apps_13.html

因為我想在news顯示最新文章,然後再在每個網頁(iphone game,software..等等)
顯示標籤的文章(用http://聯播或你的Blog網

址/feeds/posts/summary/-/標籤名稱,在你的教學找到的

但是只能顯示最新文章,如果改定按標籤顯示它一直顯示loading....

我也試過把nPostStartIndex1 或是 showRecentPosts1(nIndex)
改了名字也是不行...

應該怎麼辦><""~~ 求大大幫忙!

有心人 提到...

其實如果我想橫向形式表示,請問要如何修改?

Thanks

Shu-Hung Liu 提到...

您好,非常好用的插件。有個小問題想向您請教:我套用了之後,縮圖並沒有出現"外框線"。請問應該調整的參數??謝謝。

NeiL 提到...

您好,我照著NS大的方式弄了
但無法顯示我的文章
是因為我篇數太少嗎??

My blog:http://neil978.blogspot.com/

Chen Yang Huang 提到...

NS 大,我已經照著您的步驟做了...
卻看不到顯示正常的結果。

只看到一條黑..

我的BLOG
http://oao54bb.blogspot.com/

張貼意見

非Blogger會員的朋友,請在"發表意見的身份"選單選用"名稱/網址"填入您的大名,這樣NS才知道該怎麼稱呼你喔 :)

文章回應

友格友品

  • 最渴望的旅行(三)Olympus E-P3 - Operation - 上篇文章看過了E-P3的外觀介紹,這篇我們來看看關於E-P3的選單。 除了選單的設定以外,這篇文章還會講到兩個功能:一個是「數位遠攝轉換器」(其實就是數位變焦)、另外一個則是「保持暖色調」 (我知道有些人會直接略過講選單的文章,所以提早在文章一開頭講) 上篇文章有提到一開機的超音波除塵的燈號被取消了,那麼我們...
    15 小時以前
  • The Wolseley的英式下午茶 - 來到英國當然不能錯過下午茶,得知早早預訂了The Wolseley,就一直期待著。 The Wolseley位在高級的Ritz Hotel旁,在倫敦當地是很熱門的餐廳,也偶有名人出入,想去用餐最好早早預約。當天一行人在下午抵達,來享用下午茶套餐,當那傳說中的宛如三層公寓的點心塔一上桌,眾人真是興奮不已,由上而下...
    1 天以前
  • 与鳄鱼搏斗 - 真是太惊险了! 近身肉搏!!! 经过一番惊天动地的打斗。。。。。。 成功驯服大鳄鱼!!
    1 天以前
  • 平安夜之南境之旅 Key West – Day 2 好吃篇 - *...看 Day 2 之亂逛篇* 到處趴趴走很快就把一肚子的能量耗光,肚子空空連 Ethan 也兩腿無力,帶著兩腿無力的小孩散步,那可是世界上最恐怖的夢饜之一! 話說回來,外出旅遊怎麼能夠錯過在地的美食文化呢?對於旅遊四大要旨(吃喝玩樂)之首我們早早就規劃好囉! Banana Cafe 雖然坐落於 ...
    1 天以前
  • 便宜又好用的契約工 - 家人聽說中壢有間外資企業的待遇、福利不錯,便不斷「鼓勵」本人轉換就業跑道,心想要是不親身體驗家人的道聽塗說,他們會像故障地錄放影機重覆播放相同的片段,認為沒去應徵這份工作很可惜。於是我用九個月的寶貴光陰,證明高中同學的先見之明(萬一沒升正職怎麼辦?),然而有智慧的他只糟蹋卅天。 人資經理與數位應...
    1 週以前
  • 敘事曲終,人,散 - 越離越遠,我以為的那些仍然繼續開始支解崩壞; 細數空氣中的灰塵,聽每一顆光影裡殘餘的餘韻,然後一個字一個字寫下也沒甚麼人要聽的故事,暫且稱做敘事曲吧。 曲終也許就是人散。 這也沒甚麼好或不好,人生就是如此,如同房屋有拆有遷,或者與人有合有離。只是每一道流沙都會刮下細細小小的刮痕,久了才發現原來眼鏡也會因...
    1 週以前
  • 主題偵測的暫存內容 (bbfa88e0-2cbe-4988-a958-401f8cdc940e - 3bfe001a-32de-4114-a6b4-4005b770f6d7) - 尚有未刪除的暫存文件,請手動刪除。(42ad9a55-b336-488e-aa69-2e8d934548d1 - 3bfe001a-32de-4114-a6b4-4005b770f6d7)
    1 週以前
  • You hurt me, I hurt them. - Suffering doesn't necessarily help one to be more patient. The pain of being hurt, if not healed, will hurt others. Because of being afraid of being hurt a...
    2 週以前
  • N式滷牛腱 - 上個禮拜試作了一次滷牛腱,發現這道菜簡單易學,應該又是留學生必備的一道菜式,跟我之前做過的牛肉麵比起來,我認為選用牛腱肉並整塊煨滷,口感風味上更上層樓,所以以後如果我做牛肉麵大概也會用這種方式來實現。 廢話不多說,N式廚房上菜囉。 首先當然是肉,選用Beef Shrank,一磅約3.99。 生薑去皮打扁...
    2 週以前
  • Android 4.0 技術與就業研討會 - 3/7 日下午有個「Android 4.0 技術與就業研討會」。我講的部分是 Fragments,這是 Android 3/4 中最重要的一個新架構。有興趣的歡迎報迎參加。 這個活動是由台灣知識庫主辦,時間是 3/7 1pm-5:30pm,地點應該就在台北車站附近的開封街一段32號4樓。
    3 週以前
  • - 1.yesterday is here. 2."她終於來到一個可以繼續活著也可以死去的年紀。" 3.書店關掉後,星巴克像個尷尬的中產房車每天臨停在那裏。然後改裝小電影院,停業咖啡館,整頓四不像的頹喪,停止喃喃自語,邁向庸庸碌碌,越走路越趕不上更迭。踉蹌的跌倒,順勢躺下,發現自己在家,因為也沒有地方可以去了。...
    2 個月以前
  • Blogger’s Brand New Google+ Page - *(Cross posted from the Blogger Buzz Blog) * Earlier this week, the Google+ team launched Pages, a new way for you to keep up-to-date with your interests ...
    3 個月以前
  • ▌Westlife西城男孩2011台北演唱會隨筆 - Westlife的歌曲是我和妹妹的回憶、進入西洋音樂學英文歌的開始,我在以前的網誌是這樣介紹的。 當時怎麼也不會想到有天能現場看他們唱歌。 開場前,布幕映照觀眾席,有的揮舞國慶日國旗、或持Westlife出身的愛爾蘭國旗、當然也許多高舉應援燈牌左右揮舞的歌迷。外國夫妻、小孩子、大人男女被照到反映各不相同,...
    4 個月以前
  • 我要搬家了 - 謝謝大家長期以來對小弟的支持,今天終於下定決心要搬家,以後請各位朋友 來我的新部落格喔.... 新的部落格
    4 個月以前
  • 久違的豎笛組聚+學妹成發 - 命運是很奇妙的走在街上遇到阿Keng(當屆42nd豎笛組組長)其實也是巧合算算日子我們大約也有五年不見了吧...久別重逢兼以路上巧遇驚喜非常阿Keng說要去看小小小學妹(53rd)的成發還約了其他的CL寶貝們二話不說,我當下就答應決定前往 星期六(5/20)下午到達中油大樓會議廳看到出席的大家時心情真是開心今天這...
    9 個月以前
  • 生命有限,愛與夢無限 - 生命有限,這是所有人都知道的事,只是很多時候,我們並不會刻意去想它,總覺得自己會有很多很多的時間才會體會到生命有限這件事。然而命運有時會很喜歡忽然提醒我們,你的限期就在不遠處。 期限將至時,我們該如何去面對?身邊人又該如何面對?這似乎會牽引出很多很多的想像。當中對大限將至的人,我們可以有多少愛去付出?又有多少夢...
    9 個月以前
  • 屬於自己的角落 - [image: IMG_7041.jpg] 每個上班族都希望可以在下班時有個讓自己身心都放鬆的地方 這幾天晚上幾乎都是這樣度過的,開一盞微微的燈光,一個人攤坐在椅背上看書、上網... 喜歡這種光線聚焦在一個焦點的感覺,就算周遭在怎麼紛亂,此時視線也會被這道光侷限著 看不清外面的景況,也許也不會被外面的世界打...
    1 年前
  • Maroon 5 - Misery haha...too much love
    1 年前
  • GPA魔人請退散 - 真的很受不了那些對分數斤斤計較的人。是的,我知道平均成績在B以下的話就拿不到學位,可是有必要為了拿A而不停地要求教授提供extra credit嗎? 更何況即使某一堂課fail了還有其他的課可以把平均拉起來(對於某些人來說,拿不到A就等同是fail),何必把自己搞成沒有拿到A就等於世界末日來臨了? 每次...
    2 年以前