Pouvez-vous s'il vous plaît laissez-moi savoir comment je peux ajouter une case à cocher à Paramétrer l'API dans la création d'une page d'options personnalisées? J'utilise le code suivant pour ajouter une boîte de texte qui fonctionne parfaitement, mais je suis totalement confus quant à l'ajout de chechbox à l'API de paramétrage et aux options. Je viens d'essayer de mettre à jour le type d'entrée en case à cocher mais je ne suis pas sûr de ce qu'il faut mettre dans Valeur sauf lorsque je sauvegarde le formulaire, la case à cocher apparaît toujours non cochée!
add_settings_field('the_option_label',
'Display Paragraph:',
array($this,'the_option_label_setting'),
__FILE__,
'hte_main_section');
public function the_option_label_setting()
{
echo "<input name='My_Theme_Options[the_option_label]' type='text' value='{$this->options['the_option_label']}'/>";
}
Merci
Consultez: Le guide complet de l'API de paramètres WordPress (Partie 8: Validation, désinfection et entrée II) :
add_settings_field(
'Checkbox Element',
'Checkbox Element',
'sandbox_checkbox_element_callback',
'sandbox_theme_input_examples',
'input_examples_section'
);
function sandbox_checkbox_element_callback() {
$options = get_option( 'sandbox_theme_input_examples' );
$html = '<input type="checkbox" id="checkbox_example" name="sandbox_theme_input_examples[checkbox_example]" value="1"' . checked( 1, $options['checkbox_example'], false ) . '/>';
$html .= '<label for="checkbox_example">This is an example of a checkbox</label>';
echo $html;
}
EDIT: les champs de case à cocher n'utilisent pas l'attribut value
pour déterminer si la case est cochée. Ils utilisent un attribut checked
. La ligne $html
ci-dessus a été modifiée à l'aide du code figurant plus loin dans l'article mentionné ci-dessus. Lisez les articles pour plus de détails.