Drupal 7:Pathauto等级分类术语模式

Phi*_*ael 4 design-patterns hierarchy taxonomy drupal-7

根据以下方案,我有一个Drupal 7.9分类词汇表:

category-1
    category-1 > subcategory-1-1
    category-1 > subcategory-1-2
    category-1 > subcategory-1-3
category-2
    category-2 > subcategory-2-1
Run Code Online (Sandbox Code Playgroud)

我想在我的页面url路径中反映这个分类层次结构

category-1/subcategory-1-1/page-123
Run Code Online (Sandbox Code Playgroud)

为了实现这一点,我使用模块Pathauto版本7.x-1.0.但我不知道 我必须使用哪种模式.

目前我正在使用[node:%field_taxonomy%]/[node:title]但是使用此模式的url路径只是subcategory-1-1/page-123,因此不会反映完整的层次结构.是否存在分类树模式?我找不到任何关于此的更新信息,并且每个版本的Pathauto中的有效模式似乎都会发生变化.

acr*_*oss 8

经过一些试验和错误后,我想出了一种方法,在使用分类术语创建自定义URL路径时,对我来说非常有用.您需要做的就是安装一个名为Entity API的附加模块.你可以在http://drupal.org/project/entity找到它.安装后,您应该启用Entity API和Entity令牌模块.实体令牌为所有没有令牌且属于实体API的属性提供令牌替换.

首先,去创建一个新的分类词汇表.我们称之为"类别"并添加一些术语.然后,对于您希望拥有自定义URL路径的内容类型,您需要创建新的术语引用字段.我不知道为什么,但它没有使用标准的field_tags.所以,一定要创建一个新的.我们也称它为类别,并使用我们以前创建的词汇"类别"作为源.这是你需要考虑的另一件事:你必须用一个小写字母标记这个字段; 否则它不适用于我不知道的原因;).你最终会得到一个field_category字段.

转到URL别名管理页面 - >模式.展开内容路径的替换模式 - >展开节点 - >您将在底部看到类别,展开它.好的,现在您已准备好使用分类术语令牌.

使用[node:field-category:name]/[node:title]之类的东西,其中[node:field-category:name]是分类术语的名称,你将拥有像mysite.com/term/title这样的路径.

顺便说一句,我使用Pathauto 7.x-1.0-beta1,Token 7.x-1.0-beta2和Entity API 7.x-1.0-beta8.

祝好运!))

http://drupal.org/node/1044980#comment-4562844

您可以使用以下模式创建URL:[node:field-category:词汇:name]/[node:field-category:parents:join:/]/[node:field-category:name]/[node:title]