舊週記

隨意玩玩,竟然就把2001-2005的舊週記全部匯進blog了。比想像中的簡單;本來是想要把舊週記的文字檔寫程式轉成RSS 2.0再用匯入功能的,不過後來發現這樣的話文章代稱(slang)會弄丟;最後用EmEditor取代功能 —— 可以用Regular Expressions —— 把文字檔轉成SQL指令丟進來。

Regular Expressions 真是好物呀… 感動*。

匯進來之後發現圖片破掉了,還有以前的文章有不符現在xHTML的用法之類的(例如我以前都沒用<blockqoute>引用文字而是用 inline style);於是靠匯出SQL把文字做批次取代在 UPDATE 回去把這些東西修掉。

應該說… phpMyAdmin是好物這樣嗎XD。

未來不需要再做這些麻煩的轉換了;XHTML,WordPress能把所有文章parse成RSS2.0讓其他程式利用。想當年第一次可是手動把一百多篇文章的\r\n\r\n換成</p>呢說,真沒效率。

來說說內容:第一篇文章是2001年4月寫的,最早是放在某日記CGI程式上,被轉了3次所以文章內容很早以前就不符了(2001年當然沒有WordPress可以用)。這幾年的文章加起來有206篇,涵蓋了甄選上高中和申請到大學的軌跡;中間斷了半年就是了。

順應這篇週記的最後一句話的想法,用搜尋算了一下:blog 內目前有 251 篇文章,其中94篇文章含有「其實」、226篇文章含有「」。不知道有沒有其他我用的比「其實」還要頻繁但是沒有自覺的單詞。

嗯,那些文章的回應都關掉了;robots.txt也設了。沒事不要跟過去的提姆聊天,現在的提姆不一定喜歡這件事。

Weblog to CMS

Photo Matt » Weblog to CMS,原文是From Weblog to CMS with WordPress

文章的大意是說它怎麼改了佈景主題和首頁(寫了一個home.php把原來的blog首頁 —— 顯示*篇最近文章 —— 換成 static page)把Weblog程式當CMS(=網站內容管理)用。它的修改很少,只是要showWordPress當CMS用的idea而已。

WordPress,不但是個優秀的blog程式,也是個優秀的CMS程式啊(茶)。

看到這篇文章的時候想到緩慢進行的新版松山高中網站計畫(倒),現在正在做點idea的testing和決定前台到底是改theme、加上Widgets Plugins就好了(首頁是需要顯示最近幾篇公告反而不用幹掉blog首頁),還是整個全部重寫(說不定還比較快)。

突然懶惰了;要是我另外一個打工寫的網站也用WordPress當CMS直接改theme就好了XD。下星期要出prototype,有deadline的東西做起來特別沒有靈感…

還是不要拿快樂的事當飯吃好了。

<language> Element in RSS 2.0 Specification

<language> element in a RSS Feed specifies the language that this feed is written in. WordPress prints the value of `rss_language` option.

This can be consider as a bug in WordPress – there is no option in admin page to change the value, you have to change it by yourself from the database. This affects everyone who blog using WordPress and blog in non-English lanugage.

Another problem of mine: What should I do to express the fact that the feed of my blog is written in both Chinese and English? RSS Spec doesn’t allow <language>en,zh-tw</language> expression (invaild ISO country code) nor the <language>en</language><language>zh-tw</language> (cannot be used twice).

Maybe I just … can’t. In this moment, I think I should edit wp-include/wp-rss2.php to read value from polyglot.

Before WordPress fix the bug, everyone should change their `rss_language` value in `options` table to stop your feed sending bad metadata.

RSS Feed裡面的<language>元素定義這個feed撰寫的(人類的)語言。WordPress會拿選項資料表裡的 `rss_language` 來顯示。

然後,這算是WordPress的一個bug —— 網站管理員裡面並沒有任何設定可以改這個資料;安裝的時候也沒有。所有 blog feed 送出來的語言定義都是 en ,除非您自己去資料庫修改。這個bug影響所有用WordPress寫blog的人

接著就是我的問題了:我要怎麼表達我的 feed 是用英文與中文兩種語言撰寫的?RSS標準格式不准許 <language>en,zh-tw</language> 寫法 (無效的 ISO 國家代號),也不准用 <language>en</language><language>zh-tw</language> (此元素不可使用兩次)。

說不定我根本就無法這樣定義。總之我應該會去改 wp-include/wp-rss2.php 讓它去讀 polyglot 的設定值吧。

在WordPress提供可以修改 `rss_language` 的選項之前,大家先趕快去資料庫的 `options` 資料表改吧。不然會一直送錯誤的資料出去喔(飄)。