Foros del Web » Creando para Internet » Sistemas de gestión de contenidos » WordPress »

[SOLUCIONADO] creando opciones de un plugin

Estas en el tema de creando opciones de un plugin en el foro de WordPress en Foros del Web. Estoy haciendo mi primer plugin, lo he hecho funcionar y ahora me propuesto hacer un panel de opciones en el escritorio. El panel de opciones ...
  #1 (permalink)  
Antiguo 29/03/2013, 11:39
laura_moreno14
Invitado
 
Mensajes: n/a
Puntos:
creando opciones de un plugin

Estoy haciendo mi primer plugin, lo he hecho funcionar y ahora me propuesto hacer un panel de opciones en el escritorio.

El panel de opciones me aparece, en el que tengo un checkbox (luego habrá más) con el que eligo usar o no usar una funcion del plugin. El problema es que marque o no marque el checkbox, siempre me devuelve que no esta marcada.

Pongo el codigo:

Index.php
Código PHP:
Ver original
  1. <?php
  2. /*
  3. Plugin Name: DNA-analysis
  4. Description: Analisis de secuencias de ADN
  5. Version:1.0
  6. Author: Laura Moreno
  7. Author URI: http://www.mas-que-ciencia.com
  8. */
  9.    add_option ('secuencia1', '1');
  10.    
  11.    //funcion para elegir las opciones
  12.    
  13.     function elegir_herramientas() {
  14.        
  15.     echo'Estas son las opciones del plugin';
  16.    
  17.     ?>
  18.    
  19.     <form method="post" action="index.php">
  20.    
  21.     <input name="complementaria" type="checkbox"/>Secuencia complementaria
  22.    
  23.     <input name="Enviar" type="submit" />
  24.    
  25.     </form>
  26.    
  27.     <?php
  28.    
  29.    
  30.     if (isset($_REQUEST['complementaria'])) {
  31.    
  32.     update_option ('secuencia1', '1');
  33.    
  34.     }else {
  35.        
  36.         update_option ('secuencia1', '0');
  37.        
  38.         }
  39.    
  40.     }// fin function elegir_herramientas
  41.    
  42.    
  43. //Añade las opciones al menú de opciones de wordpress
  44.  
  45.     function def_option_menu(){
  46.    
  47.     add_options_page( 'ADN analysis', 'ADN analysis', 'manage_options', 'def_options', 'elegir_herramientas' );
  48.    
  49.     }
  50.  
  51.     add_action('admin_menu','def_option_menu');
  52.  
  53.     include ('paginas.php');
  54.    
  55.    
  56.    
  57.     ?>


Paginas.php (shortcode para usar el plugin)

Código PHP:
Ver original
  1. <?php
  2.  
  3.     function pagina1 () {
  4.    
  5.     $sec1 = get_option ('secuencia1');
  6.    
  7.     include ('shortcode.php');
  8.    
  9.     if ("$sec1" == '1') {
  10.    
  11.     include ('shortcode1.php');
  12.    
  13.     }
  14.        
  15.     include ('shortcode2.php');
  16.    
  17.     include ('shortcode3.php');
  18.    
  19.     include ('shortcode4.php');
  20.    
  21.     include ('shortcode5.php');
  22.  
  23.     }
  24.  
  25.     add_shortcode ('adn','pagina1');
  26.    
  27.     ?>

Haber si alguien puede decirme que hice mal por que no consigo activar la función.
  #2 (permalink)  
Antiguo 30/03/2013, 19:35
Avatar de hasdpk  
Fecha de Ingreso: agosto-2011
Ubicación: $spain->city( 'Arucas' );
Mensajes: 1.800
Antigüedad: 12 años, 8 meses
Puntos: 297
Respuesta: creando opciones de un plugin

El problema que tienes a simple vista es el hecho de no guardar el checkbox y no recuperarlo cada vez que cargas o guardas la páginas respectivamente.
__________________
Freelance Developer — www.rubenmartin.me PHP, SQL, Wordpress, Prestashop, Codeigniter, Laravel
RegaloConsolas — www.regaloconsolas.com Sorteo juegos, consolas y accesorios
  #3 (permalink)  
Antiguo 31/03/2013, 03:41
laura_moreno14
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: creando opciones de un plugin

Parece que me habia complicado demasiado.

Existe en wordpress algo llamado Setting API, de forma que esto de crear el panel de opciones, es mucho más facil. Se lo recomiendo.

Etiquetas: plugin
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 11:40.