Ver Mensaje Individual
  #1 (permalink)  
Antiguo 16/04/2013, 02:36
laura_moreno14
Invitado
 
Mensajes: n/a
Puntos:
Las opciones no se guardan

Estoy creando una pagina de opciones de un theme y por alguna razon, no se guardan las opciones. Cree unas opciones usando la setting api, sin usar arrays y funcionaban bien, pero buscando una forma mas simple de hacerlo, rogertm me dejo esta forma de hacerlo con arrays en un post anterior. Llevo dias dandole vueltas pero no consigo que se guarde la opcion.

Este es el codigo que tengo:

Código PHP:
Ver original
  1. <?php
  2. add_action( 'admin_init', 'simplyColor_my_admin_init' );
  3. function simplyColor_my_admin_init() {
  4.     register_setting( 'opciones', 'general_option');
  5.     add_settings_section( 'general', 'Opciones generales', '__return_false', 'theme-options' );
  6.     add_settings_field( 'buttons', 'Opciones botones sociales', 'simplyColor_buttons', 'theme-options', 'general' );
  7. }
  8. function buttons_options () {
  9.     $buttons_options = array (
  10.         'facebook' => array (
  11.             'value' => '1',
  12.             'label' => 'Añadir boton de facebook',
  13.         ),
  14.         'twitter' => array (
  15.             'value' => '2',
  16.             'label' => 'Añadir boton de Twitter'
  17.         ),
  18.         'google' => array (
  19.             'value' => '3',
  20.             'label' => 'Añadir boton de Google+'
  21.         ),
  22.     );
  23.  
  24.     return apply_filters( 'buttons_options', $buttons_options );
  25.        
  26. }
  27.  
  28. function simplyColor_buttons ($args) {
  29.     global $general_option;
  30.     foreach ( buttons_options() as $buttons ) :
  31. ?>
  32.     <label class="description">
  33.         <input type="checkbox" name="general_option[buttons]" value="<?php echo $buttons['value'] ; ?>" <?php checked( $general_option['buttons'], $buttons['value'] ); ?> />
  34.         <span><?php echo $buttons['label']; ?></span>
  35.     </label>
  36. <?php
  37.      endforeach;
  38. }
  39.  
  40. function simplyColor_opciones_generales() {
  41. ?>
  42. <div class="wrap">
  43.     <h2>Opciones generales</h2>
  44.     <form method="POST" action="options.php">
  45.     <?php settings_fields( 'opciones' ); ?>
  46.     <?php do_settings_sections( 'theme-options' ); ?>
  47.     <?php submit_button(); ?>
  48.     </form>
  49. </div>
  50. <?php
  51. }
  52.  
  53. function simplyColor_option_menu(){
  54.     add_menu_page( 'Opciones Theme', 'Opciones Theme', 'manage_options', 'theme-options', 'simplyColor_opciones_generales' );    
  55. }
  56. add_action('admin_menu','simplyColor_option_menu');

Que estoy haciendo mal??

Última edición por rogertm; 17/04/2013 a las 07:31