web-dev-qa-db-fra.com

Ajouter une action en masse à wp-admin/users.php

Je suis profondément modifié par mon Wordpress. C'est incroyable ce que vous pouvez faire avec les hooks, les actions dans Wordpress. Supposons que je sélectionne 5 utilisateurs et que je veuille leur attribuer une valeur user_meta.

4
Tommixoft

Malheureusement, ce n'est pas possible. Les actions personnalisées ne peuvent pas être ajoutées à la liste déroulante des actions en bloc (voir tickets de trace: http://core.trac.wordpress.org/ticket/12732 et http://core.trac.wordpress.org/ticket/16031 ).

Pour les publications, vous pouvez utiliser le crochet restrict_manage_posts pour créer un autre bouton déroulant/ajouter afin de déclencher votre action personnalisée. Mais il n'y a pas de hook restrict_manage_* disponible pour la table user.

Par conséquent, la seule solution (et pas particulièrement jolie) consiste à utiliser javascript pour insérer des options supplémentaires dans le menu déroulant.

Cependant, il n’existe pas de moyen (pris en charge) de gérer l’action - vous devrez donc le gérer vous-même en vous connectant au crochet load-* ou admin_action_*. (Voir les fichiers de base ici ).

Vous devrez ensuite vérifier les données publiées (les ID d’utilisateur, l’identifiant de l’action, le nonce, etc.) à l’intérieur de ce point d’accès, puis le nessé et la capacité de l’utilisateur actuel à exécuter cette action.

Voir la question connexe: Custom bulk_action

3
Stephen Harris

Il est possible d'utiliser jQuery pour ajouter l'élément au menu déroulant ou d'ajouter un autre champ, puis d'utiliser Ajax pour intercepter le clic et effectuer votre action en bloc de cette façon.

1
Dave Hilditch