web-dev-qa-db-fra.com

comment séparer la hiérarchie de taxonomie à pathauto avec des barres obliques

Pathauto semble avoir une façon différente d'aliaser la hiérarchie taxinomique.

De Menu Taxonomie :

  1. Petites annonces> Voitures> Aston Martin> DB9 Coupe
  2. Petites annonces> Emplois> Comptabilité

Ce que je veux, c'est quelque chose comme ça pour l'url:

  • petites annonces/emplois/comptabilité (pas comptabilité-emplois-petites annonces)

(Notez que Pathautho génère également cela avec des tirets dans l'ordre inverse.)

À Pathauto, j'utilise ce modèle: Default path pattern (s'applique à tous les vocabulaires avec des modèles vides ci-dessous)

[term:parents-all]

Confus.

14
jan

Avec le module Token activé, vous pouvez définir un modèle comme celui-ci:

[term:vocabulary]/[term:parent:parent:name]/[term:parent:name]/[term:name]

Faites ce modèle aussi longtemps que vous le souhaitez. Vos chemins deviendront alors:

vocabulary
vocabulary/category1
vocabulary/category1/subcategory1
vocabulary/category1/subcategory2
vocabulary/category1/subcategory2/subsubcategory1

etc...

10
brunops

Il existe un moyen intelligent de le faire en utilisant join: /

Dans mon cas, j'ai utilisé:

[node:field-taxonomy-skolski:parents:join:/]

field-taxonomy-skolski est le champ permettant de choisir le terme dans l'arbre de taxonomie. Les barres obliques seront supprimées, bien qu'il existe un paramètre sous

Administration "Configuration" Recherche et métadonnées "Alias ​​d'URL" Alias ​​d'URL - paramètres

en bas de la page pour liste déroulante PUNCTUATION. Définissez la barre oblique (/) "aucune action" au lieu de "supprimer".

16
NenadP

Celui-ci fonctionne pour moi sur Drupal 7.15 avec Token 7.x-1.3 et Pathauto 7.x-1.2:

[terme: parents: rejoindre: /]/[terme: nom]

Comme les brunops l'ont dit dans la deuxième réponse, rejoignez:% separator% fait la magie. Il remplace le tiret par défaut par% separator%.

Un grand merci aux brunops!

6
hazard

Les clés pour que cela fonctionne:

  • installer et activer les modules Entity API, Entity Tokens, Path Auto et Taxonomy.
  • créez un champ sur votre type de contenu et définissez Type de champ sur Référence de terme et nommez-le quelque chose comme 'catégorie de contenu de champ' (nom de la machine)
  • Définissez le nombre de valeurs, alias `` Nombre maximum de valeurs que les utilisateurs peuvent entrer pour ce champ '' sur 1 (très important si vous souhaitez utiliser les jetons de chemin d'accès joint qui ajoutent automatiquement un/entre les éléments de chemin).
  • définissez les modèles d'URL (admin/config/search/path/patterns) sur quelque chose comme '[node: field-content-category: parents: join-path]/[node: field_content_category]/[node: title]'
3
rwilson0429

Eh bien, je recommanderais d'utiliser quelque chose d'intelligent comme:

[terme: parent: termes: inversé: rejoindre :?]

Mais je ne peux pas pour la vie de moi le faire fonctionner non plus. Donc, je recommande plutôt ce qui suit, mais vous ne pouvez aller aussi loin que la hiérarchie le permet (peut être vu dans les modèles de remplacement). Si vous ajoutez des termes plus profondément dans la hiérarchie, vous devrez également mettre à jour le modèle.

[durée: parents-tous: 3]/[durée: parents-tous: 2]/[durée: parents-tous: 1]

0
7wonders