Toggle main menu visibility
新聞
下載
教材
影音
討論
其他選單
好站連結
行事曆
電子相簿
常見問題
萬用表單
即時留言簿
友站消息
社大學員
:::
登入
登入
帳號
密碼
登入
重整畫面
:::
所有書籍
「1041 XOOPS模組開發」目錄
MarkDown
7-13 /index.php
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
8-1 /xoops_version.php
1041 XOOPS模組開發 ============== [](http://www.tad0616.net/uploads/tad_book3/file/1041/8.pdf) ### 一、 利用TadTools的TadUpFiles物件來加入上傳功能 1. TadUpFiles物件提供完整的多檔案上傳界面、儲存、刪除及顯示功能,可外掛進任何模組,並提供模組的各種上傳需求。 2. 請直接開啟/tadtools/TadUpFiles.php,裡面有完整用法範例。 3. 務必先建立「模組名稱\_files\_center」資料表。 4. 上傳的檔案會放在「uploads/模組名稱/」下,若一個模組有多種東西要上傳,那麼可設定$subdir,上傳檔則會置於「uploads/模組名稱/$subdir」下。 5. $col\_name及$col\_sn用來綁定上傳的檔案和資料之間的關係。以電子校刊為例,若希望每期都有個封面圖,那麼可綁定每期的流水號欄位ebook\_sn。$col\_name的值就是「ebook\_sn」,而$col\_sn的值就是實際編號「$ebook\_sn」。 6. 若是使用XOOPS表單物件,記得在表單加入額外設定: ``` $form->setExtra("enctype='multipart/form-data'"); ``` ### 二、 模組區塊(Blocks)設定 1. 先在xoops\_version.php中加入區塊設定,如$modversion\['blocks'\]\[1\]\[xxx\]。 2. 在blocks目錄下依據file 的設定值來建立檔案,如:tad\_ebook\_list.php,裡面至少要有一個主函數。 3. 主函數的名稱必須和xoops\_version.php中的show\_func 設定值一樣,例如:tad\_ebook\_list。 4. 主函數的目的僅在於從資料庫抓出資料,送到區塊樣板中,故需在template項目設定樣板名稱,如:tad\_ebook\_list.html,樣板放在「templates/blocks」下。 5. 編輯函數不一定要有,若想要在區塊中做設定值,可以設個edit\_func 6. 有編輯函數就一定要有options來設定預設值,請用「|」隔開預設值。 7. 區塊中若有連結,需注意必須使用「絕對位置」,網址常數:XOOPS\_URL,若是在樣板中則需用<{$xoops\_url}>來做成絕對路徑 8. 若執行錯誤,不建議用redirect\_header轉向,直接die()或忽略之。 9. 將最後內容結果return即可,可以是陣列,也可以是單一值,變數名稱不拘。 ### 三、 建立區塊樣版檔 1. 在templates/blocks依照xoops\_version.php中 template 的值來建立樣板檔案,如:tad\_ebook\_list.html 2. 區塊的樣版檔一律收到樣板標籤<{$block}>,不管顯示函數傳回的變數名稱為何。 3. 樣板中完整連結,如:<{$xoops\_url}>/modules/tad\_ebook/index.php?ebook\_sn=<{$ebook.honor\_sn}> 4. 接著更新一下模組,就可以開始使用區塊了! ### 四、 加入區塊編輯介面函數 1. 我們在原先的區塊程式tad\_ebook\_list.php 加入一個區塊編輯介面函數。目的是產生區塊設定介面,名稱必須和edit\_func 一致。 2. 編輯介面函數其實就是一個網頁表單而已,只不過不需要<form></form>。 3. 表單欄位的預設值即為xoops\_version.php中的options 設定值。預設值的傳遞及使用均透過$options陣列。 ### 五、 修改顯示函數 1. 區塊若要使用區塊的設定值,可以直接引入$options參數,如:$options\[0\] 2. xoops\_version.php中的options 設定值,根據「|」拆開後,第一個值就是$options\[0\],第二個值就是$options\[1\]依此類推。 3. 請將$options\[0\]、$options\[1\]套用到該用的地方。 4. 更新模組,編輯區塊,即可看到效果。 ### 六、 讓前台支援BootStrap3 1. 請先安裝支援BootStrap3的school2015佈景 2. 必須載入tad\_function.php(在function.php中預設有載入) 3. 給bootstrap3用的樣板一律在檔尾加上\_b3如:「原樣板檔名\_b3.html」 4. 到xoops\_version.php中加入新樣板設定,記得更新模組 5. 前台套用樣板時,在員樣板名稱套入set\_bootstrap()函數: 6. $xoopsOption\['template\_main'\] = set\_bootstrap("bootstrap2樣板.html"); 7. 該函數會去判斷bootstrap3是否存在,並偵測目前設定,自動套用對應的樣板。 ### 七、 讓後台支援BootStrap3 1. 修改header.php即可,xoops\_cp\_header();前加入以下幾行,程式部份不需做任何變動。若使用範例包的已經有預先改好了,亦無須再修改。 ``` if(file_exists(XOOPS_ROOT_PATH."/modules/tadtools/include/beforeheader.php")){ include_once XOOPS_ROOT_PATH."/modules/tadtools/include/beforeheader.php"; $xoopsOption['template_main']=set_bootstrap() ; } xoops_cp_header(); ``` 2. php部份不用動,但注意引入順序,$xoopsOption\['template\_main'\] 要在引入header.php之前。 3. 後台因為本身樣板沒有套BootStrap,所以,最外框得自己加: ```
後台樣板
``` ### 八、 讓區塊支援BootStrap3 1. 區塊的PHP程式需加上: ``` $block['bootstrap_version']=$_SESSION['bootstrap']; ``` 2. 樣板部份不用做兩個檔,直接在樣板檔中分兩部份來做即可: ``` <{if $block.bootstrap_version=='3'}> <{else}> <{/if}> ``` ### 九、 BootStrap3與BootStrap2常見的差異部份 1. BootStrap3與BootStrap2的語法大部分一樣,但不一樣的地方一樣不少: - row-fluid → row - span6 → col-md-6 - radio inline → radio-inline - checkbox inline → checkbox-inline - hero-unit → jumbotron - btn-mini → btn-xs - btn-small → btn-sm - btn-large → btn-lg - alert-error → alert-danger - label → label label-default 2. 完整升級請看:
### 十、來調整界面吧! 後台界面:  前台界面: 
:::
搜尋
search
進階搜尋
QR Code 區塊
快速登入
所有討論區
「PHP全端開發」線上課程討論區
XOOPS使用討論區
一般研習學員
社大學員專用
路過哈啦區
XOOPS佈景設計
XOOPS模組開發
Tad書籍區
即時留言簿
書籍目錄
展開
|
闔起
線上使用者
42
人線上 (
6
人在瀏覽
線上書籍
)
會員: 0
訪客: 42
更多…