Hé là, je suis assez confus sur la façon de stocker les options de réseau dans une installation multisite WordPress.
La manière habituelle de stocker des paramètres dans WordPress est la suivante:
add_option();
update_option();
delete_option();
Cependant, la table wp_options est créée pour chaque site dans une installation multisite.
Les tableaux suivants sont spécifiques au sous-site:
myprefix_siteid_commentmeta myprefix_siteid_comments myprefix_siteid_links myprefix_siteid_options myprefix_siteid_postmeta myprefix_siteid_posts myprefix_siteid_term_relationships myprefix_siteid_term_taxonomy myprefix_siteid_termmeta myprefix_siteid_terms
Les tableaux suivants couvrent l’ensemble du réseau:
myprefix_blogs // multisite specific myprefix_blog_versions // multisite specific myprefix_registration_log // multisite specific myprefix_signups // multisite specific myprefix_site // multisite specific myprefix_sitemeta // multisite specific myprefix_users myprefix_usermeta
Voyez-vous le problème? Il n'y a pas de table adéquate pour stocker les options pour l'ensemble du réseau, ce qui est nul à mon avis.
Cependant, je suppose que vous stockez les options de réseau dans la table de base wp_options (myprefix_options
). Cependant, je ne peux pas utiliser add_option () et update_option (), etc. sans utiliser switch_to_blog(1)
auparavant.
Y a-t-il une meilleure possibilité? Si non, comment puis-je obtenir le préfixe de la table wp_options de base?
Il existe des fonctions pour enregistrer et récupérer des options à l'échelle du réseau:
Les valeurs de ces options sont stockées dans wp_sitemeta
.