• Hola. Necesito ayuda con el plug-in PDF Invoices & Packing Slips versión gratuita para WooCommerce. Desde la última actualización de WP no me deja descargar las facturas y lo necesito para la contabilidad de la empresa.

    He hablado con soporte y ellos no pueden ayudarme porque creen que el erro es por la actualización de WP.

    He encontrado una posible solución pero no se donde pegarla en mi servidor y tema (Betheme)

    /** * PDF Invoices & Packing Slips for WooCommerce: * Muestra el NIF en los documentos PDF */ add_filter( ‘wpo_wcpdf_billing_address’, function( $address, $document ){ if ( ( $order = $document->order ) && ( $nif = $order->get_meta( ‘NIF’ ) ) ) { $address .= sprintf( ‘<p>NIF: %s</p>’, $nif ); } return $address; }, 10, 2 );

    Tampoco se la ruta donde puedo acceder ni por que sustituir. ¿Podéis ayudarme? Gracias


    Este es el error:

    Fatal error: Call to a member function custom_field() on null/home/customer/www/saberyvida.com/public_html/wp-content/plugins/saberyvida/saberyvida.php (683)#0 /home/customer/www/saberyvida.com/public_html/wp-includes/class-wp-hook.php(312): syv_wpo_wcpdf_billing_address(‘Jos\xC3\xA9 Antonio C…’) #1 /home/customer/www/saberyvida.com/public_html/wp-includes/plugin.php(205): WP_Hook->apply_filters(‘Jos\xC3\xA9 Antonio C…’, Array) #2 /home/customer/www/saberyvida.com/public_html/wp-content/plugins/woocommerce-pdf-invoices-packing-slips/includes/documents/abstract-wcpdf-order-document-methods.php(93): apply_filters(‘wpo_wcpdf_billi…’, ‘Jos\xC3\xA9 Antonio C…’, Object(WPO\WC\PDF_Invoices\Documents\Invoice)) #3 /home/customer/www/saberyvida.com/public_html/wp-content/plugins/woocommerce-pdf-invoices-packing-slips/includes/documents/abstract-wcpdf-order-document-methods.php(102): WPO\WC\PDF_Invoices\Documents\Order_Document_Methods->get_billing_address() #4 /home/customer/www/saberyvida.com/public_html/wp-content/plugins/woocommerce-pdf-invoices-packing-slips/templates/Simple/invoice.php(42): WPO\WC\PDF_Invoices\Documents\Order_Document_Methods->billing_address() #5 /home/customer/www/saberyvida.com/public_html/wp-content/plugins/woocommerce-pdf-invoices-packing-slips/includes/documents/abstract-wcpdf-order-document.php(1084): include(‘/home/customer/…’) #6 /home/customer/www/saberyvida.com/public_html/wp-content/plugins/woocommerce-pdf-invoices-packing-slips/includes/documents/abstract-wcpdf-order-document.php(928): WPO\WC\PDF_Invoices\Documents\Order_Document->render_template(‘/home/customer/…’, Array) #7 /home/customer/www/saberyvida.com/public_html/wp-content/plugins/woocommerce-pdf-invoices-packing-slips/includes/documents/abstract-wcpdf-order-document.php(883): WPO\WC\PDF_Invoices\Documents\Order_Document->get_html() #8 /home/customer/www/saberyvida.com/public_html/wp-content/plugins/woocommerce-pdf-invoices-packing-slips/includes/documents/abstract-wcpdf-order-document.php(950): WPO\WC\PDF_Invoices\Documents\Order_Document->get_pdf() #9 /home/customer/www/saberyvida.com/public_html/wp-content/plugins/woocommerce-pdf-invoices-packing-slips/includes/class-wcpdf-main.php(517): WPO\WC\PDF_Invoices\Documents\Order_Document->output_pdf(‘inline’) #10 /home/customer/www/saberyvida.com/public_html/wp-includes/class-wp-hook.php(310): WPO\WC\PDF_Invoices\Main->generate_document_ajax(») #11 /home/customer/www/saberyvida.com/public_html/wp-includes/class-wp-hook.php(334): WP_Hook->apply_filters(», Array) #12 /home/customer/www/saberyvida.com/public_html/wp-includes/plugin.php(517): WP_Hook->do_action(Array) #13 /home/customer/www/saberyvida.com/public_html/wp-admin/admin-ajax.php(188): do_action(‘wp_ajax_generat…’) #14 {main}

    La página con la que necesito ayuda: [accede para ver el enlace]

Viendo 6 respuestas - de la 1 a la 6 (de un total de 6)
  • Hola, @saberyvida:

    Parece que el error se está produciendo en el archivo saberyvida.php (línea 683) que tienes dentro del directorio /wp-content/plugins/saberyvida/, que parece un plugin personalizado, específicamente, la función syv_wpo_wcpdf_billing_address.

    Si compartes el código de dicha función, la reescribiré como cortesía para que siga los nuevos estándares del plugin, ya que parece que estás usando código muy obsoleto.

    Iniciador del debate saberyvida

    (@saberyvida)

    Buenos días. Creo que es esta línea 683:

      $wpo_wcpdf->custom_field( ‘_billing_vat_number’, __( ‘VAT number:’, ‘saberyvida’ ) );

    Pego también desde la 679 a la 686 que es donde sale la palabra billing address por si era el bloque completo:

    function syv_wpo_wcpdf_billing_address( $address ) {

      global $wpo_wcpdf;

      echo $address . ‘<p>’;

      $wpo_wcpdf->custom_field( ‘_billing_vat_number’, __( ‘VAT number:’, ‘saberyvida’ ) );

      echo ‘</p>’;

    }

    add_filter( ‘wpo_wcpdf_billing_address’, ‘syv_wpo_wcpdf_billing_address’ );

    Muchas gracias por la ayuda

    Gracias por compartir el código. Ya he escrito una nueva versión para ti.

    Por favor, reemplaza el contenido de las líneas 679 a 686 con este código:

    /**
     * PDF Invoices & Packing Slips for WooCommerce:
     * Incluye el NIF en los documentos PDF (dentro de los datos de facturación) 
     */
    add_filter( 'wpo_wcpdf_billing_address', 'syv_wpo_wcpdf_billing_address', 10, 2 );
    function syv_wpo_wcpdf_billing_address( $address, $document ) {
      if ( ! empty( $document ) && is_callable( array( $document, 'get_custom_field' ) ) && ( $nif = $document->get_custom_field( '_billing_vat_number' ) ) ) {
    		$address .= sprintf( '<p>%s %s</p>', __( 'VAT number:', 'saberyvida' ), $nif );
    	}
      return $address;
    }

    ¡Hazme saber si funciona!

    Iniciador del debate saberyvida

    (@saberyvida)

    Funciona.

    Muchas gracias. Felicidades Gran trabajo Yordan

    ¡Gracias por confirmar que ha funcionado!

    No dudes en escribir de nuevo, si necesitas algo más 😉

    ¡Hola! Yo tengo el mismo problema. ¿Me podrías ayudar?
    La web es erratanaturae.com

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