線上書籍

Home

[1011]XOOPS 2.5 模組開發

一、 建立搜尋檔
  1. 建立include目錄,並將教材中的「搜尋檔範本search.php」複製到include中,修改檔名為search.php,隨後修改之。
    • 「搜尋函數名稱」自訂一個,如:tad_note_search
    • 「資料表」:tad_notes
    • 「主鍵」(主索引,流水號的那一欄):note_sn
    • 「標題欄位」:note_title
    • 「發佈者編號」:uid
    • 「發佈時間欄位」:note_date
    • 「搜尋欄位」:note_title、note_content、note_date
    • 「搜尋條件」:note_public='1'(若沒有就寫1,恆成立之意)
    • 「用來排序欄位」:note_sort
    • 「顯示用小圖檔.gif」:找個16x16的小圖放到images下,並設成其檔名即可。
    • 「欲秀給使用者看的那一頁」:index.php(亦即觀看單一文章那頁的檔名)
二、 在xoops_version.php中加入搜尋設定 $modversion['hasSearch'] = 1; $modversion['search']['file'] = "include/search.php"; $modversion['search']['func'] = "tad_note_search"; 三、 XOOPS語系基本概念
  1. XOOPS有哪些語系,完全取決於language底下有多少種語系資料夾。
  2. 語系檔放在「模組目錄/language」中,請建立tchinese及tchinese_utf8目錄。
  3. 一般而言語系檔會按照用途放在不同檔案,檔名不可亂改,一共有以下幾種:
  4. 「常數開頭」並沒有強制性,只是一種建議。
  5. 若是模組中有用到通知功能的時候,language底下會多出一個mail_template資料夾用來放郵寄內容的樣板。
四、 加入語系常數的方法
  1. 常數可用define()來定義,例如:define("_MI_MOD_TITLE","標題:");
  2. 常數通常會以「_」作為開頭,並用「大寫英文」,以茲辨識。
  3. PHP常數要插入字串中,不能直接把常數放到字串裡面去(不然程式會搞不清楚是字串還是常數),其方法如下:
  4. 原來字串→$aa="<div>標題</div>";
  5. 套入常數→$aa="<div>" . _MI_MOD_TITLE . "</div>";
五、 常數與變數結合的方法
  1. 可用sprintf()來結合常數與變數,常數名稱可用「%s」來代表變數,一個常數中可以有多個「%s」,依位置來對應變數,例如:
  2. define("_MD_MOD_INFO","本模組由 %s 於 %s 做最後更新"); $info=sprintf(_MD_MOD_INFO , $name , $update);