:::
所有書籍
「1041 XOOPS模組開發」目錄
MarkDown
1. XOOPS的開發環境
1-1 xoops_version.php
1-2 languages/tchinese_utf8/modinfo.php
1-3 images/logo.png
1-4 tad_ebook 資料表
1-5 tad_ebook_page 資料表
2. 後台頁面與表單物件
2-1 sql/mysql.sql
2-2 xoops_version.php
2-3 admin/menu.php
2-4 language/tchinese_utf8/modinfo.php
2-5 templates/tad_ebook_adm_main.html
2-6 admin/main.php
3. 樣板與管理功能
3-1 admin/main.php
3-2 temaplates/tad_ebook_adm_main.html
4. 前台頁面與HTML表單
4-1 admin/main.php
4-2 /templates/tad_ebook_adm_main.html
4-3 /interface_menu.php
4-4 /post.php
4-5 /templates/tad_ebook_post.html
4-6 /xoops_version.php
5. 前台顯示及各種控管
5-1 /post.php
5-2 /templates/tad_ebook_post.html
5-3 /index.php
5-4 /templates/tad_ebook_index.html
5-5 /xoops_version.php
6. XOOPS群組與權限
6-1 /admin/menu.php
6-2 /admin/groupperm.php
6-3 /modules/system/admin/groupperm.php
6-4 /interface_menu.php
6-5 /xoops_version.php
6-6 /function.php
6-7 /verify.php
6-8 /templates/tad_ebook_verify.html
6-9 /post.php
6-10 /templates/tad_ebook_post.html
7. 搜尋、語系、偏好設定、自動功能
7-1 /templates/tad_ebook_post.html
7-2 /xoops_version.php
7-3 /include/search.php
7-4 /admin/main.php
7-5 /language/tchinese_utf8/admin.php
7-6 /templates/tad_ebook_adm_main.html
7-7 /language/tchinese_utf8/modinfo.php
7-8 /post.php
7-9 /include/onUpdate.php
7-10 /include/onInstall.php
7-11 /sql/mysql.sql
7-12 /include/onUninstall.php
7-13 /index.php
8. 上傳、區塊與BootStrapS3
8-1 /xoops_version.php
8-2 /sql/mysql.sql
8-3 /include/onUpdate.php
8-4 /admin/main.php
8-5 /templates/tad_ebook_adm_main.html
8-6 /blocks/tad_ebook_list.php
8-7 /templates/blocks/tad_ebook_list.html
8-8 /index.php
8-9 /templates/tad_ebook_index.html
9. 評論與通知功能
9-1 /xoops_version.php
9-2 /index.php
9-3 /templates/tad_ebook_index.html
9-4 /comment_new.php
9-5 /include/notification.inc.php
9-6 /admin/main.php
9-7 /language/tchinese_utf8/mail_template/new_ebook.tpl
9-8 Uniform Server的信件設定
9-9 /templates/tad_ebook_index_b3.html
9-10 /templates/tad_ebook_verify_b3.html
9-11 bootstrap2與bootstrap3水平表單結構
9-12 /templates/tad_ebook_post_b3.html
9-13 /templates/tad_ebook_adm_main_b3.html
1-1 xoops_version.php
1041 XOOPS模組開發 ============== [![](http://tad0616.net/uploads/dl.gif)](http://www.tad0616.net/uploads/tad_book3/file/1041/01.zip) ### 一、 關於本課程 1. 講義:[http://www.tad0616.net/modules/tad\_book3/index.php?tbsn=37](http://www.tad0616.net/modules/tad_book3/index.php?tbsn=37) 2. 請[申請 Dropbox](http://db.tt/3rsYVB1y),一旦發布講義,您的電腦會馬上收到。 3. 本課程是系列中的第四個學程,屬進階部份,因此,有任何聽不懂的:拜託您問! 4. 上課歡迎卯起來走動,互相觀摩交流,盡量別保持安靜。飲食部份請至走廊食用。 5. 上課時間為週六 9:00~12:00 及 13:30~16:30,共計九次。 6. 上課歡迎拍照、錄音、錄影,能和同學分享更好。 7. 座位基本上沒有強制性,但也不建議每次都換來換去。 8. 記得認識一下助教!開發經驗豐富的郭俊良與李佳玲。 ### 二、 這學期會學到... 1. XOOPS:要寫XOOPS模組,當然要熟悉XOOPS的操作方式 2. PHP:XOOPS是用PHP開發的,所以要寫好模組,PHP能力不可或缺。 3. MySQL:XOOPS資料一律存至資料庫中,也就是SQL資料庫語言。 4. HTML5:用來撰寫模組外觀架構、表單...等。 5. CSS3:用來美化模組外觀 6. BootStrap:快速導入自適應框架,讓您的系統在手機跑看起來也一樣美觀。本學期同時會了解BootStrap2以及BootStrap3 7. Smarty:XOOPS內建樣板引擎,用來製作模組樣板。 ### 三、 開發工具:以sublime text為主 1. 只要是自己熟悉的純文字編輯工具都可以。首推 [sublime text](http://163.26.52.243/modules/tad_uploader/index.php?op=dlfile&cfsn=7&cat_sn=1&name=sublime%20text64.zip),其次為 [NotePad++](http://120.115.2.90/modules/tad_uploader/index.php?op=dlfile&cfsn=29&cat_sn=7&name=npp.zip),基本上沒有限制,您用得習慣即可。 2. 可用 Ctrl+/ 或 Ctrl+Shift+/ 來產生註解符號 3. 用tab鍵縮排,Shift+tab反縮排 4. 更多進階用法:
### 四、 開發環境:XOOPS輕鬆架的安裝與設定 1. 需有XOOPS網站,理所當然的會有網頁伺服器(如:Apache)、資料庫(如:MySQL或MariaDB)、PHP這些基本環境。 2. 申請學生練習主機空間(
) - (1) 學生練習主機為Linux主機,僅社大學員可以申請(FTP及MySQL帳號)。 - (2) 使用期限為本學期,學期結束後,可能隨時會清除舊資料,故請自行備份。 - (3) 申請後,您的網站網址為:「
http://163.26.52.243/~帳號
」 - (4)
資料庫和FTP帳號、密碼是一樣的!
- (5) 資料庫位置:[http://163.26.52.243/modules/tad\_adm/pma.php](http://163.26.52.243/modules/tad_adm/pma.php) 3. XOOPS:本學期以 XOOPS 2.5.7為主要開發環境。請先裝好最新的 tadtools 模組。 4. 一般開發環境可在windows底下開發,開發完後,再上傳到Linux主機即可。 5. 請至 [http://120.115.2.90 ](http://120.115.2.90)下載所需的XOOPS輕鬆架版本,並安裝之。 6. windows版的內含UniformServer伺服器,解壓後,執行 start.bat 即可啟動網站。 7. 相關安裝請參考線上手冊或上課講解示範,安裝完請將所有內建模組更新到最新版。 ### 五、 幾個您要知道的位置(假設裝在D:) 1. 網頁目錄的位置:D:\\my\_xoops\\www 2. 資料庫的存放位置:D:\\my\_xoops\\core\\mysql\\data 3. PHP 設定檔 php.ini 的位置:D:\\my\_xoops\\core\\php54\\php\_production.ini 4. MySQL設定檔 my.ini 的位置:D:\\my\_xoops\\core\\mysql\\my.ini 5. 網站連結位置:http://電腦IP或http://localhost或http://127.0.0.1 ### 六、 下載XOOPS250ModuleConversionFiles 1. OOPS250ModuleConversionFiles是官方提供的基本模組架構,但下載的版本已經有先經過優化,並加入bootstrap各版本支援,所以,會建議用此版(20150321)來開發比較容易上手。 2. 一個XOOPS模組就是一個目錄,此目錄會放在modules底下。 3. 底下是新的(2.5之後的)XOOPS的模組目錄建議結構(PHP > 5.2):
admin
**
blocks
**
class css docs
images
|--- admin |--- icons include
**
language
**
|---
**
english
**
|--- help
sql
**
templates
**
|---
**
blocks
**
test
模組後台目錄 區塊檔案目錄 額外的物件庫或函式庫目錄 模組樣式目錄 說明文件目錄 圖檔目錄 |--- 後台界面用到的圖檔 |--- 其他圖檔 引入檔目錄:如搜尋、模組自動檔 語系目錄 |--- 英語語系(Big5中文為tchinese、UTF-8為tchinese\_utf8) |--- 說明文件語系 資料庫結構目錄:裡面會有.sql檔 模組樣板目錄:用來放置模組頁面的樣板檔,均為.html檔 |--- 區塊樣板檔:一樣為.html檔 測試檔目錄:放置Selenium 測試檔
4.
**粗體底線**
的目錄(如果有用到該功能的話)則是一定要有的,而且
不能亂改目錄名稱
! ### 七、 認識 xoops\_version.php 1. XOOPS的模組目錄下一定有xoops\_version.php設定檔,否則就不是標準模組。 2. 請依照設定檔順序,產生相對檔案出來。 3. $modversion\['version'\] 版本號寫法:1.0、2.3...均可,但1.0.1需寫成 1.01。 4. $modversion\['module\_status'\]模組狀態可以是Alpha、Beta、RC、Release 5. $modversion\['adminmenu'\]後台選單的圖示為32x32,可從這裡下載: - (1)
- (2)
6. 利用
可線上編輯按鈕。文件→打開圖片→上傳按鈕底圖。圖層→打開圖像為圖層→上傳小圖示。利用文字工具輸入名稱,新細明體12級 ### 八、 xoops\_version.php 中的語系 1. xoops\_version.php 若有用到中文的部份,建議做成語系檔。 2. 若只是自用,那直接寫中文亦可(字串一定要加上引號),但偏好設定,一定要用語系。 3. xoops\_version.php 的語系檔一律位於 language/tchinese\_utf8/modinfo.php 中(不可自訂檔案或改檔名) 4. 語系設定方法: define("\_MI\_語系名稱" , "對應的實際中文"); 5. 「\_MI\_語系名稱」是PHP常數,\_MI 則是XOOPS建議的常數開頭,一般而言建議用底線開頭,並全部大寫,以容易識別(但其實無強制性)。 6. 一般 \_MI 後面會加上模組名稱,以避免常數衝突,例如: \_MI\_MYMOD\_XXX ### 九、 建構模組所需資料表(mysql.sql檔) 1. 請利用站長工具箱中的資料庫工具(http://網址/modules/tad\_adm/pma.php) 2. 選好資料庫,點選下方「建立資料表」按鈕,建構模組所需的資料表結構。 3. 接著,利用左邊匯出工具來匯出成sql檔,輸出選「儲存」,格式選「SQL」即可。 4. 檔案請存至 sql 資料夾底下,並修改 xoops\_version.php 的 $modversion\['sqlfile'\]\['mysql'\] 設定值。 ### 十、 本學期的模組開發目標 1. 將以上學期的新聞模組為基礎,將之延伸,成為電子刊物模組。 - 電子刊物可分期(所以需要一個資料表紀錄期刊資訊,第幾期?出版日、主題、封面、主編...等) - 特定群組可投稿(利用內建的權限資料表達成) - 可指定由誰來審核(利用偏好設定來簡單達成即可,或者亦可紀錄至期刊資訊表) - 可分單元(即原來的分類表) - 可編輯圖文(即原來的文章內容表) 2. 「期刊資訊表」ebook
**列**
**類型**
**註解**
ebook\_sn
smallint(5) unsigned *自動遞增*
刊物編號
ebook\_title
varchar(255)
刊物標題
ebook\_post\_date
date
投稿截止日
ebook\_publish\_date
date
發行日
ebook\_editor
varchar(255)
編輯群
3. 「單元分類表」ebook\_cate
**列**
**類型**
**註解**
cate\_sn
smallint(5) unsigned *自動遞增*
單元編號
cate\_title
varchar(255)
單元名稱
ebook\_sn
smallint(5) unsigned
刊物編號
4. 「文章內容表」ebook\_content
**列**
**類型**
**註解**
page\_sn
smallint(5) unsigned *自動遞增*
文章編號
cate\_sn
smallint(5) unsigned
單元編號
page\_title
varchar(255)
文章標題
page\_content
longtext
文章內容
uid
smallint(5) unsigned
作者編號
author
varchar(255)
作者姓名
post\_time
datetime
投稿時間
status
varchar(255)
文章狀態
counter
smallint(5) unsigned
計數器
note
text
備註
:::
搜尋
search
進階搜尋
QR Code 區塊
快速登入
所有討論區
「PHP全端開發」線上課程討論區
XOOPS使用討論區
一般研習學員
社大學員專用
路過哈啦區
XOOPS佈景設計
XOOPS模組開發
Tad書籍區
即時留言簿
書籍目錄
展開
|
闔起
線上使用者
51
人線上 (
9
人在瀏覽
線上書籍
)
會員: 0
訪客: 51
更多…
:::
主選單
NTPC OpenID
活動報名
模組控制台
進階區塊管理
站長工具箱(急救版)
網站地圖
Tad Tools 工具包
站長工具箱
行事曆
討論留言
嵌入區塊模組
快速登入
網站計數器
好站連結
最新消息
檔案下載
線上書籍
電子相簿
影音播放
常見問題
萬用表單
友站消息
社大學員
新聞
下載
教材
影音
討論
其他選單
好站連結
行事曆
電子相簿
常見問題
萬用表單
即時留言簿
友站消息
社大學員
登入
登入
帳號
密碼
登入