ArticlesNous lire

  • Tesial en 3 questions

    Tesial

    Tesial en 3 questions

    Que faites-vous ?

    Nous nous voyons comme des constructeurs de solutions numériques. Des solutions qui ont pour objectif de créer, d’améliorer et de pérenniser les projets de nos clients. Nous voulons leur permettre d’optimiser et de faire croître leur business en ligne qu’il s’agisse d’e-commerces, de sites web ou de plateformes interactives et intégrées. 

    Qui sont vos clients ? 

    Nous visons plusieurs types de clients pour des projets de petite à grande envergure. Nous soutenons les business en ligne, tel que l’e-commerce, mais pas que cela. Nous accompagnons les sociétés qui veulent confirmer leur identité et leurs activités en ligne au travers de projets cohérents d’un point de vue technique et graphique.

    Nos clients favoris sont bien entendu ceux avec lesquels on arrive à développer une collaboration aussi bonne que durable. 

    Quelle est la spécificité de Tesial ? 

    C’est très certainement notre manière de travailler qui repose sur une amitié et une collaboration de longue date et qui valorise les compétences de chacun. Au fil du temps, nous avons développé une belle expertise, puisqu’en véritables passionnés nous suivons les développements des technologies numériques depuis plus de 15 ans afin d’en tirer le meilleur parti au profit de nos clients.

    Nous désignons généralement un leader de projet, ou un binôme, qui sera choisi en fonction de la nature du projet et qui sera chargé d’en garantir l’aboutissement. C’est un gage de succès pour nos clients auprès desquels nous voulons toujours être à l’écoute. 

    L’objectif est qu’ils puissent nous faire confiance durablement et qui sait, pourquoi pas, devenir des amis à leur tour ! Parce que, pour nous, le numérique est avant tout une aventure humaine. 

    ...

    En savoir plus arrow link

  • Comment et pourquoi sécuriser son site PrestaShop ?

    E-CommercePrestaShop

    Comment et pourquoi sécuriser son site PrestaShop ?

    Qu'est ce que la sécurisation ?

    Lorsqu’on nous demande le développement d’un site qu’il soit d’e-commerce ou pas, nous conseillons vivement de le sécuriser, de l’encrypter. Ou dit autrement d’avoir un petit cadenas vert avec un protocole https au lieu de http. Pourquoi est-ce nécessaire :

    • Cela permet à l’internaute d’être sûr qu’il est sur le bon site (et éviter le phishing)

    • Cela permet d’éviter le vol de mots de passetéléchargement

    • Cela empêche que les données soient lues et/ou modifiées dans la communication

    La sécurisation est réalisée par une autorité de certification qui va principalement authentifier le site ainsi que la société ou le particulier responsable, et fournir un certificat permettant d’encrypter toutes les données qui transiterons sur Internet vers et à partir de ce site.

    Comment commander un certificat ?

    Plusieurs types de certificats sont disponibles, en fonction des besoins :

    • un simple certificat de base permettant de ne crypter que sa boutique (par exemple https://my_shop.com)

    • un certificat “wildcard” qui lui permettra de crypter sa boutique, mais aussi d’autres services comme son site vitrine ou son serveur mail (https://my_site.my_shop.com et https://webmail.my_shop.com)

    • un certificat “multi-URL” qui lui permettra de crypter tout ce qui se trouve derrière tous les noms de domaine qu’il détient

    • une option possible pour les trois précédentes : voir devant le https en vert un petit encart vert indiquant une entreprise certificative garantissant la qualité du certificat.

    Les prix de ces certificats sont croissants selon les 4 cas ci-dessus, mais varient aussi en fonction des services annexes inclus (reconnaissance, assurance, automatisation …) et du niveau de validation effectué par l’autorité de certification avant la délivrance du certificat.

    La procédure pour obtenir le certificat débute par la génération d’un CSR (Certificat Signing Request). La manière de réaliser cela dépend des serveurs (Apache, NGinx, IIS …). Cette étape est importante puisque c’est à ce moment qu’on introduit les données relatives à la société et aux domaines à certifier. Ces données se retrouveront dans le certificat (qui sera signé) et qui permettront au surfeur de vérifier l’authenticité du site.

    Ces informations envoyées, l’autorité va fournir le certificat, souvent sous la forme d’un petit fichier .cert. Elle fournira aussi la chaine de certificats permettant à tout browser e bien authentifier le certificat final. Cette étape peut prendre plusieurs jours en fonction des données que vous fournirez, ou du degré de vérification que souhaite réaliser l’instance qui délivrera le fameux certificat.

    Comment installer son certificat ?

    Pour activer le cryptage, vous devez :

    • paramétrer votre serveur web : pour cela, il faut au minimum que le module SSL soit activé, que le serveur écoute sur le port 443, et qu’un VirtualHost soit configuré pour écouter ce port, avec un lien vers les deux fichiers certificats. Par exemple :

    LoadModule ssl_module modules/mod_ssl.so

    Listen 443

    VirtualHost *:443

    ServerName www.example.com

    SSLEngine on

    SSLCertificateFile "/path/to/www.example.com.cert"

    SSLCertificateKeyFile "/path/to/www.example.com.key"

    VirtualHost

    Notez que nous avons pris ici l’exemple d’un serveur Apache, chaque serveur a sa propre configuration.

    • paramétrer votre Prestashop : pour cela, rendez-vous dans le menu “Préférences/SEO & URL”, et vérifiez que votr domaine SSL est correctement configuré. Ensuite, rendez-vous dans Préférences -> Paramètres Généraux et dans Activer le SSL cliquez sur :”Cliquez ici pour utiliser le protocole HTTPS avant d’activer le mode SSL.” Une page s’ouvrira avec votre site en HTTPS. Retournez dans Préférences -> Paramètres Généraux et mettre sur OUI : “Activer le SSL” et “Forcer l’utilisation de SSL pour toutes les pages”

    • Si vous aviez déjà un bon positionnement SEO avant d’activer le SSL, n’oubliez pas de “créer des 301” qui redirigent chacune de vos pages en HTTP vers l’identique en HTTPS.

    RewriteCond %{HTTP_HOST} ^www\.(.*)

    RewriteRule ^.*$ https://%1/$1 [R=301,L]

    Ce code est spécifique à Apache, on peut retrouver dans cet article les codes pour les autres serveurs.

    Notes complémentaires

    Pour un poste développeur en local, vous avez la possibilité de vous créer un certificat autosigné qui vous permettra de tester la configuration, la seule différence étant que vous aurez dans la barre de votre navigateur un petit cadenas barré en rouge, car votre certificat n’est pas reconnu par une autorité certificative.

    Pour clôturer ce POST, mentionnons l’initiative LetsEncrypt qui fournit des certificats gratuitement et qui a le vent en poupe. Tout est réalisé par des API’, c’est donc plutôt à destination des techniciens, mais cette solution préfigure le futur de la sécurisation des sites en SSL. OVH a d’ailleurs déjà mis ce qu’il fallait en place comme automatisation pour obtenir des certificats gratuits pour tous ses serveurs mutualisés.

    ...

    En savoir plus arrow link

  • Mais que contient le cookie PrestaShop ?

    PrestaShop

    Mais que contient le cookie PrestaShop ?

    En tant que client final, quand vous visitez à nouveau une boutique, certains choix ou certaines actions ne doivent plus être réalisés, PrestaShop vous facilite la vie.

    Par exemple, vous ne devez plus vous identifier, vous retrouvez votre panier sauvegardé au préalable, vous ne devez plus choisir la langue de navigation.

    Ces informations sont stockées ou retrouvées grâce au contenu du cookie PrestaShop du site de la boutique.

    Dans le cadre d'un développement spécifique, nous avons ajouté une variable dans ce cookie, nous avions donc besoin de vérifier si tout se passait correctement.

    Comment accéder au contenu de ce cookie en tant que développeur ? Voici une petite class de test PHP permettant d'afficher de façon lisible le contenu du cookie.

    <?php include_once('config/config.inc.php'); include_once('config/settings.inc.php'); include_once('classes/Cookie.php'); $cookie = new Cookie('ps'); // echo '<pre>',print_r($context->cookie, true).'</pre>';

    PrestaShop utilise deux cookies, un pour le front office et un pour le back office. Pour obtenir le contenu du cookie backoffice, il suffit de remplacer Cookie('ps') par Cookie ('psAdmin')

    Voici aussi un exemple de contenu du cookie client pour une de nos boutiques, pour une version 1.5

    Cookie Object ( [_content:protected] => Array ( [date_add] => 2019-01-13 22:08:26 [id_lang] => 1 [id_currency] => 1 [id_guest] => 8602 [id_connections] => 9998 [checksum] => 2665575877 ) [_name:protected] => 46d50b4ce9bc921e80127f1faechj7f8 [_expire:protected] => 1455015732 [_domain:protected] => www.mydomain.com [_path:protected] => / [_cipherTool:protected] => Rijndael Object ( [_key:protected] => Ox9afJ9ZBNZJ5LhOXdBI91Dmu18FRtsM [_iv:protected] => ^���R�p����n ) [_modified:protected] => [_allow_writing:protected] => 1 [_salt:protected] => ubMd17m4 [_standalone:protected] => )

    Vous désirez en savoir plus ? N'hésitez pas à nous contacter !

    ...

    En savoir plus arrow link

  • Créér ou modifier un template mail dans prestashop

    E-CommercePrestaShop

    Créér ou modifier un template mail dans prestashop

    Besoin de particulariser un template mail pour un client ? Voici quelques points que nous avons notés :

    • le template txt et le template html

      : PrestaShop permet d’envoyer en un seul mail deux versions : une en pur texte et une en HTML. Même si la version texte est relativement peu utilisée (uniquement pour les clients mail qui n’acceptent pas l’HTML), sachez que le fichier test_mail.txt est indispensable pour pouvoir utiliser le test_mail.html

    • ajout d’une image

      : si on veut ajouter une image à un mail, on est obligé d’overrider la classe Mail. En effet, une seule image est prévur par défaut dans les templates de mail : le logo. Cette image est disponible comme toutes les autres variables dans le template du mail :

       

      {shop_logo}. Si on veut ajouter d’autres images, il suffit de faire comme pour le logo et ajouter une variable à l’ensemble des variables disponibles. Pour ce qui est de l’override lui-même, cela fera l’objet d’un autre post. Il est à noter que si on utilise d’autres méthodes pour incorporer les images dans le template, on aura plus de clients mail qui n’afficheront pas les images par défaut, rendant l’expérience utilisateur moins agréable.

    $template_vars['{shop_logo}'] = $message->attach(new Swift_Message_EmbeddedFile(new Swift_File($logo), null, ImageManager::getMimeTypeByExtension($logo)));

    • ajouter des variables

      : pour ajouter une variable, il suffit d’ajouter une entrée dans un array de données qui est un des paramètres de la fonction Send de Mail. Dans le template du mail, il suffit d’insérer le nom de la clé de l’array entre accolades et PrestaShop

    Pour terminer, voici une petite classe de test permettant d’envoyer un mail. Il suffit qu’il y ait deux fichiers (test_mail.txt et test_mail.html) dans le répertoire mails/fr de votre PrestaShop

    <?php

    require_once(dirname(__FILE__).'/config/config.inc.php');

    require_once(dirname(__FILE__).'/init.php');

    global $cookie;

    $subject = 'Subject of the mail';

    $donnees = array(

    '{prenomdest}' => 'Sergei' ,

    '{nomdest}' => 'Brin' ,

    '{texte}' => 'Happy birthday' ,

    '{code}' => 'sfdgsf45' ,

    '{montant}' => 60 ,

    '{validity}' => '13/10/2016' ,

    '{texte}' => 'Happy day !!!!!' ,

    '{signature}' => 'From me to you' ,

    '{nom}' => 'Jobs' ,

    '{prenom}' => 'Steve'

    );

    $destinataire = 'sergei.brin@gmail.com';

    Mail::Send('1', 'test_mail', $subject , $donnees, $destinataire, NULL, NULL, NULL, NULL, NULL, 'mails/');

    ?>

    En annexe, voici les deux templates utilisés pour cet exemple, le template HTML :

    <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/1999/REC-html401-19991224/strict.dtd">

    <html>

    <head>

    <meta http-equiv="Content-Type" content="text/html; charset=utf-8">

    <title>Vous avez reçu un cadeau !</title>

    </head>

    <body>

    <table style="font-family:Verdana,sans-serif; font-size: 12px; color: #374953; width: 700px;">

    <tbody><tr><td colspan=2><a title="{shop_name}" href="{shop_url}"><img style="border: none;" src="{shop_logo}" alt="{shop_name}" /></a></td></tr>

    <tr><td width = 400>Cher Prénom</td><td width=20 rowspan=2></td></tr>

    <tr><td><p style="color: #00aeef;font-weight: 800;">BIENVENUE !

    <p>Vous avez reçu une carte cadeau !</td></tr></tbody></table>

    <table style="font-family: Verdana,sans-serif; font-size: 12px; color: #374953; width: 700px;"><tbody><tr>

    <td width=20></td>

    <td style="background-color: #CEC8C8;" width=200>

    <p style="color: #00aeef;font-weight: 800;">VOTRE CARTE CADEAU

    <p>Pour:{prenomdest} {nomdest}

    <p>Valeur:{montant}

    <p>Code:{code}

    <p>Validité:{validity} (un an)

    <p>Offert par :{prenom} {nom}

    </td><td width=200></td></tr></tbody></table>

    <table style="font-family: Verdana,sans-serif; font-size: 12px; color: #374953; width: 700px;"><tbody><tr>

    <td width=40>&nbsp;</td><td width=40></td>

    <td width=540><p style="color: #00aeef;">{texte}</td>

    <td width=40></td>

    <td width=40>&nbsp;</td></tr>

    <tr><td colspan=5><p style="text-align: right;color: #00aeef;padding-right:140px;">{signature}</td></tr>

    <tr><td colspan=5><p style="color: #00aeef;font-weight: 800;">COMMENT PROFITER DE VOTRE CARTE CADEAU ?</td></tr></tbody></table>

    <table style="font-family: Verdana,sans-serif; font-size: 12px; color: #374953; width: 700px;">

    <tbody>

    <tr height=10><td width=30><p style="margin: 0px;">1.</p></td>

    <td><p style="margin: 0px;">Rendez-vous sur <a href="http://www.monsite.com">www.monsite.com</a> et munissez-vous du code ci-dessus.</td></tr>

    <tr height=10><td width=30><p style="margin: 0px;">2.</p></td>

    <td><p style="margin: 0px;">Achetez le produit désiré et insérez votre code à l’étape de paiement.</td></tr>

    <tr height=10><td width=30><p style="margin: 0px;">3.</p></td>

    <td><p style="margin: 0px;">Le montant de la carte sera directement déduit du total de votre commande.</td></tr><tr><td colspan=2><p style="margin: 0px;">&nbsp;</td></tr></tbody></table>

    <table style="background: #CEC8C8; font-family: Verdana,sans-serif; font-size: 12px; color: #374953; width: 700px;"><tbody>

    <td colspan=2><p>Notre équipe reste à tout moment à votre disposition sur notre <b>site</b>, via notre <b>FAQ</b> ou tous les jours sur <b>Facebook</b> et <b>Twitter</b> pour vous aider dans la commande de votre photo. N’hésitez donc pas à prendre contact avec notre équipe ; nous serons ravis de vous aider !</td></tr>

    <tr><td colspan=2 style="text-align: right;"><p>À bientôt, Toute l’équipe !</td></tr>

    <tr style="height: 30px;"><td style="background:#00aeef;font-size: 10px; border-top: 1px solid #D9DADE;" align="center"></td></tr></tbody></table>

    </body>

    </html>

    et le template TEXT :

    Cher {prenom}

    BIENVENUE 

    Vous avez reçu une carte cadeau !

    VOTRE CARTE CADEAU

    Pour:{prenomdest} {nomdest}

    Valeur:{montant}

    Code:{code}

    Validité:{validity} (un an)

    Offert par :{prenom} {nom}

    {texte}

    {signature}

    COMMENT PROFITER DE VOTRE CARTE CADEAU ?

    1.Rendez-vous sur www.monsite.com et munissez-vous du code ci-dessus.

    2.Achetez le produit désiré et insérez votre code à l’étape de paiement.

    3.Le montant de la carte sera directement déduit du total de votre commande.

     Notre équipe reste à tout moment à votre disposition sur notre site, via notre FAQ ou tous les jours sur Facebook et Twitter pour vous aider dans la commande de votre photo. N’hésitez donc pas à prendre contact ; nous serons ravis de vous aider !

    À bientôt, Toute l’équipe !

    ...

    En savoir plus arrow link