Nouveau module : LOGIK CONTEST PLAY

Nouveau module : LOGIK CONTEST PLAY

Découvrez notre dernière création pour vos boutiques sous PrestaShop ou ThirtyBees.

Améliorez votre trafic, donnez de la vie à votre site et boostez votre fichier clientèle en créant des jeux concours.

Programmez des offres commerciales avec une date de début et de fin, permettant de mettre en avant une opération marketing :
  • Personnalisation des champs du formulaire
  • Tirage au sort du / des gagnant(s)
  • Construction d’une base client par rapport aux offres
  • Ajoutez de l’interaction à votre boutique
  • Fidélisez la clientèle
  • Formulaire sécurisé avec le Recaptcha de Google
  • Possibilité d’exporter l’ensemble des participations au format CSV.
  • Afficher une bannière dans le jeu concours.
  • Afficher les conditions pour le jeu concours dans le formulaire à l’aide des pages CMS.
  • Vérification des personnes déjà inscrites par rapport à l’adresse mail et le numéro de téléphone.

 

Vous pouvez trouver plus d’informations sur notre site de développements.

 

 

Nouveau module : Catalogue Price PDF

Nouveau module : Catalogue Price PDF

Nous avons le plaisir de vous présenter notre nouvelle création pour les solutions PrestaShop et ThirtyBees.

Vous avez besoin de générer un fichier PDF de tous les produits que vous avez sur votre boutique PrestaShop/ThirtyBees ?

Ce module permet de le faire assez facilement et peut générer un gros fichier à condition que votre serveur soit performant (VPS ou dédié).

Un module pratique pour présenter son offre en « offline » ou pour disposer d’un catalogue en format papier lorsqu’on est en déplacement.

 

Rendre toutes les règles de panier non cumulables

Bien gérer des règles de paniers est essentiel pour une boutique e-commerce. PrestaShop le fait grâce aux règles de paniers. Cependant, quand on possède un catalogue important avec de multiples règles, on peut décider de n’en rendre aucune cumulable. Et par défaut, ça coince…

La solution e-commerce PrestaShop offre la possibilité de déterminer des règles de panier. Cette fonctionnalité permet entre autres de créer des codes de réduction qui offrent des avantages aux clients ou encore l’ajout de produits cadeaux automatiques dans le panier. Très largement utilisée par les e-commerçants, PrestaShop propose également de rendre cumulables ou non, des règles de panier. Puis-je utiliser le code promo NEW16 et profiter du produit cadeau ? Autre point intéressant, il est également possible de prioriser les règles. Ainsi, celle de priorité 1 sera exécutée avant celle de priorité 2. Cependant, lorsque l’on crée une nouvelle règle de panier, cette dernière est par défaut cumulable avec l’ensemble des autres règles de paniers définies précédemment. Ce fonctionnement n’est pas paramétrable et peut poser certains problèmes à des e-commerçants possédant des gros stocks de règles et souhaitant contrôler le cumul des règles entre elles.

Si vous souhaitez pour votre boutique, que les règles de panier ne soient plus cumulables, vous pouvez utiliser la solution ci-dessous. Attention, celle-ci requiert des compétences techniques et l’accès aux fichiers sources de votre boutique.

Il faut effectuer deux modifications : dans la classe CartRule.php et dans le fichier du thème discount.tpl.

Dans le fichier CartRule.php, vous devez commenter ou supprimer l’ensemble de la condition suivante :

Puis ajouter la portion de code suivante à la suite :

Dans le fichier discount.tpl de votre thème actif, vous devez corriger les lignes suivantes :

par

Au final, lorsqu’un client ajoutera un deuxième code promotion à son panier, cela créera l’erreur suivante : Ce bon de réduction n’est pas cumulable avec un autre bon de réduction déjà présent dans votre panier. Si le client veut changer de code promotion, il faudra alors qu’il commence par supprimer celui déjà ajouté.

En ce qui concerne les contrôleurs et les classes propres de PrestaShop, il est conseillé de passer par un override. Si vous souhaitez utiliser un override pour votre boutique, n’oubliez pas de vérifier dans les Paramètres avancés (puis Performances) de votre boutique que vous autorisez ces surcharges. Vous devez avoir la même configuration que ci-dessous.

Vous pouvez également télécharger le fichier modifié CartRule.php avec la solution décrite ci-dessus. Il est à placer dans le dossier /override/classes/. Pour éviter toute source d’erreurs pensez à vider votre cache.

Cette solution a été testée et fonctionne avec la version 1.6.1.0 et supérieures de PrestaShop.

A bientôt pour de nouvelles astuces !

 

 

Optimisation des performances de PrestaShop

Est-il nécessaire d’améliorer la vitesse de chargement de une boutique PrestaShop ? On va répondre à cette question dans l’article qui suit.

La rapidité de chargement d’une boutique en ligne est primordiale même si ce n’est pas le seul élément à prendre en compte pour augmenter le nombre de ventes. Au-delà de 3 secondes de chargement, la moitié des utilisateurs sont susceptibles de quitter la boutique. Ça fait réfléchir… Il est compliqué sans un bagage technique minimum de déterminer l’impact de la vitesse de chargement sur les ventes et surtout d’optimiser le site web.

Voici un guide complet pour optimiser le chargement de PrestaShop, en compilant toutes les informations que j’ai pu lire et mettre en pratique.

 

Quelle est la vitesse de chargement de mon site PrestaShop ?

J’utilise au quotidien plusieurs outils pour mesurer la vitesse des sites web. Je partage avec vous quelques outils efficaces pour tester la vitesse de votre site :

  • Page Speed Insight : analyse du contenu et recommandations
  • GTmetrix : performant car il combine 2 outils à savoir Page Speed et Yslow
  • Wichloadfaster : parfait pour se comparer au concurrent
  • Loadimpact : test et optimisation avec simulations
  • Pingdom : détails sur les éléments, fichiers et temps de chargement

 

La vitesse de chargement bloque-t-elle mes ventes ?

À partir du moment où vous connaissez la vitesse de chargement de votre site, lisez quelques conséquences directes du temps de chargement sur les ventes d’une boutique.

Voici une réponse en quelques chiffres dans cette infographie :

  • Au-delà de 1,5 secondes, votre boutique est lente et donc converti moins
  • Si votre site génère 100€ par jour, avec 1 seconde de temps de chargement en moins, vous pouvez prétendre gagner 7€ de plus par jour, soit 2555€ par an !
  • 1 seconde de plus pour Amazon, c’est 1% de revenus perdus !
  • Walmart gagne 2% sur son taux de conversion à chaque seconde gagnée sur le temps de chargement !
  • Mozilla a augmenté de 15% son taux de téléchargement avec 2,2 secondes économisées !

En somme, il est impossible de savoir combien exactement vous allez pouvoir gagner en augmentant les performances de votre boutique en ligne. En revanche, il est tout à fait possible d’avoir une prévision sur la tendance liée à l’augmentation des performances de votre site.

 

Comment optimiser la vitesse de chargement de PrestaShop ?

Une fois que vous avez pris connaissance de l’impact de la vitesse de chargement sur vos ventes, il vous reste à mettre en pratique ce que vous avez vu. Je vais vous montrer dans la suite de cet article comment mettre en place diverses optimisations assez simples pour améliorer la vitesse d’affichage de PrestaShop.

Pour information, j’ai travaillé sur la version 1.6.1.15 de PrestaShop mais si vous êtes sur une version différente, les recommandations peuvent aussi s’appliquer dans la majorité des cas.

PrestaShop utilise Smarty comme moteur pour interpréter les fichiers de votre thème pour les afficher. Lorsque vous êtes en développement, il est nécessaire de compiler les données et vider le cache pour voir les modifications effectuées. En production, les réglages précédents sont inutiles et car ils obligent PrestaShop à charger votre site entièrement à nouveau à chaque chargement de page et c’est long !

Réglages en production (voir capture d’écran) :

  • Dans l’admin > Paramètres avancées > Performances > Smarty
  • Cochez « Ne jamais recompiler les fichiers de templates »
  • Cochez oui pour « Cache »

 

Fonctionnalités de base

PrestaShop par défaut propose un large éventail de fonctionnalités. Toutes ces fonctionnalités mettent du temps à s’afficher donc si vous n’en n’utilisez pas une, désactivez-la.

 

CCC

Toujours dans la section « Performances » de PrestaShop, la partie « CCC » qui signifie « Combiner, Concaténer et Cache » permet de réunir en un seul fichier css ou javascript l’ensemble des fichiers utilisés sur votre PrestaShop. La réduction du code supprime les espaces inutiles tandis que l’optimisation Apacje joue sur la compression gzip et l’amélioration du cache.

Réglages en production (voir capture d’écran) :

  • Dans l’admin > Paramètres avancées > Performances > CCC
  • Cochez oui pour « Smart cache pour les feuilles de style »
  • Cochez oui pour « Smart cache pour le code JavaScript »
  • Cochez oui pour « Réduction du code HTML »
  • Cochez oui pour « Compression du JavaScript dans le code HTML »
  • Cochez oui pour « Déplacer le code JavaScript à la fin »
  • Cochez oui pour « Optimisation Apache«

Pour de multiples raisons, votre thème peut ne pas être compatible avec un ou plusieurs paramètres évoqués ci-dessus. Dans ce cas, il est possible de n’activer qu’une ou plusieurs de ces options. Egalement, je vous invite à vous rapprocher de votre intégrateur pour solutionner les points concernés.

 

Serveur de média ou CDN

Les serveurs de média ou CDN (Content Delivery Network) permettent de charger les fichiers images, css, javascript, polices…depuis plusieurs serveurs.

Vous avez 3 domaines différents : indiquez-les dans les champs prévus et vos contenus seront chargés en simultanée depuis 3 serveurs différents, donc une utilisation de bande passante répartie.

Vous avez 3 sous-domaines : indiquez-les dans les champs prévus et vos contenus seront chargés en simultané depuis 3 sous-domaines différents. Vous n’offrirez pas plus de bande passante mais plus de téléchargements en simultanée.

Réglages en production :

  • Dans l’admin > Paramètres avancées > Performances > Serveur de média
  • Remplissez les 3 champs avec vos domaines ou sous-domaines

[edit du 03/10/2017]

On m’a posé une question à juste titre : « Doit-on avec les CDN dupliquer les fichiers de sa boutique PrestaShop ? » La réponse est non. PrestaShop va simplement répartir le chargement des fichiers via 3 sous-domaines ou domaines selon les cas. Le chargement des fichiers se fait alors de front et non en parallèle.

 

Chiffrement

Cette section de « Performances » invite à choisir a méthode chiffrement des cookies entre la bibliothèque mcrypt et la classe BlowFish locale.

Réglages en production :

  • Dans l’admin > Paramètres avancées > Performances > Chiffrement
  • Cochez « Utiliser Rijndael avec la bibliothèque mcrypt »

 

Cache

 

On détermine dans cette partie comment est géré le cache de votre serveur. Je vous conseille d’utiliser Memcached : si Memcached n’est pas installé sur votre serveur, je vous conseille le l’installer.

Réglages en production :

  • Dans l’admin > Paramètres avancées > Performances > Chiffrement
  • Cochez oui pour « Utiliser le cache »
  • Cochez pour « Système de cache » : « Memcached par PHP::Memcache »

 

Poids des images

Optimiser la tailles des images de PrestaShop permet de réduire la taille du site à charger. Il est donc primordial de réduire la taille des images. Pour ce faire, vous pouvez utiliser des outils gratuits en ligne comme :

  • PunyPNG : il permet de compresser les images JPG, GIF ou PNG et donne de très bons résultats
  • Tinypng : l’outil compresse les images notamment en PNG
  • Caesium Image Compressor : compression jusqu’à 90% sans perte de qualité

 

Dimensions des images

Votre navigateur au chargement d’une page parcourt tout le code de votre page et affiche le contenu en fonction des informations fournies. Indiquer les dimensions des images permet de donner directement l’information de taille de chaque image pour la placer dans la page au lieu de pré-charger les images pour les replacer ensuite.

 

Arche ou image de fond

Les images de fond ou background en anglais sont nécessaires à l’animation d’une boutique mais elles sont souvent grandes et lourdes à charger.

La technique du Lazy Loading est particulièrement utile si vous avez beaucoup d’image ou une image de fond également. Voici un article intéressant sur le sujet : https://bulledev.com/chargement-image-progressif-lazy-load/

 

Sprites css

Un sprite css est un regroupement d’images dans un seul fichier. Voici un sprite css utilisé par Google par exemple. Quand un visiteur affiche votre site, il ne charge alors qu’un seul fichier. Il n’y a donc qu’une seule requête effectuée sur le serveur ce qui est plus rapide. AlsaCréations explique très bien les sprites css dans cet article : https://www.alsacreations.com/tuto/lire/1068-sprites-css-background-position.html

En bref, pour 15 images, vous ne chargez qu’une seule image regroupant vos 15 images et c’est plus rapide !

Voici quelques outils gratuits pour générer des sprites css en ligne :

  • Stitches : assez simple avec du drag & drop
  • Toptal : simple et efficace
  • CSSSprites : upload et génération automatique

 

Compression gzip

En plus des différents points vus, vous pouvez activer la compression gzip qui va compresser les fichiers de votre site web pour réduire leur taille et donc le temps nécessaire pour les afficher dans le navigateur.

Pour activer la compression gzip, indiquer les lignes ci-dessous dans le fichier .htaccess situé à la racine de votre hébergement web :

« Defer parsing of JavaScript » ou placer judicieusement vos javascripts

Les balises <scripts> présents dans vos pages bloquent le chargement de celles-ci tant que les scripts ne sont pas chargés totalement. Il est donc important au choix de :

  • placer les scripts en fin de code, généralement avant la balise </body>
  • charger les scripts en asynchrone

Consultez cet article concernant l’optimisation des performances d’un site web et notamment du javascript : https://www.lije-creative.com/javascript-accelerer-chargement-site-internet/

 

Éviter d’appeler deux fois le même fichier

C’est évident car si on charge deux fois le même fichier, c’est plus long. Et c’est pourtant ce qui se produit si on charge ce fichier ainsi :

Chargez seulement les éléments visibles à l’écran

Votre client arrive sur une liste de 100 produits ou sur une fiche produit très longue mais veut-il forcément voir les 10 derniers produits ou les recommandations produits en bas de page ?

Il est conseillé de ne charger que les éléments visibles à l’écran en premier, puis les autres éléments au fur et à mesure si ils deviennent visibles.

Des modules permettent de faire cela et sont disponibles sur la plateforme Addons. Il est aussi possible de déterminer les éléments à charger seulement si ils sont visibles via ce tuto par exemple : https://bulledev.com/chargement-image-progressif-lazy-load/

 

Quels modules PrestaShop pour améliorer la vitesse de chargement ?

Je ne suis pas partisan d’installer une multitude de modules dans PrestaShop car ils vont certes améliorer la vitesse du site, mais ils vont aussi alourdir le site en parallèle.

Je peux citer un module d’optimisation pour PrestaShop que j’ai eu l’occasion de tester sur le site ayianna.ch : il s’agit de Page Cache. Voici les résultats GTmetrix avant et après installation avec la configuration par défaut :

  • avant installation : 58% et 77%
  • après installation : 62% et 81%

Constat : sans connaissance particulière en code, on peut tout à fait améliorer les performances avec certains modules efficaces. Attention car le module cité ne traite pas les points évoqués précédemment dans cet article.

 

Quel est l’impact de l’hébergement sur la vitesse de votre site web ?

Après avoir constaté que l’on peut optimiser via des points techniques ou des modules les performances de PrestaShop, on va parler d’un élément phare pour toute boutique en ligne : l’hébergement web.

Je vais parler de l’hébergement via mon témoignage en tant qu’utilisateur et client.

J’ai débuté en tant que freelance spécialisé PrestaShop & WordPress en 2009. A ce moment là, j’ai fait comme tout bon freelance qui débute : j’ai créé un portfolio et je l’ai hébergé chez OVH sur un hébergement mutualisé perso à 30€ HT / an. Autant dire que l’offre était imbattable pour être présent sur le web. J’ai bien dit présent, pas visible.

Aujourd’hui, mon site est toujours en place mais sur un autre hébergement : une offre de type dédié chez un hébergeur particulier qui offre du service en plus des performances. Le coût est d’environ 60€ HT / mois…pour le même service diront certains. Et bien non, pour ce prix, mon site web sous WordPress qui affichait des temps de chargement de 10s environ se charge à présent en moins de 1,5s avec une vraie infogérance en plus !

Résultats :

  • mon utilisation en tant que rédacteur et administrateur est plus agréable et plus fluide
  • votre utilisation en tant que lecteur est elle aussi plus agréable car les pages se chargent plus rapidement, et vous consultez plus de contenu sur mon site, plus de réalisations / articles…
  • Google qui prend en compte la vitesse de chargement me place plus généralement devant un concurrent qui propose un site web plus lent, donc j’ai potentiellement plus de visibilité et donc de clients

Je prend souvent cette image pour illustrer la situation : « Le web, c’est comme une course : si vous avez le meilleur pilote sans la voiture la plus rapide, vos concurrents plus rapides risquent gagner à tous les coûts ! »

Comprenez qu’avec les meilleures optimisations possibles sur votre boutique, un hébergement de qualité reste le plus grand levier pour disposer d’un site rapide à charger. Une question réside : comment bien choisir son hébergement ? Voici des éléments de réponse pour bien choisir :

  • les performances : quelles sont les performances affichées pour un PrestaShop sur telle ou telle offre ?
  • l’assistance technique ou infogérance : est-elle gratuite ou payante ? que comprend-elle ?
  • la sécurité : comment est-elle garantie ? les sauvegardes sont-elles comprises ?
  • le trafic et l’espace disque : ais-je une bande passante / espace disque illimité ?
  • le prix : il faut comparer mais pour moi ce n’est pas le critère à regarder en amont

Pour ma part, je travaille avec infomaniak, un hébergeur qui propose des offres performantes avec un vrai support, avec un vrai contact humain qui vous écoute et vous propose une solution sur-mesure.

 

Comment optimiser PrestaShop sur-mesure ?

Dans la partie précédente de l’article, vous venez de voir comment optimiser de manière générale PrestaShop, ce que vous pouvez faire. Il est également possible et c’est d’ailleurs un sujet que je traite assez souvent : l’optimisation sur-mesure des performances de PrestaShop.

Voici le déroulement du travail :

1. Audit du site web

Avant d’utiliser un outil, je consulte le site et je me place en tant que client cible de la boutique en question. J’étudie avec soin les différents éléments et stratégies mis en place pour vendre.

Ensuite, je consulte des outils pour faire ressortir les différents éléments techniques que l’on peut améliorer.

2. Recommandations concrètes

Je rédige un rapport complet et détaillé affichant les points positifs et les points clés sur lesquels il faut appuyer pour un gain maximum en temps de chargement. En effet, certaines optimisations auront un impact moindre sur la vitesse du site tandis que d’autres actions seront radicales sur un projet donné.

3. Mise en place des préconisations

On peut s’arrêter à l’étape 2, mais je peux aussi mettre en place les préconisations précédemment hiérarchisées. Tout le travail est chiffré en amont : tout est limpide sur le temps et le budget nécessaires pour la mise en place.

4. Bilan des optimisations

J’effectue un retour complet sur le travail effectué sur PrestaShop avec un comparatif avant / après généralement avec GTmetrix. Vous vendez de plus en plus !

Je suis déjà intervenu sur de nombreux projets pour améliorer les performances, voici des exemples :

 

Si vous n’avez pas le temps ou les compétences pour optimiser votre boutique PrestaShop, je peux m’en charger !

 

Conclusion

Vous pouvez améliorer les performances de PrestaShop via de nombreux leviers dont certains sont évoqués dans cet article. Ceci étant, il est conseillé d’optimiser au cas par cas pour éviter de dépenser du temps sur des points futiles sur certains sites web.

Cet article devrait en aider plus d’un, je l’espère, pour réduire le temps de chargement de PrestaShop. Je vous invite également à poster vos commentaires, questions, avis et autres astuces pour constituer une bonne base de travail ?

A bientôt !

 

 

Prestashop 1.7 : liste des variables smarty

Prestashop 1.7 inclut encore et toujours les variables Smarty, mais celles-ci ont subi beaucoup de changement, tant et à tel point que les thèmes ont tous dû s’adapter à cette nouvelle version.

Les variables globales que l’on connaissait pour Prestashop 1.6 ne sont donc majoritairement plus d’actualité, du moins en très grande majorité.

Voici donc une liste des variables Smarty de Prestashop 1.7, natives, que vous pouvez utiliser sur n’importe quelle version 1.7 désormais.

1/ Variables de boutique

2/ Variables des devises – monnaies

2/ Variables des langues

3/ Variables des clients

a/ les informations du client

b/ les adresses du client

4/ Variables de page

5/ Variables d’URL

a/ URL globales (répertoires, site et thème)

b/ URL de pages

 

Comme de bien entendu, un var_dump vous permet d’afficher ce que contient la variable, pour en utiliser les éléments.

Par exemple, afin d’afficher le contenu de la variable $page, il faudra saisir ceci : {$page|var_dump} dans un tpl de votre thème. Comme je dispose toujours d’un Prestashop 1.7 installé sur mon ordinateur, j’aurais tendance à mettre ce genre de var_dump au plus haut du site, directement dans le header, parfois même en effectuant une condition de manière à n’afficher le contenu de la variable que sur la page d’accueil. De cette manière je ne pollue pas les autres pages, et je peux en conséquent naviguer plus facilement tout en ayant sous les yeux les informations dont j’ai besoin.

 

Variables Prestashop 1.7 de boutique {$shop}

Vous pouvez donc faire un {$shop|var_dump} pour savoir ce que cette variable contient.  Beaucoup de ces paramètres sont renseignés dans l’onglet “Paramètres de la boutique” puis “Contact” et enfin l’onglet “Magasins”.

Ce qui nous ressort donc ceci :

{$shop.name} => nom de la boutique
{$shop.email} => email associé à la boutique
{$shop.logo} => logo de la boutique (qui se trouve lui dans “Apparence” puis “Thème et logo”)
{$shop.favicon} => le favicon de votre boutique (lui aussi au même endroit que les logos et le thème)
{$shop.address.address1} => champ d’adresse 1 de votre boutique
{$shop.address.address2} => champ d’adresse 2 de votre boutique
{$shop.address.postcode} => code postal de votre boutique
{$shop.address.city} => ville de votre boutique
{$shop.address.state} => province de votre boutique, ou Etat si celle-ci se trouve à l’étranger (comme aux USA)
{$shop..address.country} => le pays de votre boutique
{$shop.phone} => téléphone de votre boutique
{$shop.fax} => et enfin le fax de votre boutique

 

Variables Prestashop 1.7 de devise/monnaie {$currency}

{$currency.name} => le nom de la devise (euro, dollar, livre sterling…)
{$currency.iso_code} => le code ISO de la monnaie (comme EUR pour l’euro)
{$currency.sign} => le sigle de la devise affichée (donc € ou $)
{$currency.iso_code_num} => le numéro du code ISO de cette devise (comme 978 pur l’euro)

 

Variables Prestashop 1.7 de langue {$language}

{$language.name} => le nom de la langue (français par exemple)
{$language.iso_code} => code ISO de la langue en cours
{$language.language_code} => code langue de la langue en cours (comme fr, en, de, it…)
{$language.is_rtl} => la langue se lit-elle de droite à gauche (“rtl = right to left”)
{$language.format_lite} y {$language.format_full} => Formato de fecha simplicado y formato de fecha completo
{$language.id} => ID de la langue (en database)

 

Variables Prestashop 1.7 des clients {$customer}

Le client et ses informations

{$customer.lastname} => le nom de famille du client connecté
{$customer.firstname} => le prénom du client connecté
{$customer.email} => l’adresse email du client
{$customer.birthday} => date de naissance du client (mais celle-ci n’est plus obligatoire désormais)
{$customer.newsletter} => s’il est inscrit à la newsletter (booléen donc)
{$customer.newsletter_date_add} => date d’inscription à la newsletter
{$customer.ip_registration_newsletter} => adresse IP d’enregistrement à la newsletter
{$customer.optin} => oui ou non, le client a-t-il accepté de recevoir des offres de la part de vos partenaires ?
{$customer.date_add} => date de création du client
{$customer.date_upd} => dernière date de modification du client
{$customer.id} => identifiant du client (son ID en base de données)
{$customer.id_default_group} => identifiant du groupe client par défaut de ce client
{$customer.is_logged} => le client est-il connecté ?
{$customer.gender.name[$customer.gender.id]} => genre du client (M., Mme, etc)
{$customer.addresses[id_address].city} => Ciudad del cliente de la dirección ‘X’ que tiene asociado. (ID Dirección, porque un cliente teóricamente puede tener múltiples direcciones)

 

Le client et ses adresses

Bon à partir de là, partons du principe que le client dispose d’une adresse a minima. Chaque adresse dispose d’un identifiant, nous allons nous en servir pour récupérer des informations utiles. Remplacez donc id_address par l’identifiant de l’adresse client dont vous souhaitez avoir des informations.

{$customer.addresses[id_address].alias} => alias de l’adresse
{$customer.addresses[id_address].firstname} => prénom de la personne liée à l’adresse
{$customer.addresses[id_address].lastname} => nom de la personne liée à l’adresse
{$customer.addresses[id_address].company} => nom de l’entreprise liée à cette adresse
{$customer.addresses[id_address].address1} => premier champ d’adresse (le plus utilisé donc)
{$customer.addresses[id_address].address2} => second champ de l’adresse
{$customer.addresses[id_address].postcode} => code postal
{$customer.addresses[id_address].id_state} => identifiant du pays
{$customer.addresses[id_address].state} => Etat ou province
{$customer.addresses[id_address].state_iso} => code ISO de l’Etat ou de la province
{$customer.addresses[id_address].id_country} => ID du pays de l’adresse en cours
{$customer.addresses[id_address].country} => nom du pays
{$customer.addresses[id_address].country_iso} => code ISO de ce pays
{$customer.addresses[id_address].phone} => numéro de téléphone fixe
{$customer.addresses[id_address].phone_mobile} => numéro de téléphone portable
{$customer.addresses[id_address].dni} => DNI de l’adresse
{$customer.addresses[id_address].vat_number} => numéro de TVA intracommunautaire du client
{$customer.addresses[id_address].formatted} => adresse formatée du client

 

Variables Prestashop 1.7 de page {$page}

{$page.meta.title} => balise title de votre page (65 caractères maximum !)
{$page.meta.description} => balise meta description de votre page (pas plus de 300 caractères, ne descendez pas en-dessous de 90 !)
{$page.page_name} => nom de la page sur laquelle vous vous trouvez (comme index, product, category…)

 

Variables Prestashop 1.7 d’URL {$url}

Selon moi parmi les variables les plus utiles ! Elles vous permettront d’optimiser votre header voire d’auto-générer les balises title et meta description de manière à gagner du temps en référencement naturel sous Prestashop 1.7 (comme Prestashop 1.6 d’ailleurs, sauf que la syntaxe diffère).

URL globales (répertoires, site et thème)

{$urls.base_url} => il s’agit de l’URL de la page d’accueil de votre Prestashop
{$urls.current_url} => la page sur laquelle vous vous trouvez !
{$urls.shop_domain_url} => le nom de domaine de la boutique
{$urls.img_ps_url} => l’URL du répertoire /img de votre Prestashop
{$urls.img_cat_url} => l’URL des images des catégories, donc dans /img/c
{$urls.img_lang_url} => l’URL des images des langues du site
{$urls.img_prod_url} => l’URL des images des produits, donc /img/p
{$urls.img_manu_url} => l’URL des images des fabriquants (manufacturers), donc /img/m
{$urls.img_sup_url} => l’URL des images liées aux fournisseurs
{$urls.img_ship_url} => l’URL des images liées aux transporteurs
{$urls.img_store_url} =>
{$urls.img_url} => l’URL des images dans votre thème, donc /themes/votretheme/assets/img
{$urls.css_url} => l’URL des fichiers CSS de votre thème, donc /themes/votretheme/assets/css
{$urls.js_url} => l’URL des fichiers javascript de votre thème, donc /themes/votretheme/assets/js
{$urls.pic_url} => l’URL du répertoire /upload

 

URL des pages

{$urls.pages.address} => l’URL de la page “Mon adresse” côté client
{$urls.pages.addresses} => l’URL de la page “Mes adresses” côté client
{$urls.pages.authentication} => l’URL de la page de connexion
{$urls.pages.cart} => l’URL du panier
{$urls.pages.category} => l’URL de la catégorie
{$urls.pages.cms} => l’URL des CMS
{$urls.pages.contact} –> l’URL de la page de contact (le formulaire Prestashop si souvent spammé )
{$urls.pages.discount} => l’URL de la page des promotions
{$urls.pages.guest_tracking} => l’URL de suivi de commande pour les clients du groupe “Invités”
{$urls.pages.history} => l’URL de l’historique des commandes
{$urls.pages.identity} => l’URL de la page des informations personnelles côté client
{$urls.pages.index} => l’URL de la page, tout simplement !
{$urls.pages.my_account} => l’URL de la page “Mon Compte”
{$urls.pages.order_confirmation} => l’URL de la page de confirmation de commande
{$urls.pages.order_follow} => l’URL de la page de suivi de commande
{$urls.pages.order} => l’URL de la page de commande !
{$urls.pages.order_return} => l’URL de la page de retour de commande, utile notamment pour paramétrer des modules de paiement
{$urls.pages.order_slip} => l’URL à appeler pour le bon de commande
{$urls.pages.pagenotfound} => La 404
{$urls.pages.password} => l’URL de la page de récupération de mot de passe (“Mot de passe oublié ?”)
{$urls.pages.pdf_invoice} => l’URL des PDF des factures
{$urls.pages.pdf_order_return} => l’URL des PDF de retours de commandes
{$urls.pages.pdf_order_slip} => l’URL du PDF des bons de commandes
{$urls.pages.prices_drop} => l’URL de la page listant les produits aux prix réduits
{$urls.pages.product} => l’URL de la fiche produit
{$urls.pages.search} => l’URL de la page de recherche
{$urls.pages.sitemap} => votre page de plan de site, à ne pas confondre avec le sitemap
{$urls.pages.stores} => la page listant vos magasins
{$urls.pages.supplier} => la page listant vos fabricants
{$urls.pages.register} => l’URL de la page de création de compte
{$urls.pages.order_login} => URL de connexion depuis le tunnel de commande
{$urls.theme_assets} => URL vers le répertoire /assets de votre thème (contenant donc les CSS, le JS, les IMG, etc)
{$urls.actions.logout} => URL de déconnexion pour le client

 

Personnellement, je trouve que ces variables se sont grandement améliorées par rapport à Prestashop 1.6, et simplifient beaucoup la gestion des thèmes et des modules sur la version 1.7.

Servez-vous en à outrance ! Merci à TeamEver pour ses informations

 

 

Procédure pour exécuter une recherche clients par code postal et no d’envoi

Un must pour mes boutiques.

Un de mes clients m’a posé une question sur sa commande et me donne que le numéro de facture.

Cherchez d’abord le client, puis regardez dans ses ocommande ce qu’il veut dire. Cherchez et vérifiez.

Une meilleur recherche et plus rapide serai de rechercher par numéro de facture. Pour cela, on va créer une overide, pour pouvoir exécuter cette option de recherche.

Tout d’abord, créez le fichier : AdminOrdersController.php et ajoutez ce code :

Transférez le fichier  AdminOrdersController.php dans :  override / controllers / admin /…

 

Bien que cela soit plus simple, pourquoi nous arrêter là? Et si on y ajoutai l’option de recherche par code postal ?

Allons-y ….

Ouvrez le fichier crée ci-dessus ou crée le dit fichier :AdminOrdersController.php et ajoutez/modifiez le code comme ceci :

Transférez le fichier  AdminOrdersController.php dans :  override / controllers / admin /…

 

Et voila, vous avez plus d’options pour vos recherches de clients, factures, code postaux, etc..

Vous avez des commentaires, des suggestions ?  N’hesitez pas…

 

error: Site protégé contre les copieurs !!