Pathauto,可以为drupal站点的各种内容,比如:node(文章页)、Taxonomy term(分类)、users(用户),自动生成url别名,而不需要管理员自己一个个添加别名。它可以为你的文章页node/123生成这样的url:category/node-title.html
(category为分类别名,nodetitle是文章标题)。
Pathauto模块需Token模块的支持,利用Token来读取各种内容的相关字段的值。在利用Pathauto的URL别名自动生成功能后,我们还得注意一点,那就是原先系统自动生成的url别名,比如:node/1、2、3,仍然可以访问,所以为了避免两个url地址指向同一个页面,我们还需要借助“Globle Redirect模块”。 “Globle Redirect模块”安装和Drupal其它模块都一样,其使用设置也非常简单,一般默认其设置就可以了。
Pathauto安装与Drupal其他模块一样:
1、下载Pathauto,
2、将其解压至drupal安装文件夹下的sites/all/modules 中
3、登录到drupal的后台,在管理(administer)->站点构建(site building)->模块(Modules)中开启Pathauto模块。
当然在启用Pathauto模块之前必须启用核心自带的Path模块和自己安装的Token模块。Pathauto的使用
在介绍Pathauto使用之前,想说明的一点是,Pathauto在将中文字段值转换成url时,url会出现乱码,这有违我们的初衷搜索引擎友好,所以非英语站点在使用Pathauto之前还需要安装“Transliteration模块”,主要将中文字段值转化为对应的汉语拼音。这是使path 2.0的语言转换解决方法,对于Pathauto1.5,需要在官网上下载i18n-ascii.txt 文件,将该文件放在下列各目录下: sites/default/i18n-ascii.txt
sites/all/i18n-ascii.txt
sites/all/modules/pathauto/i18n-ascii.txt
下面主要是以Pathauto 2.0为例来简单介绍Pathauto模块的使用。
1、基本使用
在安装Pathauto 2.0后,后台URL alias(URL别名)页面,将会显示如下,其中除了” 列表” 和 “添加别名” 菜单之外的菜单都是在安装模块后才出现的,
“列表”里显示的是站点中所存在的所有别名(在未进行别名添加和使用Pathauto之前,里面的别名都是drupal系统自动生成的别名);
“添加别名”里可以将系统自动生成的url别名改成易于理解和记忆的别名;
其它菜单功能在下面介绍:
基本设置:
node paths中可用的字段名称:
[nid]: 系统中页面的唯一标识符;
[type]: node内容类型;
[type-name]: 也是内容类型,是用户友好版的;
[title]: node页面标题,即发布的文章标题;
[author-uid] : 系统中用户的唯一标识符;
[author-name]: 页面创建者,即作者的名称;
[author-name-raw]: 作者名称,token读取未加工的用户输入的值;
[term]: 第一个分类标签的名称;
[term-raw]: 第一个分类标签的名称;
[termpath]
[termpath-raw] 与[term][term-raw]一样。
Taxonomy term paths中可用的字段名称:
[cat]: 分类(taxonomy)名称;
[cat-description]: 分类描述;
[cat-raw]
[catalias]: 分类的url别名;
[catalias-raw]
[catpath]: 和[cat]一样,但是包括了它的上级分类,并用/分隔。
[catpath-raw]
[tid]: 分类在系统中的唯一标识符;
[vid]: 分类所在的词汇表在系统中的唯一标识符;
[vocab]: 分类所在的词汇表的名称;
[vocab-description]: 词汇表的描述;
[vocab-description-raw]
[vocab-raw]
除此之外,Token还可以读取字段有系统时间,[yyyy]年/[mm]月/[dd]天,这些同样可以在pathauto中使用。
Bulk Update:
在保存对Pathauto的设置后,站点的中已经存在的URL并没有发生改变,此时,可以在Bulk Update里进行批量更新,如下图所示;
Delete alias:
即删除别名,在这里用户可以删除已经存在的别名;
2、与CCK模块的配合使用
我们可以利用CCK模块创建新的内容类型,也可以为某一存在的内容类型添加新的字段,新添加的字段值,也可以在Pathauto中使用,比如我们为某内容类型添加了一个字段,字段名称为 field_name,则在Pathauto中的node paths中可以使用”'[field_name-raw]”’。
另外,文中提到的各模块,官方中均有下载,官方网站为http://www.drupal.org