Comment enregistrer des options sous forme de tableau à l'aide de formulaires? Je ne veux pas utiliser les paramètres de l'API.
Voici le formulaire de travail qui enregistre 3 options séparément:
<form method="post" enctype="multipart/form-data" action="options.php">
<?php wp_nonce_field('update-options'); ?>
<input type="text" name="option1" value="<?php echo get_option('option1'); ?>" />
<input type="text" name="option2" value="<?php echo get_option('option2'); ?>" />
<input type="text" name="option3" value="<?php echo get_option('option3'); ?>" />
<input type="hidden" name="action" value="update" />
<input type="hidden" name="page_options" value="option1,option2,option3" />
<p class="submit"><input type="submit" class="button-primary" value="<?php _e('Save Changes') ?>" /></p>
</form>
Et voici comment il devrait chercher un tableau, mais cette méthode ne fonctionne pas (je suppose que le problème réside dans l'entrée appelée page_options:
<form method="post" enctype="multipart/form-data" action="options.php">
<?php wp_nonce_field('update-options'); ?>
<?php $options = get_option('my_options'); ?>
<input type="text" name="option1" value="<?php echo $options['option1']; ?>" />
<input type="text" name="option2" value="<?php echo $options['option2']; ?>" />
<input type="text" name="option3" value="<?php echo $options['option3']; ?>" />
<input type="hidden" name="action" value="update" />
<input type="hidden" name="page_options" value="my_options" />
<p class="submit"><input type="submit" class="button-primary" value="<?php _e('Save Changes') ?>" /></p>
</form>
Des idées?
As-tu essayé...
<input type="text" name="my_options[option1]" value="<?php echo $options['option1']; ?>" />
<input type="text" name="my_options[option2]" value="<?php echo $options['option2']; ?>" />
<input type="text" name="my_options[option3]" value="<?php echo $options['option3']; ?>" />?
Je devrais cependant dire (et vous l’aurez peut-être) que vous devez enregistrer vos paramètres et effectuer les contrôles de validation nécessaires sur l’entrée - ou si vous ne voulez vraiment pas utiliser l’API Paramètres, ignorez-le complètement et collectez le formulaire manuellement. données, vérifiez les données, vérifiez les nonces, etc. et ajoutez-les à la base de données.