Je souhaite ajouter des méta-champs aux sites de mon réseau (une vignette et une catégorie, par exemple). Je sais comment faire cela en utilisant get
/ add
/ update_site_option
, mais je me demande où je pourrais mettre l'interface utilisateur pour gérer ces méta-champs.
Le meilleur endroit serait dans la page Sites> Infos , juste après les attributs du site, mais je ne trouve aucun crochet à accrocher. Je peux ajouter ces champs dans l'onglet "Paramètres" du même écran, mais il faut beaucoup le faire défiler pour le trouver, et cela se mélange aux paramètres avancés.
Toute suggestion ?
J'ai enfin trouvé un moyen d'ajouter plus de lignes au tableau Sites> Infos:
C'est un peu moche, mais ça marche. J'utilise simplement l'action admin_footer
pour ajouter un tas de code HTML à la fin de la page, puis jQuery pour la déplacer au bon endroit.
add_action('admin_footer', 'user16975_custom_options');
function user16975_custom_options(){
global $pagenow;
if( 'site-info.php' == $pagenow ) {
?><table><tr id="user16975_custom_options">
<th scope="row">My own option</th>
<td><input type="text"/></td>
</tr></table>
<script>jQuery(function($){
$('.form-table tbody').append($('#user16975_custom_options'));
});</script><?php
}
}
La bonne partie est que dès que le hook sera disponible, je pourrai l’utiliser sans grands changements dans mon code.
Tout d’abord - j’ai convenu, il n’existait pas de crochets spécifiques dans cette partie du noyau permettant de créer des champs de paramètres personnalisés à cet endroit. Mais de toute façon c'est possible.
WordPress a un crochet de filtre network_edit_site_nav_links
qui permet de créer votre onglet personnalisé.
Mais pas de crochets pour la page pour le nouvel onglet, mais ce n'est pas un problème car vous pouvez obtenir le résultat avec une simple page d'options et un peu de code CSS.
Dans ce tutoriel, tout est décrit en étapes https://rudrastyh.com/wordpress-multisite/custom-tabs-with-options.html (Je pense que ce n'est pas une raison pour copier tout le code de cet endroit vers ce fil ).
Le code de la page d'administration Informations sur le site est à l'adresse: http://core.trac.wordpress.org/browser/trunk/wp-admin/network/site-info.php
Malheureusement, il ne semble pas y avoir de crochets ou de filtres dans le code site-info.php
.
Il semble que vous deviez créer votre propre page administrative - peut-être dans le menu wp-admin
Settings/ - pour gérer votre code {$verb}_site_option
.