- 24 novembre 2018
- Steeve
Le problème : quand on doit avoir une liste de ressource dans MODX c'est pas très compliqué car il y a une variable de modèle (template) pour le faire. Mais quand il faut limiter à certaine ressource ça se complique un peu. Si vous essayez de renvoyer le résultat dans un modèle, un chunk ou dans MIGX, vous verrez l'ID de la ressource ce qui n'est pas très dérrangeant dans un template ou un chunk mais c'est beaucoup plus embêtant si vous l'affiché dans les colones d'un MIGX ou un MIGX CMP.
Alors voici une solution simple pour parer au problème !
1. Limiter le résultat de la liste de catégorie ou sous catégorie
Créer un variable de modèle, nommez la "catégorie", de type (type d'entrée) liste à sélection unique.
Puis dans le champ (valeur des options d'entrée) on va utiliser @SELECT binding qui permet de faire directement une requette à la base de données et qui retourne le résultat
@SELECT `menutitle`,`id` FROM `modx_site_content` WHERE `template` = 7
Ou pour limiter à plusieurs parent pour une liste de ressource de sous catégorie
@SELECT `menutitle`,`id` FROM `modx_site_content` WHERE `parent` IN (7,8)
2. L'afficher dans un formulaire de MIGX
Rien de plus simple il suffit de le champ
[[#[[+categorie]].menutitle]] ([[#[[+categorie]].id]])
Ce qui donnera : monTitreDeMenu (ID).
Partagez cet article
A propos de l'auteur
Passionné d’informatique, de Design, de développement d'application et du Web en général (participation au start-up weekend, hackathon, dev Var, formation Google...), j’ai créé ce site afin de partager mes connaissances sur mon système de gestion de contenu préféré MODX. En espérant participer au développement de la communauté.