Sur mon site, j'ai quelque chose comme un petit blog (PHP et MySQL chargés dynamiquement), avec des catégories comme "vie", "entreprise" et "santé". Chaque article a ajouté des tags. Les balises permettent de trouver des articles avec les balises spécifiées. J'ai sur ma page d'accueil une section "nouvelles" avec les 3 derniers messages (toute catégorie, il suffit de filtrer par date).
Un exemple de publication serait intitulé "Mon propre jardin" dans la catégorie "vie", avec les balises "passe-temps" et "temps libre". L'URL d'origine de ce message serait http://example/blog/life/my-own-garden.html
. Sur ma page d'accueil, le message "Mon propre jardin" apparaît avec les 100 premiers caractères de l'article et un lien "Lire la suite" vers le message complet.
Sur ma page de blog avec l'adresse http://example/blog/
, je vois le même message abrégé (100 premiers caractères) et d'autres messages de toute catégorie, avec le lien "En savoir plus" vers la page d'origine, où l'utilisateur peut lire le message complet.
Sur ma page de catégorie avec l'adresse http://example/blog/life
, je vois le même message abrégé (100 premiers caractères) et un autre message de cette même catégorie, avec un lien vers la page d'origine, où l'utilisateur peut lire le message complet.
Sur ma page de balises avec l'URL http://example/tag/hobby.html
ET http://example/tag/free-time.htm
l, je vois le même message et d'autres messages portant le même mot-clé (peu importe leur catégorie).
Et à la fin j'ai le même contenu à la page que j'ai nommé à l'origine - http://example/blog/life/my-own-garden.html
Donc, j'ai 5 pages qui ont la même partie de contenu ou le même contenu. Les données sont chargées dynamiquement, par ex. http://example/blog/life/my-own-garden.html
et http://example/blog/life/best-free-time-ever.html
sont alimentés par le même fichier, mais avec des messages différents.
Comment pourrais-je définir des liens canoniques dans cette situation, est-il possible de le faire correctement?
À l'exception de http: //example/blog/life/my-own-garden.html , toutes les autres pages que vous avez mentionnées contiennent une partie de la publication d'origine et/ou un lien vers celle-ci. La version canonique de l'article est donc l'URL susmentionnée, où le contenu peut être trouvé dans son intégralité. Toute autre URL mentionnée dans votre message d'origine contient des liens/extraits vers/du contenu original. Il n'y a donc aucune raison d'utiliser ces URL en tant que canoniques pour votre message.
De plus, je ne pense pas que vous compreniez correctement le fonctionnement des liens canoniques. Vous n'avez besoin que d'une seule URL canonique et vous allez l'ajouter dans la page qui contient le contenu. Toutes les autres pages que vous avez mentionnées
http: // exemple/blog /
http: // example/blog/life
http: //example/tag/hobby.html
etc..
sont tenus de contenir des liens/extraits vers d'autres publications. Par exemple, la troisième URL contient probablement des liens vers d'autres publications marquées comme "passe-temps"; il est donc illogique d'ajouter un lien canonique pour une page spécifique, car nous parlons d'une page de catégorie.
La seule page qui nécessite une URL canonique est la page contenant votre message dans son intégralité. La seule situation dans laquelle vous devez décider où placer votre lien canonique est lorsque vous avez différentes URL contenant la publication dans son intégralité http://example/blog/life/mypost
et http://example/blog/hobby/mypost
ou http://example/blog/someCategory/someSumCategory/mypost
.
Corrigez-moi si je me trompe, mais votre situation n’est qu’un ensemble de pages de catégories reliées à votre page (unique) contenant le message en question. Il suffit donc d’ajouter un lien canonique dans http://example/blog/life/my-own-garden.html
en se liant à lui-même et vous pourrez continuer.
Au cas où vous auriez réellement des URL différentes de celles de votre message, sélectionnez simplement l'URL que vous souhaitez avoir comme canonique et ajoutez un lien canonique à toutes les différentes URL (avec le même contenu) menant à l'URL de votre choix. Donc, parmi les différentes URL qui renvoient au même poste (dans son intégralité !!), l’un aura un terme canonique pour lui-même et les autres auront des noms canoniques pour le précédent.