Jump to content

Module créé dans ma boutique mais comment faire en sorte qu'il soit configurable en back office ?


CyBeRCeD

Recommended Posts

Bonjour à tous, j'ai créé un module et j'aimerais bien savoir comment faire en sorte qu'il soit configurable via le back office.

Je sais déjà que ce contenu doit être ajouter à ma fonction

public function getContent()
   {

   }


de mon fichier php du module qui ma déjà ajouté un lien dans le backoffice pour configurer ce dernier.

Mais comment le remplir, que mettre dedans ?
Voilà, ma question est de savoir s'il existe un tutoriel pour m'aider ou bien si quelqu'un aurait la gentillesse de m'expliquer un minimum "les bases", ce qu'il y a à savoir, etc.

Merci d'avance

Link to comment
Share on other sites

Ok merci beaucoup pour le lien très instructif.
Mais ce que j'aimerais savoir, c'est par exmple comment récupérer le contenu d'une liste (

) contenu dans mon fichier tpl du module, l'afficher dans le backoffice, puis à l'aide d'un formulaire et d'un champ texte par exemple, ajouter ce dernier au contenu de la liste dans le tpl ?

Voilà ce que j'aimerais pouvoir arriver à faire.

Merci d'avance
Link to comment
Share on other sites

ben en fait mon module permet la personalisation de cartes de visites. Et cette liste que je souhaite récupérer contient les différents modèles de bases que l'utilisateur peut choisir. Depuis l'admin, je souhaite donc pouvoir rajouter des modèles, en ajouter, changer l'ordre d'apparition, etc.
Mais en fait je pense que le solution la plus approprié et de mettre mes modèles dans un fichiers XML qui pourra être lu en front office tout en pouvant être modifié en backoffice.
Qu'en pensez vous ?

Link to comment
Share on other sites

Bonjour CyBeRcEd,
Je pense plutôt que le contenu de ta liste devra être intégré dans une table, ainsi tu pourras à l'aide de requêtes SQL, réaliser des INSERT, DELETE et UPDATE, ensuite, tu passes tes données via les variables smarty dans le tpl...
Si tu veux un détail précis, je peux te donner un coup de main mais il faudrait un peu plus de détails sur ce que tu as déjà fait...

Link to comment
Share on other sites

Merci de me proposer ton aide. En fait pour le moment je me penchais du coté de XML donc je n'ai pas fait grand chose ^^.

J'ai juste une liste normale :

></pre>
<ul>







dans mon fichier tpl que je souhaiterai donc générer à l'aide d'infos contenus soit dans un fichier XML externe, soit de la Bdd comme tu m'indique ;)

Link to comment
Share on other sites

Je ne pense pas que le XML soit la meilleure manière à adopter, il faut que tu créé 1 table dans la section Install

public function install() {
   if(!parent::install() || 
         !$this->registerHook('tonhook') || 
         !$this->installdB())
           return false;
       return true;
   }



Puis ta fonction installDB

public function installDb() {
       Db::getInstance()->ExecuteS('
       CREATE TABLE IF NOT EXISTS `'._DB_PREFIX_.'tatable` (
         `id_tatable` INT NOT NULL ,
         `info1` TINYINT( 1 ) NOT NULL,
         `iinfo2` BLOB NULL
       ) ENGINE = MYISAM CHARACTER SET utf8 COLLATE utf8_general_ci;');        
       return true;
   }



Ensuite il faut créer une interface de gestion de ta table qui permettra de créer, modifier et supprimer des éléments, pour enfin transiter les informations à l'aide d'une requête vers $smarty dans ton tpl.
Le code ci-dessus n'est qu'un exemple, ne pas faire un simple copier coller, tu as besoin de créer ta structure de table selon tes besoins.

Link to comment
Share on other sites

pour enfin transiter les informations à l’aide d’une requête vers $smarty dans ton tpl


pour tout ce qui est SQL, je n'ai pas de soucis, par contre, si tu pouvais me donner un peu plus de précisions là dessus, ça ne serait pas de refus ;)

Merci d'avance
Link to comment
Share on other sites

Tu as 2 fonctions importantes dans ton fichier php de base :
getcontent
et
displayForm

dans getcontent, tu fais ta cuisine d'insert, d'update, de delete puis dans le displayForm tu t'occupes de l'affichage de l'interface. car tout ce qui est posté de displayForm est envoyé dans le getcontent, à la fin du getcontent n'oublie pas de faire

$this->displayForm();



et voilà le pourquoi du comment...

Link to comment
Share on other sites

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 account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...