分類
TatterTools

TT的$suri好用資訊

在實作這麼多支 plugin 後, 因為網友在留言問了 RSS for Categories plugin 的問題, 於是找到了韓國 TT 官網上的 plugin 名稱為 Sub RSS (for TT 1.0.2), 接下來就測試, 也觀察這個 plugin 的實作方式及用法. (link)

因為都是韓文, 所以也就看不懂說明, 不過看 code 多少可以看得懂用法, 這個 plugin 是用來做在分類檢視(Category View)及標籤檢視(Tag View)下, 將 [ ##_SubRSS##_ ]這個代碼取代為一個 RSS 的圖案, 並含有在該分類檢視或標籤檢視下的 RSS 連結, 可以達成該網友問的問題的參考解答.

在看 code 的過程中, 發現有個好用的變數: $suri , 主要記錄了該網頁對應於 TT 內的功能目錄及參數, 以下簡單說明:

  1. $suri[‘url’] 是從根目錄以下的完整 url, 例如 /tim/notice/52
  2. $suri[‘directive’] 是指用途或功能, 例如分類檢視就是 /category 而標籤檢視就是 /tag
  3. $suri[‘value’] 是指對應於 directive 的功能參數, 例如在分類檢視時就是 程式技術
  4. $suri[‘page’] 及 $suri[‘id’] 是用來判定分頁的狀況

這樣似乎就可以用來判斷何時為獨立文章內頁的讀取, 在追 TT source code 的 /blog/index.php 第 1474 行內有個:

(($suri[‘directive’]==’/’||$suri[‘directive’]==’/entry’)&&$suri[‘value’]!=”))

就是用來判斷是否為獨立文章內頁, 這行是用來決定是否要出現 trackback 的展開(好玩的是能這樣判定, 為什麼不將 more/less.. 展開在獨立文章內頁閱讀呢?). 這樣就解決了想判斷使用者是否是閱讀獨立文章, 或只是表列文章, 這對於 ViewCounter 這個 plugin 有重大的判斷準則了, 我就可以很容易地在綁定 ViewPostContent 這個 event 內判定是否為獨立文章內頁, 而進行更正確的記數了, 但在思考了一下, 有趣的問題又來了, 因為 TT 的表列文章時, 使用者仍是可以正常閱讀全文的, 但若僅在獨立文章內頁才計數, 似乎又不太夠, 於是就暫時先不考慮修改目萴 ViewCounter 1.0 的版本, 請各位給些意見參考囉.

不過從實作 plugin 可以看得出來 TT 的毛病及問題, 也可以看得到不錯的設計及架構, 對於程式實作的功力, 的確有相當的幫助.

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *