EtapDesign Posted April 25, 2013 Share Posted April 25, 2013 (edited) Je ne savais pas trop où placer le sujet, je l'ai donc publié sur 1.5 et ici. Tout d'abord bonjour à la communauté, Mon soucis, c'est que je suis en train de basculer sur la nouvelle version, cependant j'ai un soucis de format, d'url, sur prestashop 1.4, nous avions réussi à ce qu'elle soit de cette forme là : www.site.fr/produit1 Avec Prestashop 1.5, le format est de cette ordre : www.site.fr/categorie/produit1/taille1/couleur1 En le laissant sous cette forme, ce serait une catastrophe : D'une part à cause du duplicate content qui se multiplierait donc aux déclinaisons: www.site.fr/categorie/produit1/taille1/couleur1 www.site.fr/categorie/produit1/taille1/couleur2 etc Et va falloir que je fasse des centaines de redirections vers mes anciennes pages... Existe-il un moyen pour enlever les déclinaisons de l'url? et encore mieux d'enlever également la catégorie associé? Je ne comprends pas, cette nouvelle version devrait aider au référencement au lieu du contraire... Edited May 7, 2013 by EtapDesign (see edit history) Link to comment Share on other sites More sharing options...
labelandco Posted April 25, 2013 Share Posted April 25, 2013 le DC dans ce cas n'est absolument pas catastrophique pour le référencement de votre boutique puisque Google ne tient compte en DC que des textes issus ailleurs sur d'autres sites. On se doute bien qu'une boutique ayant des produits avec déclinaison ne va pas créer une description courte et longue différente pour chaque déclinaison. Si vous aviez fait une petite recherche sur le forum référencement vous auriez trouvé de nombreux suets qui parle justement de cela Link to comment Share on other sites More sharing options...
EtapDesign Posted April 25, 2013 Author Share Posted April 25, 2013 Merci tout d'abord pour votre réponse. Mais vous ne répondez qu'à moitié à mes questions, si vous préférez, je ne veux pas de doublon, du moins le minimum sur ma boutique en ligne, cela perturbe l'analyse du site par les moteurs de recherches s'il y a 40000 doublons plutôt qu'une page pertinente et qui existe une seule et unique fois sur l'interface. Toute façon, je le vois dans les positions que j'ai actuellement sur de nombreuses requêtes. Est-il donc possible d'enlever les déclinaisons dans les URL? Link to comment Share on other sites More sharing options...
labelandco Posted April 25, 2013 Share Posted April 25, 2013 je n'ai pas répondu a moitie j'ai répondus tout court je vous le répète : vous n'avez aucun risque de pénalisation DC de Google avec des produits ayant des déclinaisons Cela ne perturbe rien du tout dans les requêtes de recherche des moteurs de recherche Le DC Malvaillant que pénalise Google c'est la copie d'un pan de texte pris sur un autre site. Google et Bing se doute bien que pour un produit avec un déclinaison il y aura du DC par contre sur GWT il ne fait pas de différence entre le DC malveillant et le bienveillant, mais Boeing GWT est un outil indicatif Link to comment Share on other sites More sharing options...
EtapDesign Posted April 25, 2013 Author Share Posted April 25, 2013 Sincèrement, je préfère avoir une page produit du genre : www.site.fr/t-shirt-tennis -- > avec toutes les déclinaisons produits incluses sans que l'url ne change, par exemple l'utilisateur choisit la couleur bleu et la taille M, l'url reste inchangée. Plutôt qu'une même fiche produit où l'URL change pour chaque déclinaison sélectionnée par l'utilisateur, par exemple, pour la sélection du t-shirt bleu taille m: www.site.fr/t-shirt-tennis/couleur-bleu/tailleM Link to comment Share on other sites More sharing options...
labelandco Posted April 25, 2013 Share Posted April 25, 2013 dans ce cas il vous faudra travailler dans le htaccess Link to comment Share on other sites More sharing options...
EtapDesign Posted April 25, 2013 Author Share Posted April 25, 2013 Il va falloir que j'm'amuse avec le fichier .htaccess pour chaque fiche produit? Link to comment Share on other sites More sharing options...
Ninja Of Web Posted May 1, 2013 Share Posted May 1, 2013 Bonjour, Vous avez plusieurs solutions : soit utiliser ce que l'on appelle communément les urls canonique (voir ici un explication complète) --> pas compliqué à mettre en place soit supprimer la portion de code qui ajoute la déclinaison dans l'url. voici comment faire pour la version 1.5.4.0 de prestaShop : Aller dans le fichier suivant : themes/nom_de_votre_thème/js/product.js Si rien a été modifier dans ce fichier, vous avez la méthode suivante à la ligne 637 : function getProductAttribute() { // get product attribute id product_attribute_id = $('#idCombination').val(); product_id = $('#product_page_product_id').val(); // get every attributes values request = ''; //create a temporary 'tab_attributes' array containing the choices of the customer var tab_attributes = []; $('#attributes select, #attributes input[type=hidden], #attributes input[type=radio]:checked').each(function(){ tab_attributes.push($(this).val()); }); // build new request for (var i in attributesCombinations) for (var a in tab_attributes) if (attributesCombinations[i]['id_attribute'] === tab_attributes[a]) request += '/'+attributesCombinations[i]['group'] + '-' + attributesCombinations[i]['attribute']; request = request.replace(request.substring(0, 1), '#/'); url = window.location + ''; // redirection if (url.indexOf('#') != -1) url = url.substring(0, url.indexOf('#')); // set ipa to the customization form $('#customizationForm').attr('action', $('#customizationForm').attr('action') + request) window.location = url + request; } remplacer cette méthode par : function getProductAttribute() { // get product attribute id product_attribute_id = $('#idCombination').val(); product_id = $('#product_page_product_id').val(); // get every attributes values request = ''; //create a temporary 'tab_attributes' array containing the choices of the customer var tab_attributes = []; $('#attributes select, #attributes input[type=hidden], #attributes input[type=radio]:checked').each(function(){ tab_attributes.push($(this).val()); }); // build new request /*for (var i in attributesCombinations) for (var a in tab_attributes) if (attributesCombinations[i]['id_attribute'] === tab_attributes[a]) request += '/'+attributesCombinations[i]['group'] + '-' + attributesCombinations[i]['attribute']; request = request.replace(request.substring(0, 1), '#/'); url = window.location + ''; // redirection if (url.indexOf('#') != -1) url = url.substring(0, url.indexOf('#')); // set ipa to the customization form $('#customizationForm').attr('action', $('#customizationForm').attr('action') + request) window.location = url + request;*/ } et oui il s'agit d'un commentaire de la zone concerné et non une suppression au cas ou. Mais bon je pencherai plus pour une solution utilisant la canonical url Cordialement, Loic. 1 Link to comment Share on other sites More sharing options...
Alicante-comm Posted May 1, 2013 Share Posted May 1, 2013 Bonsoir, En 1.5 les urls se redirige de la façon suivant : site.fr/produit#/taille#/couleur Google prend en compte tous ce qui est précédé par un # et ignore tout ce qui suit Si vous supprimez cette réécriture, vos attributs ne seront plus pris en compte dans les commandes. Link to comment Share on other sites More sharing options...
EtapDesign Posted May 7, 2013 Author Share Posted May 7, 2013 Merci pour vos réponses,notamment à celle de Ninja Of Web pour sa contribution. Donc d'après tes dires Alicante-comm, si on enlève les déclinaisons de l'url, elles ne seront pas incluses dans la commande?en êtes vous sûre? Si c'est vraiment le cas, alors je ne pourrais pas me permettre de les enlever, surtout si finalement Google ne les prends pas en compte grâce au #. Cependant, y a t-il un moyen de procéder comme la version 1.4 par rapport aux catégories, par exemple: Version 1.4 : monsite.fr/18-t-shirt-panther Version 1.5 : monsite.fr/t-shirt/18-t-shirt-panther Je souhaiterais donc enlever la catégorie de l'url, est-ce possible? Merci pour vos réponses. Cordialement. Link to comment Share on other sites More sharing options...
EtapDesign Posted May 7, 2013 Author Share Posted May 7, 2013 Après de multiples recherches, j'ai trouvé la solution pour ceux qui seraient intéressées pour enlever les catégories: Dans le fichier link.php dans /classes if ($dispatcher->hasKeyword('product_rule', $id_lang, 'tags')) $params['tags'] = Tools::str2url($product->getTags($id_lang)); + if ($dispatcher->hasKeyword('product_rule', $id_lang, 'category')) + $params['category'] = Tools::str2url($product->category); + if ($dispatcher->hasKeyword('product_rule', $id_lang, 'reference')) $params['reference'] = Tools::str2url($product->reference); Là où il y a des "+" , enlever ces lignes, ainsi la catégorie s'enlèvera de l'url, pour plus de précisions, la modification a lieu vers la ligne 123. J'indique bien évidemment la source, qui, pour son cas, voulait au contraire ajouter la catégorie : https://github.com/PrestaShop/PrestaShop/commit/6080795f9e69850d22cd78b1093be0aedab74520 Je vais mettre le post à RÉSOLU, merci pour vos interventions. Bonne fin de soirée. 1 Link to comment Share on other sites More sharing options...
Recommended Posts