https://tdestudiodesign.com/wp-content/plugins/whatsapp/style.css

Así es como puede agregar un campo de «calendario» en la página de pago de WooCommerce, dejar que las personas decidan la fecha de entrega y guardar este valor en el pedido.

Me tomó edades implementar esto para un cliente (era mucho más complejo, con fechas disponibles, diferentes calendarios basados ​​en diferentes zonas de envío, peso máximo por día, etc.), ¡así que pensé en compartir el fragmento básico con usted! Disfruta 🙂

WooCommerce: muestre un calendario de entrega @ checkout

Php Snippet: Fecha de entrega de pedidos de visualización @ WooCommerce Checkout

  /** * @snippet Pantall Order Entrew de entrega @WooCommerce Checkout * @How-to BusinessBloomer.com/wooCommerce-Customization * @Author Rodolfo Melogli, Bloomer de negocios * @Compatible WooCommerce 8 * @community https://busingbloomer.com/Club / */ // ----------------------- ',' bbloomer_echo_acf_date_picker '); función bbloomer_echo_acf_date_picker ($ checkout) {echo ''; } add_action ('wooCommerce_after_checkout_form', 'bbloomer_show_hide_calendar'); función bbloomer_show_hide_calendar ($ disponible_gateways) {wc_enqueue_js ( "       función show_calendar (val) {if (val.match ('^plano_rate') || val.match ('^free_shipping')) {jQuery ('#show-if-shipping'). fadein (); } else {jQuery ('#show-if-shipping'). fadeout (); }} jQuery (documento) .AJAXCOMPLETE (function () {var val = jQuery ('entrada[name^='shipping_method']: marcado '). Val (); show_calendar (val); });    " ); } add_action ('wooCommerce_checkout_process', 'bbloomer_validate_new_checkout_fields'); función bbloomer_validate_new_checkout_fields () {if (isset ($ _post[ 'delivery_date' ] ) && vacía ($ _post[ 'delivery_date' ] )) wc_add_notice (__ ('Seleccione la fecha de entrega'), 'Error'); } // ----------------------- , 10); función bbloomer_enable_datepicker () {echo ''; hacer eco'; } // ----------------------- , 20); función bbloomer_load_calendar_dates ($ disponible_gateways) {wc_enqueue_js ( "       $ ('#DatePicker'). Click (function () {$ ('#DatePicker'). DatePicker ({dateFormat: 'dd-mm-yy', maxDate: '+2m', Mindate: 1,}). Datepicker ( 'espectáculo' ); });    " ); } // ------------------------------- // 4. Guardar y mostrar la fecha como orden meta add_action ('wooCommerce_checkout_update_order_meta' , 'bbloomer_save_date_weight_order'); función bbloomer_save_date_weight_order ($ orden_id) {if ($ _post['delivery_date'] ) update_post_meta ($ orden_id, '_delivery_date', esc_attr ($ _post['delivery_date'] )); } add_action ('wooCommerce_admin_order_data_after_billing_address', 'bbloomer_delivery_weight_display_admin_order_meta'); función bbloomer_delivery_weight_display_admin_order_meta ($ orden) {echo '

Fecha de entrega: '. get_post_meta ($ orden-> get_id (), '_delivery_date', true). '

'; }

¿Hay un complemento para eso?

Si te encantaría codificar pero no te sientes 100% seguro con PHP, decidí buscar un complemento confiable que logre el mismo resultado.

En este caso, recomiendo el Complemento de ranuras de entrega de WooCommerce. Además de mostrar un selector de fecha y hora en la página de pago, también puede restringir horas y días, cobrar tarifas y primas para espacios específicos y mucho más.

Pero en caso de que odie los complementos y desee codificar (o desee intentarlo), luego siga leyendo 🙂

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *