Soporte » Plugins y Hacks » WooCommerce » Campo personalizado dinámico para producto

  • Resuelto daschin2

    (@daschin2)


    Buenas noches estoy realizando un plugin el cual debe tener un selector por woocommerce_wp_select o un select el cual debe elegir los campos personalizados a activar dinámicamente pero he tenido problemas con la parte dinámica he intentado con for y while pero me genera un error el cual es
    Fatal error: Allowed memory size of 536870912 bytes exhausted (tried to allocate 234885120 bytes) in D:\xampp2\htdocs\pg\wp-includes\functions.php on line 5212

    El código he usado es

    //selector de espacios para la campo personalizado
    woocommerce_wp_select(array( 
    					'id'          	=> '_n_variation', 
    						'label'   	=> __('My Select Field','woocommerce'),
    						'options' 	=> array(
    							'one'   => __( '1', 'woocommerce' ),
    							'two'   => __( '2', 'woocommerce' ),
    							'three' => __( '3', 'woocommerce' )
    						),
    						'desc_tip'    => 'true',
    						'custom_attributes' => $readonly
    					)
    			);
    //while o for que no funciona aiuda
    for($o=1; $o<=$n_variation; $o++){
    					woocommerce_wp_text_input(
    						array(
    							'id'         		=> '_zise_titel_['.$o.']_var',
    							'label'       		=> __( 'Titel or instructions', 'woocommerce' ),
    							'placeholder' 		=> 'Put the text that you want to appear when it is the size...',
    							'desc_tip'    		=> 'true',
    							'custom_attributes' => $readonly
    						)
    					);

    Como puedo realizar esto sin que presente este error

    • Este debate fue modificado hace 4 meses por daschin2.
    • Este debate fue modificado hace 4 meses por daschin2.
Viendo 2 respuestas - de la 1 a la 2 (de un total de 2)
  • Hola @daschin2

    La variable $n_variation no esta definida en el codigo que añades, espero que si lo este antes.
    Tampoco esta el cierre del for, deduzco que fue un mal copy&paste.
    En el select los valores para los options son textos (one, two, three) con lo cual el supuesto valor de la variable $n_variation seria un string y no puedes hacer un bucle ya que tu sumas 1 por cada pase y dice que pare cuando sea mayor o igual a $n_variation que seria uno de esos texto que comente antes.

    Iniciador del debate daschin2

    (@daschin2)

    Muchas gracias ya lo solucione @kallookoo si era por la $n_variation puse (int)para que tradujera de string a int y de una funciono

Viendo 2 respuestas - de la 1 a la 2 (de un total de 2)
  • Debes estar registrado para responder a este debate.