====== Dokuwiki 使用技巧整理 ====== ===== - Dokuwiki 本身頁面異動 RSS 的使用方式 ===== * 通常使用者可會針對特定的 Name Space(NS) 內容有興趣, 因此想訂閱這 NS 的 RSS, 呼叫語法如下: http://{myWikiUrl}/feed.php?ns={Name Space}&view={Type} * Exp.本站 tech https://www.ichiayi.com/wiki/feed.php?ns=tech&view=pages * 詳細參數可參考 - https://www.dokuwiki.org/syndication ===== - 相同 Name Space 新增頁面設定預設內容方式 ===== * 只要在 Name Space 的 data/page/xxx 目錄內增加 _template.txt 在 xxx 底下建立新頁面就會將 _template.txt 的內容顯示出來 * 如果要讓底下所有的目錄也可以套用這樣版, 只要將 "_template.txt" 改成 **兩個底線**"%%__%%template.txt" 即可 * 如果要讓樣板使用到變數, 可以有 @ID@ , @PAGE@ , @DATE@ , @NAME@ , @NS@ * 可參考 https://www.dokuwiki.org/start?id=zh-tw:namespace_templates ===== - 特定 Name Space 採用自己的板型設定方式 ===== * 參考 http://wiki.splitbrain.org/wiki:tpl:faq - 可以在 main.php 內修改 code 增加 if ($explodednamespace[0] == “namespace1”) {include tpl1.php} 這樣的方式來解決 - 安裝 [[http://tatewake.com/wiki/projects:multitemplate_for_dokuwiki|Multitemplate for DokuWiki]] 來解決 ++++ 實際修改 main.php 的方式(只改標題)| 因為 Multitemplate 安裝後有問題, 所以採用修改 main.php 的方案 * 將原本的 main.php 複製成 main_default.php 與特定 Name Space 的 main_ns.php Exp. main_stanley.php, main_scucs.php... * 產生新的 main.php 內容如下: * 更改 main_ns.php 內容符合需要, 以下是以 main_stanley.php 為例: : <?php tpl_pagetitle()?> [<?php echo $my_Title;?>] :
:
* 這樣設定之後, stanley 的 Name Space 頁面呈現時, Title 都會出現 「蔡卓展專屬網站」 ++++ ++++實際安裝 Multitemplate 程序(結果有問題)| cd lib/tpl wget http://tatewake.com/wiki/_media/projects:multitemplate-01022007.zip unzip projects\:multitemplate-01022007.zip cd multitemplate/ vi local_pref.php * 定義不同的 Name Space 使用的 Template : $multitemplate['playground'] = 'default'; $multitemplate['stanley'] = 'stanley'; $multitemplate['jerry'] = 'jerry'; $multitemplate['scucs'] = 'scucs'; $multitemplate[''] = 'simple'; : * 最後要將所有的 templace 內 *.php 檔((detail.php, main.php, mediamanager.php, tpl_functions.php))的內容更改以下的項目 - 將 DOKU_TPL 改成 $DOKU_TPL - 將 DOKU_TPLINC 改成 $DOKU_TPLINC - 在第一行增加以下的 php 程式碼 ++++ ===== - 清除特定頁面 Cache 方式 ===== * 參考 http://wiki.splitbrain.org/wiki:caching -- 在頁面網址後面加上 **?purge=true** 要求將該頁面的 cache 清除掉 .. Exp. http://www.example.com/namespace/page?purge=true -- 在頁面內加入 NoCache 語法(似乎沒用) .. NoCache 語法 ~~NOCACHE~~ ===== - 新增/異動 dokuwiki 內容頁面整合方式 ===== * 參考 http://wiki.splitbrain.org/wiki:cli * 主要透過 **dwpage.php** 這個工具介面來處理 ===== - 匯出 wiki 頁面的方式 ===== * 參考 http://wiki.splitbrain.org/wiki:export * 匯出本頁的原始語法 https://www.ichiayi.com/wiki/tech/dokuwiki?do=export_raw * 匯出本頁的 XHTML 語法 https://www.ichiayi.com/wiki/tech/dokuwiki?do=export_xhtml * 匯出本頁的網頁內容 https://www.ichiayi.com/wiki/tech/dokuwiki?do=export_xhtml ===== - 備份 Dokuwiki 的方式 ===== * 參考 http://wiki.splitbrain.org/wiki:tips:backup_script ===== - Dokuwiki 每頁統計點閱次數方式 ===== - 參考 http://www.dokuwiki.org/tips:viewcounter - 參考 https://www.dokuwiki.org/plugin:statistics 將所有使用者存取行為紀錄到 DB 內進行完整分析統計 ===== -Dokuwiki topbar 的定義 ===== - 參考 https://www.dokuwiki.org/tips:topbar - ++新增 wiki/lib/tpl/dokuwiki/header.html|
++ - ++新增 wiki/conf/userall.css| @media screen { /* top bar */ .dokuwiki .topbar { position: absolute; top: 0; left: 0; width: 100%; } .dokuwiki .topbar ul { text-align: center; max-width: 600px; /* change accordingly */ margin: 0 auto; padding: 0; list-style: none; background-color: __background_alt__; border: solid __border__; border-width: 0 1px 1px; border-bottom-right-radius: 5px; border-bottom-left-radius: 5px; box-shadow: 0 1px 3px #999; overflow: hidden; } .dokuwiki .topbar ul li { margin: 0; padding: 0 2px; display: inline-block; font-size: 85%; } .dokuwiki .topbar ul li a { color: __text__; display: inline-block; min-height: 16px; /* make sure icons are not cut off (most icons are 16x16) */ } /* for IE7 */ *+html .dokuwiki .topbar ul li, *+html .dokuwiki .topbar ul li a { display: inline; } /* changes specific for the default "dokuwiki" template, other templates need other changes! */ #dokuwiki__header { padding-top: 3.5em; } #dokuwiki__usertools { top: 2em; } /* IE8 needs this in the default template */ .dokuwiki .topbar ul li img { max-width: none; } } /* /@media */ /* for screens less than 480px wide */ @media only screen and (max-width: 480px) { /* move topbar back to the bottom */ .dokuwiki .topbar { position: static; } /* un-do some specific template changes */ #dokuwiki__header { padding-top: .5em; } } /* /@media */ @media print { /* don't print the topbar */ .dokuwiki .topbar { display: none; } } /* /@media */ ++ ===== - 延伸參考資料 ===== {{topic>dokuwiki}} ---- * http://redertseng.com/notes/dokuwiki * http://wiki.splitbrain.org/wiki:dokuwiki {{tag>dokuwiki 經驗 密技}}