Je veux faire une petite édition dans un module existant. Ce module analyse les articles des catégories données et les affiche à l'index. Je voulais ajouter un autre élément (ID) afin que l'utilisateur puisse donner l'identifiant d'un article qui ne fait pas partie d'une catégorie et l'afficher.
Je suis complètement nouveau dans le développement de modules et même la tâche la plus facile me semble très complexe en ce moment. J'ai donc créé le champ de texte dans mon fichier manifeste XML, et je peux ajouter une valeur et voici ma question/s.
Si je ne me trompe pas, les champs de type liste sont enregistrés quelque part dans la base de données et vous pouvez les récupérer en les appelant sous forme de liste comportant des éléments par défaut.
$params = JFactory::getApplication()->getParams();
$model->setState('params', $appParams);
$modell->setState('list.start');
Cela peut sembler idiot mais je n'ai rien trouvé sur les champs de texte. Ou peut-être que je n'ai pas compris. Je voudrais donc que quelqu'un m'éclaire sur la façon dont nous récupérons généralement les valeurs que l'utilisateur donne en arrière-plan afin que nous puissions les répercuter à son extrémité.
Et aussi si quelqu'un pouvait me recommander un livre ou quelque chose qui pourrait m'aider avec le développement du module Joomla (j'ai essayé Joomla Development Un guide pour débutants de Hagen Graf et Learning Joomla 3 Extension Development 3e édition, mais ils ne m'ont pas beaucoup aidé. peut voir).
Nick vous a donné la bonne direction - Ajout de champs de formulaire est exactement ce dont vous avez besoin. Peut-être avez-vous oublié certains points de ce document:
#__modules
Sous le champ params
sous forme de chaîne codée JSON.$params
(C'est un objet Registry ). Par exemple: $myParam = $params->get('my_param', '1')
où my_param
Est le nom du champ dans votre fichier manifeste et '1'
Est la valeur par défaut.$params
Aux modules et l’utiliser ici$params
Sont disponibles dans n’importe quel module standard Joomla.Vous pouvez vous référer aux liens ci-dessous pour le développement du module.