Toggle main menu visibility
新聞
下載
教材
影音
討論
其他選單
好站連結
行事曆
電子相簿
常見問題
萬用表單
即時留言簿
友站消息
社大學員
:::
登入
登入
帳號
密碼
登入
重整畫面
:::
所有書籍
「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://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書籍區
即時留言簿
書籍目錄
展開
|
闔起
線上使用者
115
人線上 (
71
人在瀏覽
線上書籍
)
會員: 0
訪客: 115
更多…