Avisos
Vaciar todo

[Resuelto] Como saber si un checkbox opcional fue marcado o no  

 
Josep
 Josep
Usuario activo

Buen día

Tengo varios checkbox al finalizar la compra, pero uno de ellos es opcional, como podría yo saber si este opcional fue marcado o no por el usuario??

 

gracias de antemano.

screenshot(32)

 

Contenido solo visible a usuarios registrados

Respondido : 31/05/2021 9:54 am
Pepe
 Pepe
Soporte CMS Webempresa Admin

Hola Josep.

como añadiste esos Check ?

No los veo en la pagina de finalizar compra:

screenshot www.ludikadventures.com 2021.05.31 11 30 33

Si puedes añadirlos y nos indicas como los añadiste seria de ayuda.

 

Un saludo

 

Respondido : 31/05/2021 10:38 am

optimiza-automaticamente-todas-las-imagenes-de-tu-wordpress

Josep
 Josep
Usuario activo

Vale, ahora creo podrá verlo, no se por qué no se mostraba, al final he logrado añadir la política opcional que deseo con el siguiente código (que he encontrado y adaptado), pero me sale separado el checkbox

del resto, cómo podría hacer para mostrarlo seguido del resto

screenshot(33)

el cod es el siguiente:

// Añadir un campo checkbox al checkout y al anadir_estado_pedido_enviado_a_estados

add_action( 'woocommerce_review_order_before_submit', 'anadir_campo_checkbox_checkout' );
function anadir_campo_checkbox_checkout() {
echo '<div id="campo-envio-instrucciones">';

woocommerce_form_field( 'cliente_quiere_instrucciones', array(
'type' => 'checkbox',
'class' => array('input-checkbox'),
'label' => __('He llegit i accepto les condicions de la <a href="https://escolaemergencies.cat/politica-de-drets-dimatge/" target="_blank">Política de drets d’imatge.</a>'),
), WC()->checkout->get_value( 'cliente_quiere_instrucciones' ) );
echo '</div>';
}

// Guardar el campo del checkout en los meta del pedido, cuando se ha checkeado el checkbox
add_action( 'woocommerce_checkout_update_order_meta', 'actualizar_meta_campo_checkout_instrucciones', 10, 1 );
function actualizar_meta_campo_checkout_instrucciones( $order_id ) {

if ( ! empty( $_POST['cliente_quiere_instrucciones'] ) )
update_post_meta( $order_id, 'cliente_quiere_instrucciones', $_POST['cliente_quiere_instrucciones'] );
}

// Mostrar el resultado del campo checkout en el admin del pedido
add_action( 'woocommerce_admin_order_data_after_billing_address', 'mostrar_campo_checkout_detalles_pedido_admin', 10, 1 );
function mostrar_campo_checkout_detalles_pedido_admin( $order ){
$cliente_quiere_instrucciones = get_post_meta( $order->get_id(), 'cliente_quiere_instrucciones', true );
if( $cliente_quiere_instrucciones == 1 ) {
echo '<p><strong>¿Accepta les polítiques d imatge?: </strong> <span style="color:red;">SI</span></p>';
} else {
echo '<p><strong>¿Accepta les polítiques d imatge?: </strong> <span style="color:black;">NO</span></p>';
}
}

 

Respondido : 31/05/2021 11:20 am
Pepe
 Pepe
Soporte CMS Webempresa Admin

Hola Josep.

Prueba con lo siguiente:

.woocommerce form .form-row::before, .woocommerce-page form .form-row::before {
display:none;
}

 

Puedes añadirlo en apariencia -> Personalizar -> CSS Adicional

 

Un saludo

Respondido : 31/05/2021 12:34 pm

Cursos Gratuitos WordPress

Josep
 Josep
Usuario activo

@pepesoler muchísimas gracias, ha funcionado a la perfección, como siempre usted de gran ayuda.

Respondido : 31/05/2021 1:42 pm
Pepe
 Pepe
Soporte CMS Webempresa Admin

Hola Josep.

Genial !!! me alegra que lo solucionaras.

Cualquier consulta que tengas no dudes en comunicarlo.

 

Cerramos el tema.

un saludo

Respondido : 31/05/2021 2:03 pm