Dokuwiki 插件整理

内置插件

非内置插件

  • Add New Page plugin:addnewpage 在页面中显示添加新页面表单
  • Ace Editor plugin:aceeditor 支持键盘功能键的编辑器。注意:该插件已不再维护。请使用CodeMirror插件。
  • markdownextra plugin:markdownextra 支持markdown语法
  • mathpublish plugin:mathpublish 数学公式渲染
  • move plugin:move 移动页面的同时移动对应的媒体,修改链接到它的页面链接。
  • Meta plugin:meta 指定页面元数据,比如页面标题、作者、创建时间等。以用作其他用途。不会覆盖data/meta中数据
  • OpenOffice.org Export plugin:odt 导出odt格式文档(相当于word)

更多参考

Dokuwiki 相簿應用的 plugin

以下是整理最近安裝 Gallery Plugin後整理出來方便上傳與呈現的相簿相關 plugin

– 安裝相關 plugin

– 設定與建立頁面

  • 本範例是將 scucs83:gallery 當相簿清單頁面, 主要的 code 如下:
====== 電子相簿 ======
|新增相簿|{{NEWPAGE>scucs83:gallery}}|
<style box>
{{indexmenu>scucs83:gallery#1|js navbar nocookie msort#date:modified rsort}}
</style>
  • scucs83:gallery:20080630 當相簿內頁, 主要的 code 如下:
====== 東吳校園現況 ======
{{gallery>scucs83:gallery:20080630?lightbox}}

– 相簿內頁 template

  • 讓每次建立新的相簿內頁都會自動帶出這些預設資訊
cd data/pages/scucs83/galley
vi _template.txt
====== 相簿主題 ======
{{gallery>scucs83:gallery:@PAGE@?lightbox}}

– 新增相簿

  1. 在 PC 端建立一個 20080703 的相簿目錄
  2. 先將要上傳的照片檔都放入 20080703 相簿目錄內
  3. 使用 7-zip 將這個目錄押成 20080703.zip
  4. 透過相簿清單頁面的新增頁面功能輸入 20080703 → 新增頁面
  5. 將 template 所帶出來的 相簿主題 改成實際的主題
  6. 點下加入圖案或檔案 icon 選 20080703.zip 並勾選 Unpack archive after upload 上傳
  7. 關閉上傳視窗
  8. 儲存新增頁面

– 展示

DokuWiki Plugin 精選

– 版面相關

– yalist

– box

<box 80% round orange|a title> the box contents</box>
<box 50% left blue>the box contents</box|a caption>
<box 60% round #f99 #fc9 #fcc #f60|title>the box contents></box|caption>
  • 呈現範例

a title

the box contents

the box contents

a caption

title

the box contents>

caption

– styler

– note

– include

– columns

– Translation

設定說明

– source

– code2

因為 code3 在中文字顯示會有太小不清楚的問題, 在短時間內我又無法調整好 style.css, 所以就直接改用這個 code2 的方案

如果對 code3 還是有興趣者, 可以點這裡參考以下是調整 code3 的處理方式(調整之後, 在 FireFox 還是會出現行距太高的問題.)

點這裡看基本語法

1|h 點這裡可看 code2 的 Sample|h

<?php # 13:09 2007/10/29 # Update by Jonathan Tsai #  require_once("twitter.conf.php");   # 設定傳入參數改以 p_ 開頭變數表示 import_request_variables('gp', 'p_');   $username = ($p_username!="")?$p_username:$username; $password = ($p_password!="")?$p_password:$password; : : ?>

– 操作功能

– rss

– addnewpage

– alphaindex

– indexmenu

– tag

– searchresults

{{search>"關鍵字" @namespace}}
{{backlinks>wiki}}

– Page Redirector

~~REDIRECT>namespace:page~~

– Folded

點這看使用說明(也用 block 方式展示)

– Select

<select 我的最愛> tech:menu|技術分享資訊 start:software:list|推薦免費軟體

http://blog.ichiayi.com|Jonathan’s Blog http://www.google.com|Google http://docs.google.com | Google Office </select>

  • 語法如下:
<select 我的最愛>
tech:menu|技術分享資訊
start:software:list|推薦免費軟體

http://blog.ichiayi.com|Jonathan's Blog
http://www.google.com|Google
http://docs.google.com | Google Office
</select>

– BookmarkMe

  • 使用說明:
    1. 安裝後預設是每頁底下都會出現這個加入書籤的工具列
    2. 透過管理選單的系統設定將 「Display social bookmarks」打勾拿掉
    3. 在需要顯示的頁面加入這語法

      ~~BOOKMARKME:on~~

  • 增加推推王黑米書籤網站說明
    1. – 編輯 lib/plugins/bookmarkme/bookmark.ini|

..

funp   http://funp.com/push/submit/add.php
hemidemi  http://www.hemidemi.com/user_bookmark/new?title=%title%&amp;url=%permalink%
  1. 將 funp 與 hemedemi 的代表小圖檔放入 lib/plugins/bookmarkme/img/ 內命名為 funp.gif 與 hemidemi.gif 2)
  2. 在 管理選單的系統設定 內「Enable bookmarking for」底下加上 funp,hemidemi 這個兩個定義名稱, 中間用“,”隔開

– Keyboard

– CAPTCHA

– 應用類型

– s5

~~SLIDESHOW~~

– Ditaa

<ditaa name=test>

+--------+     /--------\
|  Test  +---->| Test 2 |
+--------+     \--------/

</ditaa>

<ditaa name=test>

+——–+ /——–\

Test +—→ Test 2

+——–+ \——–/

</ditaa>

安裝後要修改實際 java 與 jar 路徑

– graphviz

FIXME

– contact

– poll

– AV Bar Chart

1000|A:500,B:50,C:250,D:1000

<barchart>1000|A:500,B:50,C:250,D:1000</barchart>

– doodle

<doodle [disable] [single] [login]| [id]>
^ [choice] ^ [choice] ^ ... ^
</doodle>
  • disable : 表示不可以投票(只能看結果)
  • single : 表示單選(不指定就是複選)
  • login : 使用 login name (沒有 login 只能看無法投票)

– freemind

參數說明與呈現範例

– abc

– googlemap

25.027459,121.475862,宜家男的髮藝造型

<googlemap width="300px" height="300px" lat="25.027459" lon="121.475862" type="map" zoom="16">
25.027459,121.475862,宜家男的髮藝造型
</googlemap>

– youtube

– flowplay

– mp3play

– AutoViewer

語法與範例:

– imstatus

– 系統管理

– googleanalytics

– Loglog

– Statistics

– superacl

– Bad Behaviour

– 待評估項目

DokuWiki简介及插件推荐

DokuWiki简介

一个简洁的Wiki系统,使用PHP+文本数据库,安装配置都比较简单,基本符合「够用就好」原则。唯一感觉不爽的就是媒体管理器,很不顺手。

在以往的工作实践中,常用它来进行公司内部的交流与协作,有效保障了信息的沟通。

官网地址是 http://www.dokuwiki.org,有中文界面,可以在左侧选择。

安装

下载、解压,浏览器访问后提示 「Setup Error」,选择 「 run the installer」继续。

一般来说,如果权限没问题的话,就会进入到 安装工具 页面,右上角可以更改语言为简体中文。

填写名称、超级用户帐号、内容发布许可协议等信息后保存继续即可。

配置

简单说一下管理页:

  • 用户管理器:添加和管理用户
  • ACL管理器:修改用户/组对于页面和命名空间的权限
  • 插件管理器:可以在这里更改插件,支持远程下载安装
  • 配置设置:关于Dokuwiki的设置,如模版、显示等设置项,一些插件安装后的设置项也在这里

模版

也就是常说的 主题,下载后解压到 lib/tpl 目录,然后在 管理 - 配置设置 中进行选择即可。

更多的主题可以在 官网的 Extensions页 找到

插件

插件可以通过 管理 - 插件管理器 进行安装,这里介绍几个个人比较喜欢的:

  • imgpaste:在编辑器直接粘贴就可以插入剪贴板中的图片,可以用来快速上传截图。
  • Note:可以在页面中插入醒目的提示文字,有几种默认图标和样式。

用Dokuwiki的BlogTNG插件写博客(一)

之前写过用BLOG套件写博客的,但BlogTNG在很多方面更有优势。经过较长时间的沉寂后,BlogTNG的开发再度开始,现在已经可以使用并且在很多方面超过了原有的BLOG套件。

先大概介绍下BlogTNG:

  • 使用SQLite存储元数据,比如标签、评论等。文章本身仍然以Dokuwiki的文本文件形式存储
  • 基本使用更为统一、简单
  • 灵活性
  • Feed更合理,不会在文章内容修改后重复生成Feed
  • 没有评论过滤机制,需要验证码弥补
  • 目前没有按时间归档功能
  • 不能方便的按照分类组织内容,不是没办法,只是麻烦,不如不用
  • 在国际化方面还有些混乱,不方便翻译

安装和配置

插件网址:http://www.dokuwiki.org/plugin:blogtng

需要sqlite支持,对于debian/ubuntu安装php5-sqlite

sudo aptitude install php5-sqlite

插件本身的安装和其他一样

为了防止SPAM,请务必安装验证码插件:http://www.dokuwiki.org/plugin:captcha

在管理-》配置设置-》Blogtng插件设置里有一些选项可以调节,比如:

  • comments_allow_web:允许评论者填写个人网站
  • comments_subscription:允许订阅评论
  • comments_forbid_syntax:评论中禁止的语法插件,我全部禁止了
  • send_linkbacks:自动发送linkback

注意上面的英文是每个选项的简要描述,也就是上面那行灰色的字,节约空间

基本使用

既然是基本使用,那么就不说BlogTNG的概念、结构和一些细节了,直接以例子来说明最常用的功能

首页——文章列表

<blog newform></blog>

<blog list>
  cache  0
</blog>

<blog pagination></blog>

上面第一个标签<blog newform></blog>显示一个创建新文章的表单,中间的标签显示所有文章的列表并禁用缓存,最后的标签<blog pagination></blog>显示分页

文章编辑

在首页显示的表单里写上文章标题,点击“创建”即可开始写文章了。在编辑区下面的“Tags”文本框里可以为文章指定标签,用逗号分隔

 

现在差不多具备一个基本博客的样子了,可以多创建几篇文章做测试。

其他常用功能

标签云和最新评论,参见我的博客侧栏。这需要特殊的主题,支持侧栏嵌入其他wiki页面的。你可以自己找这样的主题,比如 http://www.dokuwiki.org/template:arctic

以arctic主题为例

最新评论

装好后在侧栏点“sidebar”,然后创建这个页面,写入

<blog recentcomments></blog>

标签云

稍微有些麻烦……仍然编辑sidebar页面,写入

<blog tagcloud>
  target    tagcloud
</blog>

target表示点击一个标签后,用来显示文章列表的页面,这里是tagcloud。保存后可以看到标签云已经显示出来了,现在点击任何一个标签都将跳转到tagcloud页面,编辑这个页面,写入

<blog list>
tags 
</blog>

<blog pagination></blog>

其他

样式方面,除了默认的评论样式可能需要调整,其他的默认就很好。

如果你还想要更灵活的使用,可能要自己多摸索了。一者是“博客”和“模板”的概念,一者是能制作或者找到一个灵活的主题。因为BlogTNG还没最终开发完成,有些功能只能通过修改代码使用,没有相应的设置选项,模板的功能也可以通过代码里提供的函数扩充。

Dokuwiki插件:Wrap

Dokuwiki插件:Wrap

好久没更新了,继续写Dokuwiki的东西……

在我看来,此插件应属Dokuwiki使用中的必备用品之一,绝对值得关注。它主要扩充了排版功能,可以取代以前许多旧的插件。如果你曾经是Osmond的读者,应该对作者介绍一些诸如box、color之类的插件有印象,现在它们的功能都可以用wrap来完成。

更重要的是,用wrap,你可以轻松进行自定义

安装就不多说了,网址:http://www.dokuwiki.org/plugin:wrap

基本语法

总共有两种类型:以大写的<WRAP></WRAP>包围的生成区块元素,即<div></div>;以小写的<wrap></wrap>包围的生成行内元素,即<span></span>。

第一种:

<WRAP classes width :language>
区块元素内容
</WRAP>

第二种

<wrap classes width :language>行内元素内容</wrap>

其中classes指定元素的类(class),width给定一个宽度,language指定语言。在自定义中,最为常用的就是class了,语言一般不用考虑。

用法

说了这么多,估计你仍然不知道怎么用,我当时也不知道。幸好wrap的作者提供了非常完备有用的示例文件。把lib/plugins/wrap下面的example.txt的内容复制到一个wiki页面里就可以随时参考了。这里举几个例子

比如三栏排版

<WRAP column 30%>第一栏</WRAP>
<WRAP column 30%>第二栏</WRAP>
<WRAP column 30%>第三栏</WRAP>

column用来实现多栏排版,默认是左对齐的(CSS属性为float:left)。30%指定列的宽度,也可以用绝对宽度,如200px。

再如产生一个带圆角的漂亮盒子

<WRAP box 50% round></WRAP>

box和column类似,但是预定义了更多样式,默认是有背景色的。这里round指定要带圆角。

column和box有一个特殊的作用,实现对表格宽度的控制,比如占据50%的宽度(column和box中的表格默认都是100%宽度的)

<WRAP column 50%>
^表头^
|表内容|
</WRAP>

再如产生一个带下载图标的圆角盒子(不少网站都用这种效果……)

<WRAP download round 200px>
//**下载**//
</WRAP>

自定义

非常简单,用语法

<WRAP div_test></WRAP>

就会产生代码

<div class="wrap_div_test"></div>

只需要对wrap_div_test类定义CSS就行了。

<WRAP div_test 300px></WRAP>

限定了产生的<div>块的宽度