Astuces Thélia

Accueil / Articles / Astuces Thélia
Astuces Thélia

Article publié le 12 mai 2017  Mot(s) clé :   Thélia  Enregistrer au format PDF   Version PDF

Magnifique logiciel pour la création de sites e-commerce, Thélia demande tout de même, de temps en temps, de "mettre la main dans le cambouis". Et c’est parce que l’on peut travailler sur le code que ce programme est aussi puissant. Je note ici quelques "trouvailles", essentiellement pour ne pas avoir à les retrouver deux fois.

Thelia 1.5 et PHP

Plusieurs version de Thélia, globalement Thelia 1 et Thélia 2. Si vous avez un site sous Thélia 1 et que vous voulez le passer sous Thélia 2, il vous faut reprendre vos "template". D’où la raison pour laquelle je reste sous Thélia 1

Pour info, Thélia 1 ne s’installe pas correctement sous PHP 5.6 Si vous utilisez Wampserver, vous ne devez pas prendre la version Wampserver3 mais bien une version précédente, avec PHP 5.4

Création d’un plugin sous Thélia

En ce qui me concerne, j’ai besoin de plugins de transports spécifiques. Je dois donc adapter les plugins de transport existants.

Il ne suffit pas de changer les noms des dossiers, cela ne fonctionnera pas.
Pour adapter ou créer un plugin Thélia, voici quelques pré-requis :

- Comme cela est écrit dans l’article Comment créer un plugin pour Thélia,


Un plugin c’est donc un dossier avec au minimum un fichier php ayant le même nom que le dossier, commençant par une majuscule


- Dans le fichier plugin.php, vous notez le nom du plugin, une description sommaire. Dans mon cas, je suis parti du plugin Lettre que j’ai adapté.

<?xml version="1.0" encoding="UTF-8"?>
<!--Migration automatique depuis le fichier original, sauvegardé dans plugin.xml.save-->
<plugin>
 <descriptif lang="fr">
   <titre>Sobook lettre économique</titre>
   <chapo></chapo>
   <description>Tarifs transport sobook pour une lettre économique</description>
   <postscriptum></postscriptum>
 </descriptif>
 <version>1.0</version>
 <auteur>
   <nom>AEric Le Meur</nom>
   <societe></societe>
   <email></email>
   <web></web>
 </auteur>
 <type>transport</type>
 <prerequis/>
 <thelia>1.4.0</thelia>
 <etat>production</etat>
 <documentation>Readme.txt</documentation>
 <urlmiseajour></urlmiseajour>
</plugin>

- Enfin, dans votre fichier Nom_plugin.class.php vous modifiez la class php correspondante :

<?php

        include_once(realpath(dirname(__FILE__)) . "/../../../classes/PluginsTransports.class.php");
        include_once(realpath(dirname(__FILE__)) . "/../../../classes/Message.class.php");
        include_once(realpath(dirname(__FILE__)) . "/../../../classes/Messagedesc.class.php");
        include_once(realpath(dirname(__FILE__)) . "/../../../classes/Variable.class.php");

        class Sobook_lettre_eco extends PluginsTransports{


                function Sobook_lettre_eco(){
                        $this->PluginsTransports("LettreSuivie");
                }

Là encore, j’ai adapté le plugin "Lettre", je n’ai pas tout ré-écrit, car ce qui existe me suffit.

Thélia plugins de transport

Lorsque l’on ajoute un plugin de transport, ne pas oublier de configurer la ou les zones pour lesquelles ce plugin fonctionne.

Dates sous Thélia

Soit une boucle DOSSIER dans laquelle vous affichez tous les articles d’un dossier. Vous avez la variable #DATE qui affiche la date de création de votre article. Or cette variable va vous afficher la date au format anglais Y/m/d
Pour afficher la date au format français, il faut utiliser les expression php, après avoir téléchargé un plugin Thélia qui vous permet de manipuler ces expressions PHP
Pour un site sous Thélia 1
- Téléchargez le plugin Filtre d’évaluation d’expression
- pour changer le format de date, écrivez le code suivant dans votre boucle :
Publi&eacute;e le #FILTRE_phpexpr[date("d/m/Y", strtotime("#DATE #HEURE"))]

Sources :
- Forum Thelia "Format de Date"

Ces articles peuvent vous intéresser