最近半個月用 Javascript 把一般部落客想要作的功能做出來後,很高興有些網友有興趣,老實講這個版型範本不是很容易了解,尤其是有含了HTML/CSS/Javascript/Blogger 的這些指令混合在一起,會搞得七暈八素,頭昏腦脹。所以我再寫點很雜的說明,同樣地,有興趣的人仍然可以留言在下方來索取這個範本。
1. blogger 的版型標籤的指令
blogger 這個平台的版型設計的指令很簡單,有兩種:<$.....$>及<.....></.....>,前者就是把必要的字串從你輸入文章的資料表各欄位取出來就是,或者是提供一些你在主控台設定的一些參數;後者的作用是提供一個"迴圈"或者是設定"條件式"
條件式常用的有三個,就是<MainPage></MainPage> <ArchivePage></ArchivePage> <ItemPage></ItemPage> 就是如果系統在組首頁的時候,在 <MainPage></MainPage> 中間的資料會被組出來,如果在組彙整頁(ArchivePage)的時候,這些資料就會被忽略掉。
迴圈其實只有兩個指令<Blogger><BlogItemComments></BlogItemComments></Blogger>。<Blogger>這個迴圈如果是在首頁(MainPage)組版就是全部的文章,如果在內頁(ItemPage)組版的時候,就是那篇文章而已。而<BlogItemComments>這個迴圈就是該篇文章所有的留言的迴圈。
這個其實我都是看 http://help.blogger.com 這個網站的說明學得的,只要有點程式基礎應該很容易看的懂。
2. 版型範本的分區
所以要看懂我寫的混亂版型,大概就要分區了,我稍微加了點註解,但不是很多,我分了 CSS/Javascript/Blogger/Sidebar 這幾區。
CSS區,如果只是要調整字型大小、顏色,或者主要顯示區的大小,甚至是要把 sidebar放到左邊去,這個只要調整 CSS 即可。
Javascript 區主要是把 Function 全部都集中在這區,當然大部分是 MainPage 內有這些 function,ItemPage 內也有一個 function是要通知 parent 用的。
Blogger 區就是剛剛上面提的要組版的時候的主迴圈,而這個區域仔細看,我又分了三區 MainPage/ArchivePage/ItemPage。
SideBar 區就比較簡單了,只有首頁會多幾個功能,統計文章數目、分類標籤及最新迴響的顯示,其他的無論在哪一頁就都差不多了。
3. 目前還可以加強的部份
其實我試了很多種方法,試圖讓這個部落格的首頁可以讓別的網站外掛資訊,類似 furl.net 這種方式,這樣的話在推廣部落格有很大的誘因,但是 Javascript 以及 DHTML 的安全性問題似乎無解,這個我想我就不要再玩了。除了用 IFRAME 的方式應該別無他法、不然也可以用 BASE HREF= 來騙騙瀏覽器,可是這樣似乎沒有什麼意義!
功能做的越多,你會發現介面會越複雜,如果不想把介面搞的很亂的話,有一招是可以有設定值,要如何設定呢?當然就只有利用 cookies 啦!把設定參數的網頁放在其中一篇文章,然後存在 cookies 裡面,然後首頁顯示的時候再讀出 cookies 拿來用即可,這樣是不是很炫,例如最新迴響要顯示幾篇,你的網站分類標籤要顯示多少,或者預設開幾篇內文,依照什麼作為排序的依據,這些都可以放在設定值裡面,甚至版面的顏色等等要個人化設定,都可以做得到。
另外還有很多人希望可以把留言迴響的輸入介面放在同一篇文章內,這點在 http://bloggerhacks.blogspot.com/ 網站就有實作的方法,不過我個人覺得 blogger.com 的留言介面就已經做的不錯了。
還有,目前的分類連結其實在內頁會顯示出來在標題的下方,如何加上"連結"讓瀏覽者回到首頁,顯示出該分類,或者是點了連結把該分類的文章全部顯示出來,這個其實已經不難做了,用 javascript 都可以很容易做出來。
暫時先寫到這裡,其實還想到可以做到的一堆事情,就留待版本2.0了!我也沒有多大的動力寫這些加強功能,還是多寫文比較實際。