Toulousain Posted February 16, 2022 Share Posted February 16, 2022 (edited) Bonjour, Sur mon site la description courte correspond à la description longue tronquée à 300 caractères. Pour ce faire j'ai remplacé dans le product.tpl Quote {$product.description_short nofilter} Par Quote {$product.description nofilter} J'ai bien la description longue qui s'affiche a la place de la description courte mais il faut la tronquer. Pour tronquer la description a 300 caractères j'ai rajouté |truncate:300:"..." ce qui donne Quote {$product.description_short|truncate:300:"..." nofilter} A ce stade j'ai la description comme souhaité. Ce qui me gêne c'est que le truncate ne tronque pas que le texte mais prend en compte les caractères HTML ce qui dans certains cas modifie la mise en forme de la page produit. par exemple si je souhaite tronquer mon texte au dixième caractères ma balise html qui encapsule le texte Quote <p class="cs80D9435B">mon texte devient Quote <p... Auriez vous une solution ou une préconisation a me soumettre qui permettrai a la fonction truncate d'éviter de tronquer les balises HTML ? Par avance merci de votre retour, Cordialement Edited March 2, 2022 by Toulousain Résolu (see edit history) Link to comment Share on other sites More sharing options...
Divine Posted February 16, 2022 Share Posted February 16, 2022 Bonjour, Il faudrait retirer les balises, tronquer la description puis remettre les balises, ce qui n'est pas vraiment envisageable. Si je peux me permettre, je trouve qu'utiliser le début de la description longue n'est pas terrible ni pour le référencement, ni pour les visiteurs. Il vaut mieux utiliser la description courte afin de placer un texte différent de la description longue, et qui comporte directement les informations les plus utiles pour les visiteurs. 2 Link to comment Share on other sites More sharing options...
Toulousain Posted February 16, 2022 Author Share Posted February 16, 2022 Bonjour Divine et merci pour votre retour rapide et vos remarques, La description courte est un extrait optimisé pour le seo car j'y intègre d'autre éléments comme la marque ou la ref et des REPLACE par conséquent l'extrait est dilué et me permet je pense de répondre a la demande du client et celle des moteurs. La boutique comprend 140 000 produits et effectivement retirer les balises, tronquer la description puis remettre les balises n'est pas ce qu'il y a de mieux. Je continu de chercher de mon coté sur le moteur smarty en attendant de voir si il n'y a pas de meilleurs solutions. Merci encore Link to comment Share on other sites More sharing options...
doekia Posted February 17, 2022 Share Posted February 17, 2022 Le plus simple étant de toute manière de ne rien tronquer en terme de balisage mais de faire cette réduction via css en jouant avec overflow et text-overflow Link to comment Share on other sites More sharing options...
Mediacom87 Posted February 17, 2022 Share Posted February 17, 2022 Il y a 4 heures, doekia a dit : Le plus simple étant de toute manière de ne rien tronquer en terme de balisage mais de faire cette réduction via css en jouant avec overflow et text-overflow Salut, 2 fois le même texte sur la même page, je suis pas convaincu par la solution pour le SEO. Mais dans tous les cas, le truncate aurait le même effet au final. Link to comment Share on other sites More sharing options...
doekia Posted February 17, 2022 Share Posted February 17, 2022 (edited) Pourquoi 2x? On change l'overflow via js (bouton more / less) Edited February 17, 2022 by doekia (see edit history) Link to comment Share on other sites More sharing options...
Mediacom87 Posted February 17, 2022 Share Posted February 17, 2022 il y a 16 minutes, doekia a dit : Pourquoi 2x? On change l'overflow via js (bouton more / less) Tout à fait, je partais l'idée initiale d'avoir deux fois le texte description. Link to comment Share on other sites More sharing options...
Toulousain Posted February 17, 2022 Author Share Posted February 17, 2022 Bonjour et merci Doekia et Mediacom87 pour vos remarques et suggestions . Doekia j'ai eu la même réaction que Mediacom87. Je me suis dit (visiblement à tort) que masquer une partie de la description en CSS règlerai le probleme du truncate coté visiteurs mais pas pour les robots (seo). Pourriez vous m'en dire un peu plus sur la technique de l'overflow via js ? En quoi consiste-t-elle car j'avoue ne pas connaitre. Auriez vous un exemple, une doc/tuto ou un post a me communiquer pour me mettre sur la piste ? Encore merci à vous pour votre implication. Link to comment Share on other sites More sharing options...
Mediacom87 Posted February 17, 2022 Share Posted February 17, 2022 Bon, j'ai trouvé la solution au problème de départ. {Tools::truncateString($product->description, 300)} Link to comment Share on other sites More sharing options...
Toulousain Posted February 17, 2022 Author Share Posted February 17, 2022 Félicitations je vous décerne la palme d'or Mediacom87 car j'ai cherché et testé tout un tas de possibilités sans avoir de résultats aussi parfait. Ca marche parfaitement, le html est conservé a merveille et le texte tronqué au bon endroit. Voici un exemple du résultat obtenu. Quote <p class="cs95E872D0"><span class="csA7555675">Une conception brevetée, un choix rigoureux de matériaux et une qualité de fabrication extrême garantissent aux filtres Twin Air des performances et un niveau de protection inégalés...</span></p> Pour que votre proposition fonctionne sur presta 1.7.8.3 j'ai remplacé Quote {Tools::truncateString($product->description, 300)} Par Quote {Tools::truncateString($product.description, 300)} et pour n'afficher que le texte sans les balises html il faut rajouter "nofilter" ce qui donne Quote {Tools::truncateString($product.description, 300) nofilter} Encore merci à vous Mediacom87 d'avoir continué a chercher une solution de votre coté alors que vous étiez déjà intervenu sur le sujet. La résilience finit par payer. Merci également à Divine et Doekia. Link to comment Share on other sites More sharing options...
Mediacom87 Posted February 17, 2022 Share Posted February 17, 2022 Et pour na perdre la trace du truc j’ai fait un petit article rappelant le cheminement vers ce résultat https://www.mediacom87.fr/comment-truncate-proprement-une-chaine-html/ 1 Link to comment Share on other sites More sharing options...
Toulousain Posted February 18, 2022 Author Share Posted February 18, 2022 Très bonne idée et très bon article, Du coup j'ai découvert votre site et je vois que vous traitez pas mal de sujet. Auriez vous des infos a me communiquer au sujet du dossier microdata nouvellement intégré dans le thème classic de PrestaShop ? /themes/classic/templates/_partials/microdata Je constate en parallèle que les données structurées, Rich snippet... ont disparus sur les pages TPL product, list...... Je cherche des infos car j'aimerais mettre à jour mon thème, c'est a dire supprimer les données structurées, Rich snippet... des pages et intégrer le dossier microdata. Si vous avez des infos je suis preneur . Merci 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