Jump to content

[RÉSOLU] Problème référencement avec 1.5


Recommended Posts

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 by EtapDesign (see edit history)

Share this post


Link to post
Share on other sites

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 ;)

Share this post


Link to post
Share on other sites

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?

Share this post


Link to post
Share on other sites

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

Share this post


Link to post
Share on other sites

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

Share this post


Link to post
Share on other sites

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.

  • Like 1

Share this post


Link to post
Share on other sites

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.

Share this post


Link to post
Share on other sites

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.

Share this post


Link to post
Share on other sites

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.

  • Like 1

Share this post


Link to post
Share on other sites
Guest
This topic is now closed to further replies.
×
×
  • Create New...

Important Information

Cookies ensure the smooth running of our services. Using these, you accept the use of cookies. Learn More