ambreramos Posted August 2 Share Posted August 2 Je travaille actuellement sur un site sous Prestashop 1.7.7.4, et j'ai un souci au niveau de la configuration des URLs de mes produits. Depuis les pages qui affichent mes produits sous forme de Card, lorsque je clique sur "Voir le produit" depuis une de ces Cards, l'URL de mon produit s'affiche de la manière suivante : nom du site + catégorie + produit + déclinaison. Dans un objectif de simplification de mes URLs, j'aimerais que depuis ces pages d'affichage de produits, lorsqu'on clique sur "Voir le produit", cela affiche l'URL basique du produit et non l'URL complète avec la déclinaison. Jusqu'ici, j'ai tenté une règle de réécriture dans mon fichier .htaccess sans succès, j'ai également trouvé dans mon fichier miniature product.tpl le code suivant : <a href="{$product.url}" class="btn btn-view btn-primary"> {if $category && is_object($category)} {if $category->id_category == 23} {l s='Voir l\'atelier >' d='Shop.Theme.Actions'} {else} {l s='Voir le produit' d='Shop.Theme.Actions'} {l s='>' d='Shop.Theme.Actions'} {/if} {elseif $category && is_array($category)} {if $category["id_category"] == 23} {l s='Voir l\'atelier >' d='Shop.Theme.Actions'} {else} {l s='Voir le produit' d='Shop.Theme.Actions'} {l s='>' d='Shop.Theme.Actions'} {/if} {else} {l s='Voir le produit' d='Shop.Theme.Actions'} {l s='>' d='Shop.Theme.Actions'} {/if} </a> Je vois que ce code récupère l'URL de base du produit, de ce fait je ne comprends pas comment mes produits peuvent continuer à s'ouvrir avec des URLs spécifiques aux déclinaisons du produit. Peux-tu m'aider ? Link to comment Share on other sites More sharing options...
Mediacom87 Posted August 2 Share Posted August 2 Bonjour, cet article devrait vous aider : https://www.mediacom87.fr/seo-et-url-de-vos-produits-sur-prestashop-17/ 1 Link to comment Share on other sites More sharing options...
ambreramos Posted August 2 Author Share Posted August 2 7 minutes ago, Mediacom87 said: Bonjour, cet article devrait vous aider : https://www.mediacom87.fr/seo-et-url-de-vos-produits-sur-prestashop-17/ Super, merci beaucoup ! 😀 Link to comment Share on other sites More sharing options...
ambreramos Posted August 21 Author Share Posted August 21 (edited) On 8/2/2024 at 11:25 AM, Mediacom87 said: Bonjour, cet article devrait vous aider : https://www.mediacom87.fr/seo-et-url-de-vos-produits-sur-prestashop-17/ Bonjour, Je me permets de re-citer ta réponse. En effet, au 2 août lorsque j'ai réalisé la modification proposée dans ton article, tout s'est bien passé et je n'avais plus de problème lié à l'affichage des déclinaisons des produits dans les URLs. Cependant, je viens de voir qu'à ce jour, tous les produits sur le site sur lequel je travaille qui ont de nouveau ce problème. J'ai revérifié mon fichier /templates/catalog/_partials/miniatures/product.tpl où tous les appels à l'URL du produit sont bien sous la forme $product.canonical_url. Par contre, j'ai remarqué que mon fichier /templates/catalog/product.tpl avait encore un appel à $product.product_url, que j'ai tenté de changer par $product.canonical_url mais cela ne change rien... EDIT : J'ai même tenté une modification de mon /templates/catalog/_partials/miniatures/product.tpl dans le thème parent... Aurais-tu une idée ? Merci d'avance 🙂 Edited August 21 by ambreramos (see edit history) Link to comment Share on other sites More sharing options...
ambreramos Posted August 21 Author Share Posted August 21 1 hour ago, ambreramos said: Bonjour, Je me permets de re-citer ta réponse. En effet, au 2 août lorsque j'ai réalisé la modification proposée dans ton article, tout s'est bien passé et je n'avais plus de problème lié à l'affichage des déclinaisons des produits dans les URLs. Cependant, je viens de voir qu'à ce jour, tous les produits sur le site sur lequel je travaille qui ont de nouveau ce problème. J'ai revérifié mon fichier /templates/catalog/_partials/miniatures/product.tpl où tous les appels à l'URL du produit sont bien sous la forme $product.canonical_url. Par contre, j'ai remarqué que mon fichier /templates/catalog/product.tpl avait encore un appel à $product.product_url, que j'ai tenté de changer par $product.canonical_url mais cela ne change rien... EDIT : J'ai même tenté une modification de mon /templates/catalog/_partials/miniatures/product.tpl dans le thème parent... Aurais-tu une idée ? Merci d'avance 🙂 J'ai trouvé une solution ! Dans le fichier controllers/front/ProductController.php, on remarque que dans la génération des URLs de produits, l'attribut des produits est toujours fourni. J'ai donc remplacé cette partie : 'product_url' => $this->context->link->getProductLink( $product['id_product'], null, null, null, $this->context->language->id, null, $product['id_product_attribute'], false, false, true, $isPreview ? ['preview' => '1'] : [] ) par ceci : 'product_url' => $this->context->link->getProductLink( $product['id_product'], null, null, null, $this->context->language->id, null, null, false, false, true, $isPreview ? ['preview' => '1'] : [] ), Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now