web-dev-qa-db-fra.com

Convertir le lien du noeud / nid en URL Pathauto?

J'utilise Pathauto pour rendre mes URL agréables et je voudrai peut-être changer les chemins à l'avenir. Sur certaines pages, je m'aligne manuellement sur d'autres nœuds.

Le problème est que si je code l'URL de Nice, le lien sera rompu si je change les paramètres de Pathauto à l'avenir. Si je fais un lien vers le nœud/(l'ID du nœud), le lien fonctionnera toujours, mais c'est mauvais pour le référencement de ne pas avoir de mots-clés dans le texte d'ancrage.

Existe-t-il un moyen de coder dans le NID pour qu'il fonctionne toujours mais sur la page affiche l'URL de Nice?

6
Evanss

Je voudrais, comme Splat l'a mentionné, consulter le module de redirection globale, qui aidera Google à ne pas voir node/FOO et pretty/path pointant vers un contenu identique. Si, cependant, vous voulez vous assurer que lorsque les moteurs analysent le contenu de votre page et que joli/chemin apparaît à l'intérieur du HTML, vous pouvez soit continuer à coder en dur les chemins, soit créer une fonction qui renvoie le chemin aliasé basé sur le NID.

function make_my_path($nid) {
  $pretty_path=drupal_get_path_alias('node/' . $nid);
  return $pretty_path;
}

Utilisez ensuite cela (ou drupal_get_path_alias() directement) dans vos modèles ou fonctions de prétraitement, ou utilisez simplement l() . S'il est passé 'node/FOO' comme chemin, il renverra le chemin alias s'il est défini. (À moins que vous ne le lui disiez explicitement; voir url() .)

Ainsi, par exemple, print l('Hello World','node/23'); devrait retourner <a href="/pretty/path/to/node/23">Hello World</a>.

8
Jimajamma

Si vous utilisez CKEditor, vous devez utiliser le module CKEditor Link . Il permet de rechercher du contenu par titre à insérer, et dans Drupal il enregistre le lien sous/node/[ID]. Puis un filtre de texte (que vous devrez activer pour chaque format de texte c'est utilisé sur) remplace cette URL par l'alias de chemin d'accès actuel dans la page rendue.

3
matthewv789

Je pense que vous recherchez le module Global Redirect . Cela garantira chaque fois que vous vous connectez au nœud/ x que toute personne qui suit le lien est redirigée vers l'URL propre de ce nœud.

2
splatio