Chemin du Menu dans Pathauto

Comment puis-je obtenir pathauto sous Drupal 7 pour générer un alias D'URL par le chemin du menu complet?

26
demandé sur kiamlaluno 2011-01-13 21:14:44

10 réponses

Juste une mise à jour au cas où quelqu'un rencontrerait cela avec une version plus récente de Pathauto/Token. Cela a fonctionné pour moi:

[node:menu-lien:parents:join-path]/[node:menu-lien]

43
répondu Ian Link 2012-06-15 18:11:51

J'ai fini par utiliser:

[node:menu-link:parent:url:path]/[node:menu-link]

Attention cependant: si le nœud n'a pas de lien de menu, vous finirez sans une page automatiquement aliasée. Du bon côté, cela pourrait vous faire prendre conscience des pages orphelines. (Considérez-le comme une fonctionnalité!)

Notez que l'utilisation du motif:

[node:menu-link:url:path]/[node:menu-link]

Ne donnera que le lien de menu du nœud, pas celui du parent (qui serait nécessaire pour référencer le chemin du parent).

Ou le modèle: [node:parent:url:path]/[node:menu-link]

Lance une erreur dans mon instance de Drupal 7 à propos des jetons invalides (même si j'ai installé le module token).

9
répondu 2011-12-14 22:10:07
[node:menu-link:parent:url:path]/[node:title]

Si le nœud n'est pas dans le menu, il ne crée pas d'alias. Sinon, cela semble fonctionner pour les menus à n niveaux.

8
répondu Kenan 2012-10-02 16:28:44

Je pense que ce doit être Ce modèle maintenant:

[node:menu-link:url:path]/[node:menu-link]

"chemin" au lieu de "alias"

5
répondu John Robinson Jr. 2011-09-15 16:27:13

Vous devrez également installer le module contrib Token - bien que de nombreuses fonctionnalités de Token fassent partie de core dans D7, certains des jetons edge case (comme le chemin de menu complet d'un nœud donné) ne sont pas fournis automatiquement par core.

Qui est installée, je crois que [node:menu-lien:parent] ou [node:menu-lien:parent: "url] devrait fonctionner.

2
répondu Eaton 2011-01-13 19:54:17

Le modèle qui fonctionne pour moi est le suivant:

[node:menu-link:parent:url:alias]/[node:menu-link]

J'ai également installé le module Token comme suggéré par Eaten. Je ne sais pas si [node:menu-link:parent:url:alias] fait partie de core ou vit dans contrib.

2
répondu toon.ketels 2011-05-21 01:23:43

Si vous essayez de créer des alias pour des pages de 3ème niveau ou plus profondes, par exemple:

Home page
 > Level 1 page
   > Level 2 page
     > Level 3 page

Et vous voulez que l'alias de la page de niveau 3 ressemble à http://domain.com/level-1/level-2/level-3, Je l'ai fait fonctionner pour moi en définissant mon modèle sur:

[node:menu-link:parent:parent:parent:title]/[node:menu-link:parent:parent:title]/[node:menu-link:parent:title]/[node:title]

Notez que j'ai ajouté :parent au jeton, et pour le premier je l'ai ajouté deux fois.

1
répondu csuggs4 2011-12-13 14:29:32

Profitez!

[node:menu-lien:parents:join-path]/[node:title].html

0
répondu iwish 2012-10-02 07:59:14

C'est la solution que j'utilise:

[node:menu-link:parents:join:/]/[node:menu-link]

Il séparera les éléments de menu parent avec un tiret. C'est ce dont j'ai besoin.

0
répondu Marcos Buarque 2012-10-17 16:16:36

Pour quiconque tombe sur cette réponse, et se demande comment ajouter ceci:

Configuration > recherche et métadonnées > alias D'URL, puis créez sous L'onglet" Patterns".

0
répondu Robert_T_Taylor 2017-08-29 16:27:07