centos6.5系统下dokuwiki安装过程

前期准备:yum 安装httpd和mysql

1.下载罪行dokuwiki安装包 http://download.dokuwiki.org/;

2.centos系统中httpd的根目录为:/var/www/html (摸索了很长时间,非常重要的信息),将安装包解压到该目录(默认文件夹名为dokuwiki);

3.设置权限,chown -R apache:apache dokuwiki (权限组名apache的信息比较重要,试错了好几次);

4.在浏览器中输入:local_IP/dokuwiki (注意:服务器上最好设置静态路由,该步奏网上信息较多,略)

5.安全设置,将data、conf文件夹移除,按该网址提示:https://www.dokuwiki.org/zh:security

遇到的问题:

1.其他笔记本初次登录local_IP/dokuwiki显示无连接(电脑重启之后也需进行同样的操作)

解决步奏

首先,ping IP 通;其次,telnet IP 80,不通;

原因出自防火墙将80端口屏蔽。

解决办法

/sbin/iptables -I INPUT -p tcp –dport 80 -j ACCEPT

/etc/rc.d/init.d/iptables save

/etc/init.d/iptables restart

进阶:

1.设置模板,将现在的包(模板地址:https://www.dokuwiki.org/zh:template#lightbox/3/)解压到/lib/tpl,然后就可以在设置中选择自己想要的模板了。

2.注册新用户,无需将密码通过邮箱发送。在设置选项中将自动产生密码的一项的钩去掉。

3.阅读语法:https://www.dokuwiki.org/zh-tw:syntax,了解文本编辑技巧。

语法:

dokuwiki的编辑

在实践中遇到问题、解决问题

DokuWiki格式语法说明

DokuWiki 支持一些简单的标记语言, 以尽最大可能使文档看上去更友好。本页面包含了所有你在编辑页面时可能用到的语法的说明。如果需要查看本页源码,只需要点击页面顶部或者底部的 编辑本页 按钮即可。
如果您是初尝Wiki,那么可以使用 Wiki砂箱 来尽情挥洒。
通过快捷按钮,您可以更方便地使用这些标记。

注:本文档由 jiayq84@gmail.com 根据DokuWiki 2005.2.6版本的语法说明翻译。
如果您发现什么问题,请您发信告知,谢谢!

基本文本格式

DokuWiki支持 粗体斜体下划线 以及 等宽体 等格式。当然,您也可以 混合使用 所有这些格式。

DokuWiki支持 **粗体**, //斜体//, __下划线__ and ''等宽体'' 等格式。
当然,您也可以 **__//''混合使用''//__** 所有这些格式。

可以使用 下标上标

可以使用 <sub>下标</sub> 和 <sup>上标</sup>。

您也可以使用 删除线 标记某些信息。

您也可以使用 <del>删除线</del> 标记某些信息。

段落 是由空行所建立的。如果您想 强制建立新行 而不建立段落,您可以使用两个连续的反斜杠+空格或是回车作为标记。请看样例:

这是一些有着换行标记的文字。
请注意反斜杠只在回车符之前
或者在
一个空格之前的时候才有效。 \\而这样就并不起作用。

这是一些有着换行标记的文字。\\ 请注意
反斜杠只在回车符之前\\
或者在\\ 一个空格之前的时候才有效。 \\而这样就并不起作用。

请只在必须的时候才使用强制的换行标记。

链接

DokuWiki支持多种形式的链接。

外部链接

外部链接会被自动地识别: http://www.google.com 或者简单地写作 www.google.com – 当然您也可以为链接设置名字: 链接到google. 类似这样的电子邮件地址: andi@splitbrain.org 也可以被识别。

DokuWiki支持多种形式的链接。外部链接会被自动地识别:
http://www.google.com 或者简单地写作 www.google.com
- 当然您也可以为链接设置名字: [[http://www.google.com|链接到google]]。
类似这样的电子邮件地址: <andi@splitbrain.org> 也可以被识别。
内部链接

内部链接可以用方括号创建。您可以只给出链接的地址:wiki:pagename,也可以附加上链接的名字:我的链接。Wiki的页面名字将会被自动地识别为小写字母,并且不允许使用特殊字符。

内部链接可以用方括号创建。您可以只给出链接的地址:[[pagename]],
也可以附加上链接的名字:[[pagename|我的链接]]。
Wiki的页面名字将会被自动地识别为小写字母,并且不允许使用特殊字符。

您可以通过在页面名中使用冒号的方式来使用 命名空间

您可以通过在页面名中使用冒号的方式来使用 [[wiki:namespaces|命名空间]]。

如果您需要关于命名空间(namespaces)的更详细的信息,请参见 wiki:namespaces

您也可以链接到一个网页内部的某一节,只需要将该节书签的名称以一个#号分隔加在网页的地址后面即可。这是一个连向 本节 的链接。

这是一个连向 [[syntax#internal|本节]] 的链接。

注:

  • 已存在页面 的链接和到 未存在页面 的链接,其外观是不同的。
  • 默认情况下,DokuWiki不使用 CamelCase 来自动建立链接,(CamelCase类似于PmWiki中的WikiWord)。但是也可以在 设置文件 中启用它。 Hint: If DokuWiki is a link, then it’s enabled.
  • 当一节的标题改变时,该节的书签也会改变,因此,请不要太依靠网页内的链接。
Wiki间链接

DokuWiki支持 Wiki间链接 ,即到其他wiki的链接。例如,这是一个到Wikipedia上关于Wiki的一个页面的的链接: Wiki

DokuWiki支持 [[interwiki|Wiki间链接]] ,即到其他wiki的链接。
例如,这是一个到Wikipedia上关于Wiki的一个页面的的链接: [[wp>Wiki]]
Windows共享文件夹

Windows共享文件夹,例如 this 也可以被识别。请注意,这只在内部 局域网 等环境中才可能被成功访问。

Windows共享文件夹,例如 [[\\server\share|this]] 也可以被识别。

注:

  • 出于安全原因,只有在微软IE浏览器上才能够直接访问Windows共享文件夹。
图像链接

您也可以用图像来作为一个内部或者外部的链接,只需同时使用链接和图像的语法,如下所示:

[[http://www.php.net|{{wiki:dokuwiki-128.png}}]]

http://www.php.net

请注意:在链接名中使用语法,只有显示图像的语法会被识别,请不要使用其它语法。

脚注

您可以使用两个连续小括号来添加脚注1)

您可以使用两个连续小括号来添加脚注((看这里,这是一个脚注))。

标题段落

您可以使用最多达5层的标题来使您的页面更富结构性。如果您使用了三个以上的标题,那么DokuWiki会自动在页面上生成一个名为“本页目录”的标题列表。当然,您也可以关闭这项特性,只需在编辑时在页面里加入 ~~NOTOC~~ 字样即可。

H3标题
H4标题
H5标题
==== H3标题 ====
=== H4标题 ===
== H5标题 ==

您可以通过连续的4个以上“-”号来创建一条水平分割线:


图像和其它文件

您可以使用双大括号来在页面中加入 图像 。您还可以选择是否指定图像的显示大小。

原始大小:

指定宽度:

指定宽度和高度:

重新指定宽度和高度的外部图像:

原始大小:                        {{wiki:dokuwiki-128.png}}
指定宽度:                        {{wiki:dokuwiki-128.png?50}}
指定宽度和高度:                  {{wiki:dokuwiki-128.png?200*50}}
重新指定宽度和高度的外部图像:    {{http://de3.php.net/images/php.gif?200x50}}

使用左方或者右方的空格,您可以选择对齐方式:

{{ wiki:dokuwiki-128.png}}
{{wiki:dokuwiki-128.png }}
{{ wiki:dokuwiki-128.png }}

当然,您也可以指定一个图像的名字,将鼠标移到图像上可以看到效果。

这是图像的名字

{{ wiki:dokuwiki-128.png |这是图像的名字}}

如果您指定的文件名(无论是外部的还是内部的)不是一个图像(gif,jpeg,png),那么它将被显示为一个链接。

列表

Dokuwiki支持带编号或不带编号的列表。要使用列表,在文字前加入两个空格,然后使用*标志不带编号的列表,用-标志带编号的列表。

  • 列表
  • 第二项
    • 下一层
  • 第三项
  1. 带编号的列表
  2. 第二项
    1. 用缩进表示更深的层
  3. 完了
  * 列表
  * 第二项
    * 下一层
  * 第三项

  - 带编号的列表
  - 第二项
    - 用缩进表示更深的层
  - 完了

表情符号

DokuWiki会将一些常用的 表情符号 转换为图像。除了默认的表情符号以外,您也可以在 smiley 文件夹中放入更多的表情图,然后在 conf/smileys.conf 中设置它们即可。下面是Dokuwiki包含了的表情图像:

  • 8-) 😎
  • 8-O 😯
  • :-( 🙁
  • :-) 🙂
  • =) =)
  • :-/ :-/
  • :-\ :-\
  • :-? 😕
  • :-D 😀
  • :-P 😛
  • :-O :-O
  • :-X :-X
  • :-| 😐
  • ;-) 😉
  • ^_^ ^_^
  • :?:
  • :!:
  • LOL LOL
  • FIXME FIXME
  • DELETEME DELETEME

印刷样式

DokuWiki可以将特定字符转换为印刷时所用的样式。下面是可以识别的这类字符的列表:

→ ← ↔ ⇒ ⇐ ⇔ » « – — 640×480 © ™ ® “He thought ‘It’s a man’s world’…”

-> <- <-> => <= <=> >> << -- --- 640x480 (c) (tm) (r)
"He thought 'It's a man's world'..."

请注意:在配置文件中可以禁用这类自动转换。

表格

DokuWiki可以用简单的语法创建表格。

标题1
标题2
标题3

(1,1)
(1,2)
(1,3)

(2,1)
展宽的单元格

(3,1)
(3,2)
(3,3)

表格的每一行都以分隔符 | (普通行)或者 ^ (标题行)作为开头和结束。

^ 标题1        ^ 标题2         ^ 标题3       ^
| (1,1)        | (1,2)         | (1,3)       |
| (2,1)        | 展宽的单元格               ||
| (3,1)        | (3,2)         | (3,3)       |

要水平合并单元格,只需要将后一个单元格设置为空即可,如上面演示的一样。请确保每一行有相同数量的单元格分隔符!

竖直的标题列也是可以实现的:

标题1
标题2

标题3
(1,2)
(1,3)

标题4
不再合并单元格

标题5
(2,2)
(2,3)

可以看到,单元格前面的分隔符决定了单元格的格式。

|          ^ 标题1          ^ 标题2          ^
^ 标题3    | (1,2)          | (1,3)          |
^ 标题4    | 不再合并单元格 |                |
^ 标题5    | (2,2)          | (2,3)          |

注:垂直合并单元格尚未实现。

您可以对齐表格的文字。只需要添加多余两个的空格在您需要对齐的方向的反向即可:如果需要右对齐,在左边添加两个空格;反之,则在右边添加。在两边均添加空格可以实现中间对齐。

有对齐的表格

右对齐
居中
左对齐

左对齐
右对齐
居中

xxxxxxxxxxxx
xxxxxxxxxxxx
xxxxxxxxxxxx

下面是源文件中的格式:

^           有对齐的表格                   ^^^
|        右对齐|     居中     |左对齐        |
|左对齐        |        右对齐|     居中     |
| xxxxxxxxxxxx | xxxxxxxxxxxx | xxxxxxxxxxxx |

无格式区块

您可以在文章中插入无格式区块,在这些区块中Wiki语法将不起作用。可以有三种方法:在行前加两个以上的空格(前面做样例时用的方法),或者可以使用 Codefile 标记。

这是一段被code包围的区块,其中的空格都被保留了:像              <-这样
和code是类似的。不过您可以用这个来表示您引用了一个文件的内容。  

要让Wiki语法解释完全失效,可以用 nowiki 标签包围整个区块,或者也可以简单地使用双百分号标记 %%

这是一段完全没有Wiki语法解释的文字,例如:http://www.splitbrain.org , **粗体**,虽然按照语法书写,但是它们并没有被解释。

如何使用这些标记,请查看这一段的源文件。

语法

DokuWiki 可以将源代码作语法高亮以增加可读性。它使用称作 GeSHi 的通用语法高亮工具(Generic Syntax Highlighter)——所有被GeSHi支持的语言都可以在DokuWiki中得到高亮。使用code标记的方法和上面是类似的,不过需要指定使用的语言,例如: <code java>

/** 
 * The HelloWorldApp class implements an application that
 * simply displays "Hello World!" to the standard output.
 */
class HelloWorldApp {
    public static void main(String[] args) {
        System.out.println("Hello World!"); //Display the string.
    }
}

现在,DokuWiki可以支持的语言有: actionscript, ada, apache, asm, asp, bash, caddcl, cadlisp, c, c_mac, cpp, csharp, css, delphi, html4strict, java, javascript, lisp, lua, nsis, objc, oobas, pascal, perl, php-brief, php, python, qbasic, smarty, sql, vb, vbnet, visualfoxpro, xml

嵌入HTML和PHP

您可以使用 html 或者 php标记在文档中嵌入HTML或PHP的代码。例如:

<html>
这是 <font color="red" size="+1">HTML</font> 代码。
</html>

这是 HTML 代码。

<php>
echo '由PHP生成的logo:';
echo '<img src="' . $_SERVER['PHP_SELF'] . '?=' . php_logo_guid() . '" alt="PHP Logo !" />';
</php>

echo '由PHP生成的logo:'; echo '<img src="' . $_SERVER['PHP_SELF'] . '?=' . php_logo_guid() . '" alt="PHP Logo !" />';

请注意: HTML和PHP嵌入的功能默认情况下是被禁用的,因此,您可能无法看到上面的代码运行的结果而只能够看见源代码,这取决于DokuWiki站点的设置。(?)

1) 看这里,这是一个脚注

Dokuwiki 语法插件开发

Dokuwiki 语法插件开发

对语法标签的匹配采用PHP preg函数进行。

插件类需要实现以下方法:

  • getType() 返回此插件定义的模式类型。比如标签内部是纯文本等。
  • getSort() 返回此插件的优先级。数字越小,优先级越高。比如:需要替换系统的<code>标签。
  • connectTo($mode) 用来向词法分析器Lexer注册模式匹配的正则表达式。
  • postConnect() 当在connectTo()中注册的是起始正则表达式,则需要实现此函数,注册中止正则表达式。
  • handle($match, $state, $pos, Doku_Handler &$handler) 处理匹配出的内容,返回在渲染器中使用的内容。
  • render($mode, Doku_Renderer &$renderer, $data) 渲染内容。

当需要的时候,可以重载以下方法:

  • getPType() 返回生成内容的段落的形式。
  • getAllowedTypes() 返回允许内联的模式。(默认array())
  • accepts($mode) 返回是否允许内联自己的模式。

参考:devel:syntax_plugins devel:parser

linux下dokuwiki:安装与配置

php的开源wiki主要有:

mediawiki:php

dokuwiki:php

############################################################

安装apache2和php:

sudo apt-get install apache2 libapache2-mod-php5
参考apache的配置。

安装dokuwiki:

sudo a2enmod rewrite
sudo cp –a doku… /var/www/
cd /var/www
tar zxvf doku… -C dokuwiki
chown -R www-data:www-data /var/www/dokuwiki

修改路径:

sudo vi /etc/apache2/sites-enabled/000*.conf

DocumentRoot/var/www/html → DocumentRoot /var/www/dokuwiki

修改权限:

sudo vi /etc/apache2/apache2.conf
: Allow Override None → AllowOverride All

重启apache2:

sudo service apache2 restart

在web安装:

http://IP-address-of-your-server/install.php toinitially configure your DokuWiki.

安装完成后删除:

sudo rm /var/www/dokuwiki/install.php

安全设置:

data conf bin inc 这四个目录是不能通过web(http和https)访问的。

在/etc/apache2/apache2.conf或/usr/local/conf/httpd.conf添加下面配置:

#允许访问/var/www/dokuwiki/目录

order deny,allow

allow from all

#禁制访问/var/www/dokuwiki/(data|conf|bin|inc)/目录

<locationmatch "="" (data|conf|bin|inc)="">

order allow,deny

deny from all

satisfy all

############################################################

doku的配置:

doku的配置文件在/var/www/dokuwiki/conf/

主文件通常由dokuwiki管理,局部文件由管理员创建。

也就是我们需要创建并修改局部的local文件来配置。

dokuwiki.php:主配置文件

local.php:局部文件

local.protected.php:保护不受更改

plugins.php:默认插件

plugins.local.php:插件管理员修改

plugins.required.php:核心插件

plugins.protected.php:覆盖设置

user.auth.php:用户账号密码

acl.auth.php:访问控制规则

mediameta.php:可编辑的元数据

license.php:可用的许可证

mime.conf:上传文件的规则

acronyms.conf:自动缩进提示

smileys.conf:图像补充

entities.conf:文本补充

interwiki.conf:快捷方式

scheme.conf:url方案

wordblock.conf:垃圾邮件列表

############################################################

dokuwiki的插件和模板管理:

手动安装就是下载解压到下面路径然后chown为www-data:

/var/www/dokuwiki/lib/tpl用来安装模板

/var/www/dokuwiki/lib/plugins用来安装插件

自动安装就是在dokuwiki的web页面的模板管理安装。

Dokuwiki 手动清理缓存

Dokuwiki糊里糊涂地用了一年多,前两天忽然发现整个dokuwiki文件夹大得吓人,居然有130多MB,而我这个wiki站也就不到10个的页面。巡视一圈,冗余文件集中在 data/cache 缓存文件夹中,dokuwiki靠高速缓存提高页面加载速度,不过我的缓存文件实在太多了,居然有80多MB(大概因为时间太久了吧)

那么,开删!cache文件夹是不能删的,里面的1、2、3、a、b、c什么的全删掉好了,反正删掉之后还会重建。剩下那些文件暂时不明,我查了一些外文资料:

  • _dummy 似乎是一个跟版本号相关的文件
  • messages.txt 似乎包含一些升级信息
  • purgefile 好像是检验缓存时间的时间戳
  • sitemap.xml.gz 就不说了

理论上这些文件都会在特定的时候重建的——不过我全都删了,目前只通过调整设置里的google sitemap生成时间重建了sitemap.xml.gz(缺省值是0,也就是不生成sitemap),其他文件的暂时还没见到,不过似乎也没什么问题。

Dokuwiki官方维基有一条加?purge=true参数的方法,不过那只是强制重建缓存(估计重建之后还是要冗余到一起吧)

http://www.example.com/namespace/page?purge=true

还有一条是禁用缓存,在每个页面加上

~~NOCACHE~~

这个还没试,感觉禁止缓存的方法太偏激了吧,如果只是为了太多的冗余文件那就定期删一删呗。

其实原本只是想找一个自动定期清理缓存的插件,可惜没找到,关于Dokuwiki的中文讨论实在是太少太少了啊……以上只是初心者折腾的个人经验。

dw2pdf – 导出 pdf 插件

dw2pdf插件用于导出一个wiki页面为一个pdf文件。官网https://www.dokuwiki.org/plugin:dw2pdf

安装

  1. 下载并安装插件
  2. 下载mPdf库最新版,替换掉插件自带的
  3. 修改mpdf/config.php,大致44行,将useAdobeCJK改为true: 此时导出中文正常
  4. 修改Dokuwiki主题模版,添加导出按钮
// Dokuwiki template
// Insert:   <form class="button" method="get" action="<?php wl($ID)?>">
    <div class="no">
    <button type="submit" class="button">
    <img src="<?php echo DOKU_BASE?>lib/images/fileicons/pdf.png" alt="PDF Export" />
    </button>
        <input type="hidden" name="do" value="export_pdf" />
        <input type="hidden" name="rev" value="<?php global $REV; echo $REV?>" />
        <input type="hidden" name="id" value="<?php echo $ID?>" />
    </div>
</form>   // in lib/tpl/dokuwiki/main.php
// after   <!-- PAGE ACTIONS -->
<div id="dokuwiki__pagetools">
    <h3 class="a11y"><?php echo $lang['page_tools']; ?></h3>
    <div class="tools">
        <ul>
            <?php
                tpl_action('edit',      1, 'li', 0, '<span>', '</span>');
                tpl_action('revert',    1, 'li', 0, '<span>', '</span>');
                tpl_action('revisions', 1, 'li', 0, '<span>', '</span>');
                tpl_action('backlink',  1, 'li', 0, '<span>', '</span>');
                tpl_action('subscribe', 1, 'li', 0, '<span>', '</span>');
                tpl_action('top',       1, 'li', 0, '<span>', '</span>');
            ?>   // DW2pdf-Icon will be on the floating menu.

模版语法

<TEXT> The following replacement patterns can be used within the header and footer files.

@PAGE@ – current page number in the PDF @PAGES@ – number of all pages in the PDF @TITLE@ – The article’s title @WIKI@ – The wiki’s title @WIKIURL@ – URL to the wiki @DATE@ – time when the PDF was created (might be in the past if cached) @BASE@ – the wiki base directory @TPLBASE@ – the PDF template base directory (use to reference images) Remark about Bookcreator: The page depended replacements are only for citation.html updated for every page. In the headers and footers the ID of the bookmanager page of the Bookcreator is applied.

@ID@ – The article’s pageID @PAGEURL@ – URL to the article @UPDATE@ – Time of the last update of the article @QRCODE@ – QR code image pointing to the original page url </TEXT>

注意事项

  1. include插件兼容性

<TEXT> To work with the include plugin you have to add dw2pdf to its action_plugin_include supportedModes member variable

var $supportedModes = array('xhtml', 'metadata','dw2pdf');

Otherwise you may have problems with caching. </TEXT>

在dokuwiki上面装了一个addnewpage 插件,但是不能工作

修改插件的syntax.php文件(位于dokuwikiroot\lib\plugins\addnewpage下),在render函数中加入蓝色部分代码:
$form = '<div class="addnewpage">' . DOKU_LF
. DOKU_TAB . '<form name="addnewpage" method="get" action="' . DOKU_BASE . DOKU_SCRIPT . '" accept-charset="' . $lang['encoding'] . '">' . DOKU_LF
. DOKU_TAB . DOKU_TAB . $namespaceinput . DOKU_LF
. DOKU_TAB . DOKU_TAB . '<input class="edit" type="text" name="title" size="20" maxlength="255" tabindex="2" />' . DOKU_LF
. $newpagetemplateinput
. DOKU_TAB . DOKU_TAB . '<input type="hidden" name="do" value="edit" />' . DOKU_LF
. DOKU_TAB . DOKU_TAB . '<input type="hidden" name="id" />' . DOKU_LF
. DOKU_TAB . DOKU_TAB . '<input class="button" type="button" value="' . $this->getLang('okbutton') . '" tabindex="4" onclick="addnewpage2.id.value=addnewpage.np_cat.value==\'\'?addnewpage.title.value:addnewpage.np_cat.value+\':\'+addnewpage.title.value;addnewpage2.submit()"/>' . DOKU_LF
. DOKU_TAB . '</form>' . DOKU_LF
. DOKU_TAB . '<form name="addnewpage2" method="get" action="' . DOKU_BASE . DOKU_SCRIPT . '" accept-charset="' . $lang['encoding'] . '">' . DOKU_LF
. DOKU_TAB . DOKU_TAB . '<input type="hidden" name="do" value="edit" />' . DOKU_LF
. DOKU_TAB . DOKU_TAB . '<input type="hidden" name="id" />' . DOKU_LF
. DOKU_TAB . '</form>' . DOKU_LF
. '</div>';

重新测试创建页面,ok

用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还没最终开发完成,有些功能只能通过修改代码使用,没有相应的设置选项,模板的功能也可以通过代码里提供的函数扩充。

Gallery – 列出图片目录插件

Gallery – 列出图片目录插件

语法

{{gallery>namespace}}

{{gallery>namespace:someimage.jpg}}

{{gallery> namespace}} (right aligned)
{{gallery>namespace }} (left aligned)
{{gallery> namespace }} (centered)

{{gallery>http://www.23hq.com/rss/schabloni}}

参数

参数以?开头,用&分割,所有参数的否定在前面加no,比如:cache,nocache

{{gallery>images:vacation?image_*.jpg&80x80&crop&lightbox}}
// 所有
{{gallery>?crop&lightbox}}

<markdown> <table class=“inline”>

<tbody><tr class="row0">
	<th class="col0 leftalign"> Parameter                      </th><th class="col1 leftalign"> Default         </th><th class="col2 leftalign"> Description    </th>
</tr>
<tr class="row1">
	<td class="col0 leftalign"> <code><em>&lt;number&gt;</em>x<em>&lt;number&gt;</em></code>  </td><td class="col1"> <code>120x120</code> </td><td class="col2"> 设置缩略图大小, 除非设定了crop选项,会保持缩略图长宽比.</td>
</tr>
<tr class="row2">
	<td class="col0 leftalign"> <code><em>&lt;number&gt;</em>X<em>&lt;number&gt;</em></code>  </td><td class="col1"> <code>800X600</code> </td><td class="col2"> 设置<code>direct</code>模式下链接到的图片大小,会保持长宽比. 注意是大写 <code>X</code>.</td>
</tr>
<tr class="row3">
	<td class="col0 leftalign"> <code><em>&lt;number&gt;</em></code>               </td><td class="col1 leftalign"> <code>5</code>           </td><td class="col2"> 每行gallery表里可显示的图片数目. 如果指定为0不使用表格,所有缩略图顺序排列 </td>
</tr>
<tr class="row4">
	<td class="col0 leftalign"> <code>=<em>&lt;number&gt;</em></code>              </td><td class="col1 leftalign"> <code>=0</code>          </td><td class="col2"> 限制显示给定数目的图片. <code>0</code>代表所有. </td>
</tr>
<tr class="row5">
	<td class="col0 leftalign"> <code>+<em>&lt;number&gt;</em></code>              </td><td class="col1 leftalign"> <code>+0</code>          </td><td class="col2"> 跳过显示前面的number张图片. 和上面的选项一起很有用.</td>
</tr>
<tr class="row6">
	<td class="col0 leftalign"> <code>~<em>&lt;number&gt;</em></code>              </td><td class="col1 leftalign"> <code>~0</code>          </td><td class="col2"> Add a pagination for the thumbnails displaying the number of given thumbnails per page. <code>0</code> disables pagination. Pagination is added through JavaScript - when no JavaScript is available all thumbnails are displayed </td>
</tr>
<tr class="row7">
	<td class="col0 leftalign"> <code>cache</code>                      </td><td class="col1 leftalign"> enabled         </td><td class="col2"> Usually the output of the created gallery is cached. When the images in your selected namespace change, you have to manually force an update of the gallery page's <a href="http://www.unixtech.org/caching" class="wikilink2" title="caching" rel="nofollow">cache</a>. To disable the cache for the page showing the gallery, set <code>nocache</code> as option. </td>
</tr>
<tr class="row8">
	<td class="col0 leftalign"> <code>crop</code>                       </td><td class="col1 leftalign"> disabled        </td><td class="col2"> 使用给定的缩略图大小,不保持长宽比,裁剪多出部分 </td>
</tr>
<tr class="row9">
	<td class="col0 leftalign"> <code>direct</code>                     </td><td class="col1 leftalign"> disabled        </td><td class="col2"> 缩略图链接到给定大小的图片而不是图片描述页 </td>
</tr>
<tr class="row10">
	<td class="col0 leftalign"> <code>lightbox</code>                   </td><td class="col1 leftalign"> disabled        </td><td class="col2"> Show images in a fancy JavaScript modal browsing window, see below for details. Setting this option automatically implies the <code>direct</code> mode </td>
</tr>
<tr class="row11">
	<td class="col0 leftalign"> <code>reverse</code>                    </td><td class="col1 leftalign"> disabled        </td><td class="col2"> Reverse the order of the displayed images </td>
</tr>
<tr class="row12">
	<td class="col0 leftalign"> <code>recursive</code>                  </td><td class="col1 leftalign"> enabled         </td><td class="col2"> Find images in the given namespace and all sub namespaces </td>
</tr>
<tr class="row13">
	<td class="col0 leftalign"> <code>random</code>                     </td><td class="col1 leftalign"> disabled        </td><td class="col2"> Sort images randomly. You might want to use <code>nocache</code> as well </td>
</tr>
<tr class="row14">
	<td class="col0 leftalign"> <code>modsort</code>                    </td><td class="col1 leftalign"> disabled        </td><td class="col2"> Sort images by file modification date </td>
</tr>
<tr class="row15">
	<td class="col0 leftalign"> <code>datesort</code>                   </td><td class="col1 leftalign"> disabled        </td><td class="col2"> Sort images by EXIF date </td>
</tr>
<tr class="row16">
	<td class="col0 leftalign"> <code>titlesort</code>                  </td><td class="col1 leftalign"> disabled        </td><td class="col2"> Sort images by EXIF title </td>
</tr>
<tr class="row17">
	<td class="col0 leftalign"> <code>showname</code>                   </td><td class="col1 leftalign"> disabled        </td><td class="col2"> Show filename below thumbnails </td>
</tr>
<tr class="row18">
	<td class="col0 leftalign"> <code>showtitle</code>                  </td><td class="col1 leftalign"> disabled        </td><td class="col2"> Show the EXIF tag <code>Headline</code> as title below thumbnails </td>
</tr>
<tr class="row19">
	<td class="col0 leftalign"> anything containing a <code>*</code>    </td><td class="col1"> jpg,gif,png images </td><td class="col2"> This can be used to filter the list of files found in the given namespace. <code>*</code> work as simple wildcard symbol. </td>
</tr>

</tbody></table> </markdown>

关于lightbox

基于https://github.com/splitbrain/prettyphoto/tree/merged,源自PrettyPhoto

dokuwiki 系统时间错误

不论是在我自己机器上还是其他主机上,只要部署了dokuwiki,其系统时间(也就是修改或者提交的记录时间)都会比我的本机时间晚8个小时。比如,我的本机时间是2011\9\20 22:00:00,那么记录时间就会是2011\9\20 14:00,请问如果要更改为本机时间,怎么修改?
1楼的。。。是修改linux系统的cmos时间吧,牛头不对马嘴。。。。。。
我的dokuwiki是部署在windows系统上的,包括xp和2003和win7。

2013-04-16 21:58

提问者采纳

直接在init.php里修改吧
date_default_timezone_set('PRC');
提问者评价
对了!按照这个方法改就成功了!