J'utilise le champ de formulaire ci-dessous dans le fichier filter_mypage.xml de mon composant personnalisé.
<field
name="state"
type="status"
label="JOPTION_SELECT_PUBLISHED"
onchange="this.form.submit();">
<option value="">JOPTION_SELECT_PUBLISHED</option>
</field>
Par défaut, cela affiche les options Trashed
, Unpublished
, Published
, Archived
, All
Je ne veux pas l'option Archived
et je veux le retirer de la liste. Est-ce possible?
Vous pouvez soit créer vos propres options (voir réponse de Hasanalsamra) ou utiliser l'option filter
du champ d'état:
<field
name="state"
type="status"
filter="*,0,1,-2"
label="JOPTION_SELECT_PUBLISHED"
onchange="this.form.submit();"
>
<option value="">JOPTION_SELECT_PUBLISHED</option>
</field>
* = tous
0 = non publié
1 = publié
2 = archivé
- 2 = mis à la corbeille
Vous trouverez un exemple de cette utilisation dans le composant principal du backend, com_menu (\ administrateur\composants\com_menus\modèles\forms\filter_items.xml).
Oui, vous pouvez faire vos propres options, voici comment:
<field
name="state"
type="list"
label="JOPTION_SELECT_PUBLISHED"
onchange="this.form.submit();">
<option value="">JOPTION_SELECT_PUBLISHED</option>
<option value="-2">JTRASHED</option>
<option value="0">JUNPUBLISHED</option>
<option value="1">JPUBLISHED</option>
<option value="*">JALL</option>
</field>