Réponses:
Oui, en quelque sorte. Lorsque l' get_option
appel est effectué, WordPress exécute une fonction appelée wp_load_alloptions
, qui saisit une copie en cache de toutes les options chargées automatiquement ou charge toutes ces options dans le cache. wp_load_alloptions
Retourne ensuite un tableau de toutes les options chargées automatiquement. Si votre option est chargée automatiquement (spécifiée lorsque vous utilisez la add_option
fonction), elle fera partie de ce tableau et sera renvoyée.
Si votre option n'est pas chargée automatiquement, WordPress recherche ensuite dans le cache spécifiquement pour cette option et renvoie la valeur si elle est là. Si cela échoue, le dernier recours consiste à accéder à la base de données, à récupérer la valeur, à lui attribuer le cache, puis à la renvoyer.
Enfin, si aucune option n'est trouvée (par exemple, le nom de l'option n'était pas valide), WordPress stocke le nom de cette option dans un tableau en cache appelé notoptions
. Si des appels ultérieurs à la non-option sont effectués, WP vérifie d'abord le tableau notoptions afin de ne pas perdre de temps à rechercher quelque chose qui n'est pas là.
Si vous craignez d'appeler get_option
plusieurs fois par chargement de page, ne le soyez pas. WordPress mettra en cache la valeur de l'option après le premier get_option
appel, qu'il soit ou non chargé automatiquement.
Consultez la source pourget_option
voir ce qui se passe.
Non,
seules les options spécifiquement chargées avec le chargement automatique défini sur true
Voir http://codex.wordpress.org/Function_Reference/add_option
Donc, si c'est une option qui est nécessaire sur chaque page, lorsque vous l'ajoutez à la base de données, définissez autoload = true.
Après cela, utilisez simplement get_option normalement - wp gérera le cache, etc.
Oui,
Il n'est pas nécessaire de définir le chargement automatique sur oui / vrai. Il est défini sur yes par défaut: http://codex.wordpress.org/Function_Reference/add_option - dernier paramètre de fonction ($ autoload):
Cette option doit-elle être chargée automatiquement par la fonction wp_load_alloptions () (place les options dans le cache d'objets à chaque chargement de page)? Valeurs valides: oui ou non. Par défaut: oui
Cependant, si vous le définissez sur non, l'option ne sera pas mise en cache.