2010-02-26

Blogger 的自動分頁機制 (Auto Pagination)

這邊好久沒 Po 文了。上個禮拜 Blogger 逕自推出了一個自動分頁的機制,我簡單看了內容,只是一堆敘述、沒有調整的程式碼和新控制介面,也就是官方會自動套用到每個 Blogger 使用者的 Blog 上,反正啥也做不了當時也沒去深究。剛開始一點感覺都沒有,後來有網友反應 Blog 發生不正常的分頁狀況,主要的現象是:首頁本來設定顯示固定文章數(ex. 5),結果怎麼突然變少了?透過新舊文章上下翻頁的功能,每次顯示的頁面文章數量都不一定一樣。另外,連搜尋、標籤 (label) 和存檔 (archive) 頁面,也有一樣的狀況發生,雖然無損文章內容,但是在頁面呈現上,文章數量會因文章內容而減少,由於和原來的使用習慣不一樣,討論區開始出現哀鴻遍野、出現要求關閉自動分頁的聲浪。

回到一開始,看看為什麼要官方推出這個功能。很多人的 Blog 文章裡除了文字以外,也會補上不少圖片和照片(有的超愛插大圖),甚至內嵌多媒體,單篇文章瀏覽時無可厚非,一定要顯示出所有內容,但如果是在首頁、檢索或分類頁面,一樣要顯示或載入全部內容的話,那麼這些頁面光等全部載入就要等到死。很多 Blog 的主人根本不知道緣由、就抱怨是因為 Blogger 提供的流量不夠、太慢,讓人家不想看他們的網站,更專業一點的會說導致 pageviews 大幅下降,這對商業或提供廣告的網站可是致命的問題。在不動內容又想改進 Blog 載入速度的前提下,Blogger 官方於是有了這項決定和計畫。出發點是善意的,不過此舉一出,很多愛放大圖或照片的首頁只剩下兩篇文章(剩下的請翻前一頁),就連搜尋或分類結果也這樣,這可是犯了眾怒啊!仔細看了官方的作法,是直接在載入 Blog 版面樣板文件前就自己做了過濾的動作,因此即便在樣板裡塞什麼 Hack,拿被「和諧」過的資料來顯示,對版面內容調整自然也無能為力了。

根據官方的說法,他們是根據要載入的資料量 (amount of HTML on the page being requested in KB),或是頁面圖檔數量來自動決定切分頁後該頁面會有的文章數量,假設是個愛放攝影作品的 Blog,一篇文章出現「夠多」「夠大」的圖檔,那麼在首頁,這類文章經「自動分頁」處理後最少只剩下「兩篇」,舊一點的第三篇、第四篇只好翻前一頁才會出來。如果前面一點的文章字多圖少,翻前一頁出來的文章數量又可能有五篇(根據自己設定的最大值),實際翻了幾頁,怎麼每頁的數量都不一樣?就像上一段說的,是在載入樣板文件前就做完分頁的機制,即便用了只顯示標題的 Hack、對這個問題也沒法改善(因此我這篇「標籤/搜尋頁面只列出標題 (Simplify the result of label and search) 」自然也是無效)。

不過,如果文章內已經做了調整、採用官方的「繼續閱讀」(Jump Break Link)、或是早期半官方的 Hack (Expandable Post Summaries,也就是我用過的 Hack「首頁長篇文章的收合」),照理說,頁面要載入的資料量和圖檔會變少了,以上自動分頁也沒有存在的必要了啊!這是官方一開始沒考慮到的,逕自全面套用自動分頁,對比較白目的人有改善到載入頁面的速度,但對已經調整過、套用 Jump Break 或繼續閱讀的人來說,那就莫名其妙了!根據這個現象,官方仍在盡力調整和修正中,在我發文的當下,如果有用 Jump Break 來減少首頁載入資料和圖檔的使用者,應該發現自動分頁機制的影響已經變小了,不過再沒 Jump Break 前用 Hack 方式做繼續閱讀的舊文章,還是沒改善,就算在樣板裡要透過 Hack 來做些什麼,也沒有太大的效果。

所以哩,有上述問題的人,要徹底規避自動分頁的機制或減少影響,有以下的幾個作法:

  1. 所有有大圖、流量大的文章,務必使用 Jump Break 分割文章(記得摘要裡當然不能有太多圖和嵌入檔)
  2. 如果有用舊的繼續閱讀 Hack,要嘛就是啥都不做等官方支援、要不就是自己手動去換成 Jump Break (一篇篇改原始碼好累)
  3. 整個取消官方的分頁機制,搜尋、分類和存檔全部都用 JSON & Javascript 的 Hack 模組來取代(RSS Feed 動態載入)
  4. 直接避免在文章內塞太多的大圖、減少頁面載入流量

Blog 文章如果多一點,舊文章的標籤和搜尋常用的話,除非慢慢等官方修正、或自己手動去改,要不就自己用 Hack 做出相關模組外,應該沒有其他解。舉個例子,像首頁的分頁問題,很久以前我就用「最新文章」的 Hack 放在首頁下方,避免透過官方的分頁切換來看舊文章分頁(透過 RSS Feed 只動態抓標題,沒有載入過慢的問題)。而搜尋結果,Blogger 也有 Google 搜尋框 (Search Box Gadget),這應該也不受自動分頁的限制。剩下標籤和存檔,好像現下還沒有人做過 Hack 模組來取代,不過原理上應該也做得到才是。不過在自己動手做前,還是要重申,雖然是自己的 Blog,但讀者的感覺很重要,沒有人喜歡去拜訪慢得要死的網站(可以用 Pingdom Tools - 網頁測速服務來檢查),站在 Blogger 官方的立場,講好聽點是為了提昇用戶的載入速度,背地裡也是希望使用者不用浪費太多無謂頻寬,既然人家都那麼大方免費提供 Blog Hosting,一些 make sense 的規矩還是要去遵從才是。

參考文章:
Blogger官方自動分頁機制(Auto Pagination)
Auto Pagination Feature Receiving Mixed Review
Auto Pagination And Read More Solutions

回應: 8

白花花 提到...

難怪我的會突然恢復正常~因為有用Jump Break

mrbeartw 提到...

原來如此 難怪只要有超長的文章出現時
篇數就會減少...

ㄚ晟 提到...

我對版形真的是!@#%#$%
可以請你幫我看一下嗎?
我的 較新的文章 首頁 較舊的文章 都不會在文章的下方
而是跑到文章的右邊去了
怎麼會這樣,我可以怎麼改呢?
http://pregnant-life.blogspot.com/

ㄚ晟 提到...

http://pregnant-life.blogspot.com/
我剛剛改過東西 看不出來了
請看這一個
http://it.notes.tw/
真是謝謝你

ㄚ晟 提到...

修改好了,還是謝謝你^^

希锐亚 提到...

Abin大大,我发现我Blog上的留言删除图标不见了.我记得以前是可以删除自己的留言的,于是特意在你的Blog上发了条留言,却同样找不到删除图标,你知道这是什么原因吗?能不能让它显示出来?谢谢!

三金 提到...

Abin大大,我想修改一下模板,使得有链接的文章,可以自动跳转,添加的代码如下,可是模板格式不对,麻烦帮忙看看改如何添加上去
<meta expr:content='1; URL=data:post.link' http-equiv='refresh'/>

BiApp 提到...

請問我blogger 首頁 文章數 設定10篇 變5篇也是因為文章過長的原因嗎???
我想說是我的部落格被我改壞了.......

張貼留言

歡迎留言或發表意見,不過要理性不做人身攻擊。匿名的朋友得到回應的速度會比較慢喔~
發問相關的禮貌和規矩請先參考這篇文章,不當留言、和本文無關的回應可能會被直接刪除無視喔!