web-dev-qa-db-fra.com

Définir une valeur par défaut pour une option?

Wordpress a-t-il un moyen de définir une valeur par défaut pour une option?

C’est-à-dire que je sais que get_option accepte un deuxième paramètre et le renverra si aucune valeur n’est définie. Par exemple, lorsque je configure mon formulaire pour permettre aux utilisateurs de sauvegarder une valeur, je pourrais utiliser un logiciel comme celui-ci.

<td>
    <input type="text" 
           name="new_option_name" 
           value="<?php echo esc_attr( get_option('new_option_name','default') ); ?>" 
    />
</td>

Si new_option_name n'a pas de valeur enregistrée, get_option renverra default.

Cependant - lorsque je récupère la valeur ailleurs (c'est-à-dire que je veux utiliser la valeur), je dois à nouveau spécifier la chaîne. Cela introduit la possibilité d'erreurs

$someOtherVariable = get_option('new_option_name','defaultt');

D'autres systèmes de paramètres avec lesquels j'ai travaillé vous permettent de configurer une valeur par défaut pour les paramètres qui n'ont pas encore été enregistrés. Wordpress a-t-il une fonctionnalité comme celle-ci? Ou est-ce aux programmeurs des utilisateurs finaux de s'assurer que leurs valeurs par défaut get_option correspondent dans tout leur code?

2
Alan Storm

Il n'y a rien d'intelligent que je puisse voir. J'ai utilisé deux approches dans le passé:

1 - Le code d'activation de votre plugin pourrait sauvegarder toutes vos options par défaut, de sorte que vous n'ayez jamais besoin d'utiliser le second paramètre pour get_option Vraiment, cela équivaut à votre ...

valeur par défaut pour les paramètres qui n'ont pas encore été enregistrés.

2 - Vous pouvez définir un ensemble de constantes pour les valeurs par défaut, puis utiliser ces constantes pour le second paramètre à get_option

3