Problema al agregar NIF en factura WooCommerce

  • Autor Autor legionario
  • Fecha de inicio Fecha de inicio
L

legionario

Llevo varios días que no consigo poner el nif en la factura, estoy usando WooCommerce Checkout Manager para que el nif sea obligarlo en la página de compra, aqui lo podeis ver: Imgur: The magic of the Internet ,WooCommerce PDF Invoices & Packing Slips y Divi como tema, he creado una carpeta en esta ruta wp-content\themes\Divi\woocommerce\pdf la selecciono en el programa invoices y le pego el código en functions.php del tema Divi:
Insertar CODE, HTML o PHP:
// Incluir NIF en la factura

add_filter( 'wpo_wcpdf_billing_address', 'incluir_nif_en_factura' );

function incluir_nif_en_factura( $address ){
  global $wpo_wcpdf;

  echo $address . '<p>';
  $wpo_wcpdf->custom_field( 'NIF', 'NIF: ' );
  echo '</p>';
}

Esta es una captura del archivo functions Imgur: The magic of the Internet
Me podéis ayudar ya que no lo consigo.

Gracias y saludos.
 
Si lo que quieres hacer es incluirlo en la Factura no debes modificar el functions en el theme Divi, sino en el editor de plugins modificando el plugin WooCommerce PDF Invoices & Packing Slips
 
La versión que yo tengo es la gratuita y no existe esa opción en los ajustes del plugin.

Un saludo.
 
La versión que yo tengo es la gratuita y no existe esa opción en los ajustes del plugin.

Un saludo.

Eso no es en los ajustes del plugin.
En el propio panel de administración, menú plugins, editor y ahí seleccionas el plugin que quieres modificar. O edita los archivos del plugin directamente en los archivos del plugin.
 
Eso no es en los ajustes del plugin.
En el propio panel de administración, menú plugins, editor y ahí seleccionas el plugin que quieres modificar. O edita los archivos del plugin directamente en los archivos del plugin.
Muchas gracias ya he entendido lo que comentabas pero en que archivo tengo que introducir el código ya que no hay ningún functions, mira los archivos que tiene el plugin Capturas - Album on Imgur
Un saludo.
 
Mis disculpas si sonó como reproche o como queja, lo siento, siempre se agradece cualquier ayuda.

Un saludo.
 
Puedes hacerlos sin necesidad de usar ningún plugin aqui te dejo los pasos

en el functions.php de tu child theme añade estas funciones

HTML:
add_action( 'woocommerce_after_order_notes', 'wpdesk_vat_field' );
/**
* NIF en WooCommerce Checkout
*/
function wpdesk_vat_field( $checkout ) {
    echo '<div id="wpdesk_vat_field"><h2>' . __('NIF') . '</h2>';
    
    woocommerce_form_field( 'vat_number', array(
        'type'          => 'text',
        'class'         => array( 'vat-number-field form-row-wide') ,
        'label'         => __( 'NIF' ),
        'placeholder'   => __( 'Introduce tu NIF' ),
    ), $checkout->get_value( 'vat_number' ));
    
    echo '</div>';
}

Esta función es la que guarda el VAT

HTML:
add_action( 'woocommerce_checkout_update_order_meta', 'wpdesk_checkout_vat_number_update_order_meta' );
/**
* Guardar NIF en order meta
*/
function wpdesk_checkout_vat_number_update_order_meta( $order_id ) {
    if ( ! empty( $_POST['vat_number'] ) ) {
        update_post_meta( $order_id, '_vat_number', sanitize_text_field( $_POST['vat_number'] ) );
    }
}

NIF en Woocommerce Admin

HTML:
add_action( 'woocommerce_admin_order_data_after_billing_address', 'wpdesk_vat_number_display_admin_order_meta', 10, 1 );
/**
 * Mostrar NIF en la sección de editar pedido
 */
function wpdesk_vat_number_display_admin_order_meta( $order ) {
    echo '<p><strong>' . __( 'NIF', 'woocommerce' ) . ':</strong> ' . get_post_meta( $order->id, '_vat_number', true ) . '</p>';
}

Mostar el NIF en los Emails

HTML:
add_filter( 'woocommerce_email_order_meta_keys', 'wpdesk_vat_number_display_email' );
/**
* NIF en Emails*/
function wpdesk_vat_number_display_email( $keys ) {
     $keys['NIF'] = '_vat_number';
     return $keys;
}
 
Atrás
Arriba