因為 Aboutweb 來信說怎麼我都沒有把廣告掛上去,所以我就在每篇文章的前後各加了一欄廣告,一個放 Aboutweb,一個放 AdSense。
Aboutweb 的 JavaScript 好像不太喜歡 Zope,會丟一些和 Zope 認證相衝突的 cookie 到瀏覽器裡面,我沒搞清楚詳細的狀況。反正,如果在一個 Zope 頁面裡看了 Aboutweb 的廣告,塞了它的 cookie,該頁就會不能登入 ZMI。
為此只好再改動一下 COREBlog 的程式了 (真的很不想動,一動就得紀錄下來,昇級時又多了一件麻煩事)。在 COREBlog.py 的 manage_addEntry 裡加上:
kw['nocommercial_before'] = 1 kw['nocommercial_after'] = 1
這兩行,如:
kw['noheader'] = 1 kw['nocomment'] = 1 kw['nocommentform'] = 1 kw['nocommercial_before'] = 1 kw['nocommercial_after'] = 1
而 Entry.py 的 manage_editEntry 也要照貓畫虎一下。
在 skin 裡文章前後的廣告各會檢查 nocommercial_before 和 nocommercial_after ,如果有設值,就不顯示廣告。這個機制和 nocomment 與 nocommentform 都是一樣的。
雖然是被 Aboutweb 逼著改的,不過這 skin 是需要這樣更動一下程式;在預覽文章的時候出現廣告,像什麼話呢。