Open Journal Systems

說到線上期刊系統,加拿大的英屬哥倫比亞大學(University of British Columbia)所開發的 Open Journal Systems(姑且翻譯為「開放期刊系統」,以下簡稱 OJS,不過這麼翻譯,實在讓人難免覺得討厭,因為這樣翻譯並沒有精確點出這是「systemS」,但是翻譯成「系統們」也頂彆扭)值得一提。這套系統十分強大,但是問題也就在於,這套系統就是因為功能強大,實際嘗試起來,讓人感覺,設計實在太過複雜。

Continue reading

Vanilla Journal

前兩週因為工作的關係,用 PHP 拼了一個東西出來。

話說木柵某國立大學有一個人渣養成中心叫做傳播學院,這個傳播學院有一個在職專班,這個在職專班從去年開始發行了一份電子刊物,作法是,助教與工讀生一起用 DreamWeaver 做出整期刊物的所有靜態 HTML 網頁,上傳到網頁伺服器上後,用瀏覽器裡頭的寄送網頁功能,將當期期刊的首頁透過 Outlook Express 寄出去,至於要寄給哪些人呢,就是手動維護 Outlook Express 裡頭的通訊錄,如果想要退訂,就請想辦法找到在職專班助教。如此一來,就同時有網頁版本、以及電子郵件版本的線上發行。

基本上我覺得這樣也頂好、頂直觀的。不過呢,這個人渣養成中心有很多眼高手低的老師,總覺得看那份東西不順眼,我也不知道在不順眼些什麼,總之就是想要眼高手低的改個版,然後又眼高手低的想要做一個什麼線上可訂閱、退訂的機制,然後又因為眼高手低所以做不出來,然後就莫名其妙變成我這個苦命助教的工作。

Continue reading

再談 WordPress 2.0 的照片管理

WordPress 2.0 的照片上傳功能有一個地方實在頂鳥的。

如果您用了 WordPress 2.0 所提供的照片上傳功能、上傳照片,那麼,系統除了將你的照片放在遠端主機上之外,同時也會在資料庫中建立這張照片的相關詮釋資料(metadata),其中包括照片的長寬尺寸、以及這張照片在遠端磁碟中的絕對路徑位置;例如,如果您將上傳目錄放在 /home/zonble/www/wp-contents/upload,而您在 2006 年七月間上傳了一張 mypic.jpg 的圖片,那麼資料庫中,就會紀錄上一筆/home/zonble/www/wp-contents/upload/2006/07/mypic.jpg,而這就是麻煩的地方了—如果說改了 WP 的安裝目錄(例如搬到別的機器上、換了帳號…),WP 並不會同時修改過去已經記錄下來的圖片絕對路徑資料。

WP 2.0 會使用圖片絕對路徑資料的地方,包括編輯區的圖片列表等—對,就是那個你可以直接將圖片拖拉到編輯區 WYSIWYG 編輯文章的圖片列表。WP 會先檢查圖片是否放在原來的地方,檢查是不是也有製作縮圖,如果沒有,圖片在列表中就出不來;所以,如果改過了安裝路徑,那也就有必要自己動手改一下資料庫裡頭的東西,把路徑給改掉,於是,又遇到一個麻煩的地方—因為 WP 2.0 是先將資料 serialize 過,才塞進資料庫裡,所以,如果要改這個絕對路徑資料,也就需要先將原本的資料 unserialize,改過,再 serialize 一次,塞回資料庫。

Continue reading

WordPress 2.0 的照片管理

WordPress 2.0 Duke 前兩天正式釋出,不過,按照慣例,有興趣嘗鮮的人大概在正式釋出之前大概都已經先玩過了。WP 2.0 的新功能之一,就是對於照片上傳功能做了一定的改寫,將原本在選單上的「上傳」(Upload)這個選項,移到了發表文章的介面中,稱為是「行內」(inline)的上傳,與之前的版本或其他的網路出版工具相較,之前的照片上傳功能,就是把照片檔案傳到伺服器的某個目錄當中,而 WP 2.0 會在上傳之後,為這張照片發表一篇類型為附件(Attachment)的文章(post,在 WP 的設計中,文章分成「已發表」、「草稿」、「個人私有文章」、「靜態網頁」,以及新增的「附件」),將這篇「附件文章」,當成你正在處理的這篇文章的附件,而在這篇文章當中,寫入關於這張照片的相關 metadata。

例如,如果你設定的文章網址為 http://example.com/post/mypost ,當你上傳一張照片,並且將照片的標題設定為 myphoto 的時候,那麼,當你連到了 http://example.com/post/mypost/myphoto ,就會以一個獨立的頁面,顯示附件的內容。另外,雖然在官方模板中還沒有提供,不過你可以在自己的模板中,增加一個叫做 attachment.php 的 php 檔案,當成是顯示附件的模板。

Continue reading

幾個 WordPress 小技巧

照理說 codex.wordpress.org 將資料整理得這麼齊全方便,許多關於 WordPress 的相關問題,只要稍事搜尋,應該便可以迎刃而解,不過身邊一些朋友或是囿於語言上的限制,或是缺乏一些資料庫以及動態頁面的觀念,要找資料,還是不知如何找起。比方說最近有人就問我這樣的問題:怎樣在頁面的某個位置上,不要從第一篇開始列出文章,而是要自訂只列出第二篇到第四篇;或,第一篇列出全文,而從第二篇到第四篇,只列出標題…等等。

WordPress 是透過 PHP 以及 MySQL 語法,從資料庫中讀取文章內容,所以要限制只抓從某一篇到某一篇的範圍,就是透過 offset(偏移)以及 limit (限制)兩個語法。而用 WP 的術語來說,在index.php 等模板檔案中,用來顯示文章的範圍,叫做 loop,而在首頁、日期彙整、單篇彙整等不同的狀況下,在 loop 中會列出數量、範圍不同的文章,也就是,在程式執行到 loop 之前,其他部份的程式已經幫你設好了資料庫的選擇(select)範圍,然後將這些文章的相關資料(內文、標題等),塞到 loop 當中,再從 loop 中設定的語法,顯示文章。

Continue reading

將圖書館書目資料轉換成引用書目格式轉貼到 WordPress 的 bookmarklet

這個東西是從前面提到的將全國圖書書目資訊網轉換成論文參考書目格式的書籤小工具繼續發展的,簡單來說,這個工具可以讓你在某個圖書館的書目查詢系統,查到某一筆資料的時候,按一下某個書籤,就可以將這筆書目轉成中文論文的引用書目格式,然後透過 WordPress 原本提供的快速發表 bookmarklet 頁面,將這筆資料貼到 WordPress裡頭。然後,你可以使用 WordPress 所提供的分類功能,整理這些書目。

這個工具目前放在中文 WordPress 專案的下載頁面上,把 bookmarklets.tar.gz 抓下來解開之後,會出現一個 bookmarklets 目錄,然後把這個目錄丟到 /wp-contnets/ 底下即可,自然,您需要先安裝一套 WordPress 。要使用的話,就使用瀏覽器開啟 http://example.com/wp-contnets/bookmarklets/,在這個頁面上,您可以看到一個書籤小程式的鍊結,把這個鍊結加入書籤。

Continue reading