Il n’y a pratiquement aucune documentation à ce sujet, et le fichier de l’API du plugin ne contient aucun commentaire expliquant l’utilisation de cette fonction. De plus, le seul endroit où je peux la voir utilisée est dans les plugins, pas dans le cœur du système. Alors, que fait exactement api.addSaveableUserOptionField() ? Une configuration supplémentaire est-elle nécessaire pour l’utiliser ?
Je ne sais pas, mais voici ce que je pense avoir découvert.
Mais d’abord, ma question est : pourquoi vous souciez-vous de cela ? Y a-t-il quelque chose que vous essayez de faire ? Mais peut-être que si vous essayez de créer un plugin qui a des options utilisateur, voici comment faire. Il n’est pas utilisé dans le cœur car c’est un hook spécialement conçu pour que les plugins puissent avoir leurs propres options utilisateur.
Il semble qu’il soit utilisé dans le plugin Chat comme ceci :
Il semble que si votre plugin a des options utilisateur, vous utilisez ceci pour établir qu’il s’agit d’une option utilisateur avec le UserUpdater.
Oui, je prévois d’avoir un paramètre utilisateur dans un plugin. J’ai vu précédemment que Chat et, si je me souviens bien, AI utilisaient cette fonction pour ajouter des paramètres utilisateur, alors je me demandais s’il existait un moyen documenté de le faire.
Pour revenir à ce sujet, il semble y avoir plus d’informations à ce sujet.
Ceci liste maintenant 3 fonctions : addSaveableUserField(), addSaveableUserOption(), et addSaveableCustomFields().
Il semble que la première se réfère à l’ajout et à la sauvegarde des champs utilisateur personnalisés définis par l’administrateur. Cependant, les deux suivantes ne sont pas aussi claires. Nécessitent-elles un plugin pour utiliser register_custom_user_field :... côté serveur ? Faut-il faire plus, ou cela peut-il fonctionner dans un TC ?
Merci.
Il semble que cela fonctionne à la fois pour les champs personnalisés ajoutés dans l’interface utilisateur et via un plugin. Pour les champs personnalisés, ils obtiennent des noms comme user_field_1, j’en suis presque sûr. Vous pouvez regarder dans la table avec l’explorateur de données, par exemple. Ou peut-être que cela signifie uniquement les champs ajoutés par l’interface utilisateur (« champs de profil définis par l’administrateur »), auquel cas vous utiliseriez le nom que vous lui avez donné lors de sa création. J’essaierais juste des deux manières.
Et GitHub est en panne, donc je ne peux pas regarder le code là-bas.