2006年1月8日 星期日

More Raw Request Mode hack v0.3

這個 hack 發表後,有興趣的人似乎不多?!倒是 Oscar 有這樣的回應

Isn't 6 request generators a bit too many? We could replace the current "raw" one with one of these two. After all, current "raw" urls will always work no matter what method is currently being used...

也就是這,這兩種模式的其中之一未來可能會取代目前的一般網址模式,還有,目前的一般網址模式也要能夠正常運作。當然,這是向下相容的必要做法。

所以,依據 Oscar 的要求, hack v0.3 版出爐了。

2006年1月4日 星期三

如何預設啟用外掛程式?

2006/04/18 更新:

maomaode 在論壇裡提到了本文所列出的程式碼不夠完善,並提出了他修改後的程式碼跟大家分享。我想,這就是自由軟體的好處吧!大家都有使用軟體的自由,也因此,讓軟體進步的更快快去看看吧!

很多人都在想安裝了一些防圾垃干擾外掛後讓每個 blog 都預設啟用它們。但是大部份的 plugin 都沒有把這個寫進去。今天 maomaode 又在論壇問起,基於因一時記錯,給錯資訊的罪惡感,於是拿 authimage 來試試。

其實做法非常簡單,每個 plugin 都會有一個 Plugin{pluginname} 的類別,裡面有一個 register() 方法。在 api 文件裡面這樣說

This function is called only once when the plugin is registered. Please use this method in case your plugin needs to perform some initializations before it is used, specially if the initialization process requires access to the plugin/blog settings......

More Raw Request Mode hack V0.2

安裝 LifeType 時,經常看到的問題是,想使用簡潔網址ModRewrite 網址模式、或自訂網址模式時,因為 WWW 主機沒有開放修改 .htaccess 的權限,或是使用了 IIS 主機而缺乏必要的支援,結果只能使用一般網址模式。

一般網址模式也沒什麼不好啦,就是網址經常又臭又長,不易記,不易用,不利搜尋引擎搜尋。這裡提供兩種新的網址模式,讓你的一般網址也能像簡潔網址般簡單,或是擁有自訂網址模式般的靈活運用。這兩種新的網址模式為:

  • 一般簡潔網址模式 ( Pretty Raw Request Mode ) 網址範例: http://your.server/lilfetype/index.php?action=/get/1/1
  • 一般自訂網址模式 ( Custom Raw Request Mode ) 網址範例: http://your.server/llifetype/index.php?action=/yourblog/1/2006/01/01/73

從上面的範例網址,你應該看出來了。沒錯,它跟一般網址不同的地方在於,都只用了一個 request 變數,而變數的內容為 blog 的相關網址,他們完全相容於簡潔網址模式和自訂網址模式,甚至,一般自訂網址模式使用與自訂網址模式完全相同的網址設定

有興趣嗎?請繼續往下看。

2006年1月2日 星期一

Pretty Raw Request Mode 試作

2006/01/04 補充說明:

因為我已經改過網址的格式,所以文章裡的下載連結取消,新版 hack 請參閱另一篇文章「More Raw Request Mode hack V0.2」。

LifeType 目前有四種網址模式如下:

  • 一般網址模式 ( NORMAL_REQUEST_MODE ) 所有的網址以 request 變數的方式放在網址中,主要是以各種 Id 組成。
  • 簡潔網址模式 ( SEARCH_ENGINE_FRIENDLY_MODE ) 將 request 變數裡的各種 Id 組合成 Path Info ,讓網址成為搜尋引擎易於搜尋的模樣。這必需要 WWW 主機有支援並開啟 Path InfoErrorDocument 重導向的功能。
  • 網址重寫模式 ( MODREWRITE_MODE ) 其實這個模式很少看到有中譯名。這種模式利用 apache 的 rewrite url module 將易讀的網址重寫回一般網址的型式後,再以一般網址模式處理。這必需要使用 apache server ,並且支援及啟用 rewrite url module 才行
  • 自訂網址模式 ( CUSTOM_REQUEST_MODE ) 網站管理者可以依特訂的方式自訂各種網址,必需要 WWW 主機支援 ErrorDocument 重導向才能使用。

以上四種網址模式,除了一般網址模式之外,都需要 WWW 主機額外的一些支援。這些支援對租用虛擬主機架設 LT 的人來說,經常會受到限制,尤其是對不支援自訂 .htaccess 設定的虛擬主機而言,一般網址模式成為唯一的選擇。

一般網址模式並不是不好,但是過多的 request 變數,讓網址不易記,不易看,也不易用( 例如論壇裡 3gboke 關於 flash mp3 player 的討論 ),也較不利搜尋引擎搜尋。於是我想提出第五種網址模式,他只需要一般網址模式的環境,而且網址裡面只有一個 request 變數,希望能夠讓一般網址更易記易用

目前已有初步的成果,只要修改兩個檔案,新增一個檔案,並修改一個資料庫設定值就可以啟用了。若有興趣,請往下看。

2005年12月30日 星期五

赫伯老爸的名言

赫伯老爸是誰?

今天看了機器人歷險記,很好看的一部動畫卡通,雖然看的是中文配音版,但是難得的是另有一番味道,不會像有些中文配音的片子看起來很奇怪,不自然。

在模版裡調用 PHP 的 Request 變數

如果想在模版裡面調用 PHP 的 Request 變數讓模版使用,例如「如何每個分類文章頁面頂端都會不同的FLASH或圖片」的討論串裡,要取得 postCategoryId 這個 $_GET 陣列元素在 header.template 裡面使用?

答案是:使用 Smarty 保留變數( reserved variables )

2005年12月28日 星期三

使用 hack 的代價

我的 blog 站使用了兩個 hack ,一個是摘要頁面公告核心補強 v0.1,另一個是更換 WYSIWYG 編輯器為 TinyMCE 。這兩個都還不是 LifeType 的正式功能,所以昇級時,真是辛苦。除了一般的昇級過程之外,升級之後還得要重新做上面的兩個 hack ,還得確定這兩個 hack 需不需要再修改

答案是什麼?還好,不需要修改,重做 hack 就行了。 Lucky !

2005年12月26日 星期一

LifeType 1.0.2 正式版釋出

這是開發團隊給 LTers 的聖誕節禮物。

這次的更新版本有兩項特色:
1.首次提供了 1.0.1 版昇級至 1.0.2 版的昇級包。
2.由開發中的 1.1 版移植了兩項隱藏功能:
2.1 跳過「管理面版」直接進入「發表新文章」界面。
2.2 在註冊程序中加入 CAPTCHA 機制,使用驗證碼來避免註冊機器人的干擾。

詳細說明請參考官方發佈訊息:

各位 LTers 更新的時間到了,加油吧!

譯完了官方發佈消息之後,接下來該我自己昇級了。

2005年12月23日 星期五

好用的 awk 命令

使用 awk 命令做 Linux 上的帳號批次管理,我已經用很久了。真的很好用!

剛好今天應教學組長的要求,重設了一個班學生的密碼,順便記下來吧!

以下是我下的指令:

awk -F: '/:207-/
{
cmd="echo newpassword" | passwd --stdin "$1;
print cmd;
system(cmd)
}'
/etc/passwd

這個指令的意思是,從 /etc/passwd 系統帳號檔案裡面抓出 207 班的學生帳號資料,並且把新密碼逐一設定給取出的帳號。

2005年12月16日 星期五

Windows XP 批次遠端關機

電腦教室下課時,經常一堆小朋友忘記關機就拍拍屁股走人。以前得逛一趟教室,一一尋找出未關機的電腦來處理。感謝伙伴 huihui 把電腦教室的 Windows 網域建立得非常完善,現在可以在座位上對尚未關機的電腦用 shutdown 指令直接令其關機了。

shutdown -s -f -t 0 -m pcname

  • -s :關機 ( shutdwon )
  • -f :強迫中止程式執行
  • -t 0 : 0 秒後關機,也就是立刻關機啦
  • -m pcname :關閉網域上名稱為 pcname 的電腦

透過這一行指令,網域管理員可以立刻強制關閉網域裡的電腦。

但是一個 shutdown 指令只能關閉一部電腦,要關閉多部電腦,那就要借重 for 指令了。

2005年12月15日 星期四

動手玩 LIfeType 模版

最近整理了一個「動手玩 LifeType 模版」的課程,課程內容包括:

  • 認識模版的檔案。
  • 看懂模版 -- 以 post.template 為例。
  • 修改模版注意事項。
  • 動手玩模版:
    • 加入摘要超連結。
    • 製作「關於站長」自訂頁面。
    • 加入網誌統計資料。
    • 修改模版以使用外掛程式。
    • 其他……

2005年12月9日 星期五

更新 TinyMCE 編輯器版本至 2.0.1 final (updated)

2006/07/24 補充說明:

因為 LifeType 1.1 已經將 TinyMCE 做為預設的編輯器,我不準備再更新這個更換 LifeType 編輯器的 patch 。大家一起期待快要推出的 1.1 吧!

謝謝鍾愛永存的站長 yugn 替大家打包了更新版本的 TinyMCE 。這個更新版本使用了官方最新的 TinyMCE 2.0.1 final 版本,解決了一些問題,並且包含了 utf-8 的中文化語系。

yuan 很客氣的寄給我,讓我先試用。我把其中的一些中文化不正常部份做了一些修改,並且在 Linux 下用 zip 重新打包,免得 Linux 用戶還得手動修改權限。

因為 TinyMCE 的文章開始有點多起來了,我未來應該也會多花點時間在關注他,所以增加一個 TinyMCE實驗室的文章分類。

以下為更新版本的下載及更新說明:

2005年12月5日 星期一

近期回響的 RSS feed

這玩意兒太酷了!

這是在 yjchen 的 blog 看到的這篇文章:「為 LifeType 加上 Recent Comments 的 RSS 功能」介紹的實作方法。

從很久以前,就想要實作這樣一個功能了,可以很快的知道 blog 上有沒有新的回響,只是以前對 RSS 還是一知半解,不知從何做起,後來覺得 recent comments 也蠻夠用了,就沒再想過。一看 yjchen 的實作方法,只有佩服兩字。

用力推!

2005年12月1日 星期四

LifeType 在 SourceForge 也改名了

繼所有的 文官方網站完成更改網域名稱之後, SourceForge 裡的 pLog 專案也已經不在存再,改名為 LifeType 了。

所以,現在要到 SourceForge 下載 LifeType 的相關檔案,要改到 http://sourceforge.net/projects/lifetype 網址了。

2005-12-04 更正。剛剛一試,上面的網址又不能用了?!還是得用 http://sourceforge.net/projects/plog 。難道當時剛好遇到官方在測試新的專案網址?還是我在做夢?

2005年11月25日 星期五

替回響加上 TiyMCE 的功能(增修 1 版)

原來我是覺得,回響不需要這麼複雜的功能,沒什麼興趣實作。可是看了網友 uranusforever 的慘痛經驗(請參閱論壇的這個討論串:關於tinymce的問題與建議),心想有這麼困難嗎?於是便試作看看。剛巧,被阿欣看到了…

反正,照下面這樣做就對了:

增修 1 版

  • 日期:2005-11-27
  • 增加解決在 IE 下無法顯示回響編輯區問題的方法。