Respuestas de foro creadas

Viendo 3 respuestas - de la 16 a la 18 (de un total de 18)
  • Iniciador del debate daschin2

    (@daschin2)

    tambien he provado este que es hacer una array el codigo que falta el inicio es igual

    function Woosettings_page(){
    
    ?>
    
      <div class="wrap">
    
          <h2>Opciones</h2>
    
    <form method="post" action="options.php">
                  <?php $SKUAD = array();?>
                  <?php settings_fields( '$WooSettings_settings_group' );?>
                  <?php do_settings_sections( '$WooSettings_settings_group' );?>
                      
            <p><input type="checkbox", name="SKUAD[]", value="SKU">SKU Desactivar</p>
            <p><input type="checkbox", name="SKUAD[]", value="Prueba">Prueba</p>
    
                <?php submit_button(); ?>
            </form>
      </div>

    pero en esta forma me es imposible que se guarde

    Iniciador del debate daschin2

    (@daschin2)

    Buenos dias/noches ya he pogresado en el guardado con las checkbox lo he intentado con mil convinaciones para que se verifique con el checked en el archivo options.php pero no he encontrado forma para que haga su funcion de guardar al hacer el click en el guardar aqui esta el codigo con el que he podido guardar
    <input type="checkbox", id="SKUAD", name="SKUAD[SKU]"<?php checked( isset( $options['SKU'] ) ); ?>, value="SKU">

    y en general el archivo es:

    <?php
    /*
    Plugin Name: Prueba
    Plugin URI: https://disortopedicos.com/
    Description: Convieret el bojeto que aparece como oferta a %
    Version:0.1
    Author:Daschin2
    Author URI:https://disortopedicos.com/
    License:GPL
    */
    
    add_action('admin_menu', 'menu_Woo_settings');
    function menu_Woo_settings(){
          add_menu_page('Woo_settings', 'Opciones', 'manage_options', 'WooSettings', 'Woosettings_page','',3);
          defined( 'ABSPATH' ) or die( '¡Sin trampas!' );
          add_action( 'admin_init', 'register_SKUAD' );
          
    
    }
    function register_SKUAD() {
          register_setting( '$WooSettings_settings_group', 'SKUAD' );
    }
    function Woosettings_page(){
    
    ?>
    
      <div class="wrap">
    
          <h2>Opciones</h2>
    
    <form method="post" action="options.php">
                  
                  <?php settings_fields( '$WooSettings_settings_group' );?>
                  <?php do_settings_sections( '$WooSettings_settings_group' );?>
                  <?php $options = get_option( 'SKUAD' );?>
            <p><input type="checkbox", id="SKUAD", name="SKUAD[SKU]"<?php checked( isset( $options['SKU'] ) ); ?>, value="SKU">SKU Desactivar</p>
            <p><input type="checkbox", id="SKUAD",name="SKUAD[]", value="Prueba">Prueba</p>
                  <?php submit_button(); ?>
            </form>
      </div>
    <?php };?>

    me gustaria saber como se podria hacer que el codigo de guardado «checked» se ejecutara desde options.php he estado probando con este codigo

    global $options;
    function Woosettings_page(){
    /*Comprobar si existe*/
    if (isset($_POST['SKUAD'])) {
            /*remplazar*/
    	foreach ($_POST['SKUAD'] as $value){
    
    		checked( $_POST['SKUAD']);
    		return 'SKUAD';
    }
    }
    Iniciador del debate daschin2

    (@daschin2)

    Buenas adrián ya e estado viendo la pagina que comentaste y aqui esta el codigo de la pagina principal casi que calcado de la pagina

    <?php
    /*
    Plugin Name: Prueba
    Plugin URI: https://disortopedicos.com/
    Description: Convieret el bojeto que aparece como oferta a %
    Version:0.1
    Author:Daschin2
    Author URI:https://disortopedicos.com/
    License:GPL
    */
    
    add_action('admin_menu', 'menu_Woo_settings');
    function menu_Woo_settings() {
          add_menu_page('Woo_settings', 'Opciones', 'manage_options', 'WooSettings', 'Woosettings_page','',3);
          add_action( 'admin_init', 'register_SKUAD_settings' );
          defined( 'ABSPATH' ) or die( '¡Sin trampas!' );
    }
    function register_SKUAD_settings() {
          register_setting( 'WooSettings-settings-group', 'SKUAD' );
    }
    
    function Woosettings_page(){
    ?>
      <div class="wrap">
                <h2>Opciones</h2>
                    <form method="post" action="saves.php">                   
                       <?php settings_fields( 'WooSettings-settings-group' );?>
                       <?php do_settings_sections( 'WooSettings-settings-group' );?>
                      
                      <p><input type="checkbox", name="SKUAD", id="SKUAD",
                  value="<?php echo esc_attr( get_option('SKUAD') ); ?>" />SKU Desactivar</p>
    
              <?php submit_button(); ?>
    
          </form>
      </div>
    <?php }; ?>

    pero lo que me confunde es el guardado aqui esta el codigo de saves.php

    <?php 
    function wprincipiante_save_SKUAD(){
    global $options;
    foreach ($options as $value) {
        if (get_option($value['id']) === FALSE) {
            $$value['id'] = $value['FALSE'];
        }
        else {
            $$value['id'] = get_option( $value['id'] );
        }
    
    }
    
    	if (trim('WooSettings-settings-group') != "") 
    }
    
    ?>

    Se que el codigo de save.php esta mal pero no consigo corregirlo.
    Esta es mi primera «inmercion» por asi decirlo en el mundo de los pluguins nunca he usado PHP y estoy aprendiendo sobre marcha
    agradesco la ayuda

Viendo 3 respuestas - de la 16 a la 18 (de un total de 18)