一、我指的wiki式链接效果是:

1,自动用文章的标题生成URL,例如文章标题为“wolfram”,则该页面的URL自动生成为http://example.com/wiki/wolfram(链接形式可以自定义,也可以手动改);

2,以[[]]标记包括起来的文字自动变成真正的链接,例如[[wolfram]]变成http://example.com/wiki/wolfram(其中[[]]的标记可以自定义,链接形式可以自定义);

3,点击[[链接]]的时候,如果存在该标题的文章,则转到该文章页;如果不存在该标题的文章,则转到搜索或创建页面,页面标题已自动填好(可根据用户权限设定)。

4,对中文支持良好,链接中可以有中文。

二、用到的drupal模块:

主要的模块是pathautocustom filterwikitools

此外,作为pathauto的依赖模块,还必须开启path模块(drupal核心自带)和token模块

为了达到最好的效果,实现对搜索引擎和用户友好的链接结构,最好还开启global redirect模块

三、关于pathauto:

pathauto模块的作用是根据一定规则自动生成页面的URL。其实不仅是在wiki风格中,对其他类型的站点和页面而言,这个功能也是非常有用的。

pathauto模块的设置,是在path模块的设置页面上添加了一页Automated alias settings。可设置的很多,可以自己试验看看。

一般只要设置Node path settings。这里会列出所有的内容类型(content type),可以给不同的内容类型设置不同的URL规则。

在想要的类型中填入[title-raw],该类型的node便会自动以文章标题作为URL。可以带路径,比如填入 wiki/[title-raw],生成的便是本文开头所说的链接了。

也可以用其他信息做URL,比如作者、时间等,在Replacement patterns中有详细的清单。

一般来说,这里的设置只对设置后新建的node有效,之前创建的node不受影响。勾选Bulk generate aliases for nodes that are not aliased,可以为之前创建的、现在还没有路径别名(path alias)的node批量设置URL。

下文将写写为什么不用某些著名的提供类似wiki功能的模块,比如freelinking、Flexifilter等。然后再写我用的这几个模块的用法,估计要连载好几天了。 :)