Description
Adds ability for users and guests to download their WooCommerce cart as PDF. Useful for many cases such as if a user needs a quote before completing purchase.
Features
- Full PDF template customization
- Send copy of each generated cart PDF to admin
- Capture customer / guest information from checkout and display on generated PDF
Screenshots
Blocks
This plugin provides 1 block.
- Cart PDF Button Download WooCommerce cart as PDF.
Installation
- Upload plugin and then activate
- Ensure WooCommerce is installed and activated as well
FAQ
-
How to view or open PDF instead of download?
-
Add the following code snippet to your themes functions.php:
function child_theme_wc_cart_pdf_destination( $dest ) { if ( class_exists( '\WCCartPDF\Mpdf\Output\Destination' ) ) { $dest = \WCCartPDF\Mpdf\Output\Destination::INLINE; } return $dest; } add_filter( 'wc_cart_pdf_destination', 'child_theme_wc_cart_pdf_destination' );
-
How to require user to be logged in to download cart as PDF?
-
Add the following code snippet to your themes functions.php:
/** * Remove the default download cart button */ remove_action( 'woocommerce_proceed_to_checkout', 'wc_cart_pdf_button', 21 ); /** * Replace the default download cart button with our own logic to display a login notice for guests */ function child_theme_wc_cart_pdf_button() { if( ! is_cart() || WC()->cart->is_empty() ) { return; } if ( is_user_logged_in() ) : ?> <a href="<?php echo esc_url( wp_nonce_url( add_query_arg( array( 'cart-pdf' => '1' ), wc_get_cart_url() ), 'cart-pdf' ) );?>" class="cart-pdf-button button" target="_blank"> <?php esc_html_e( 'Download Cart as PDF', 'wc-cart-pdf' ); ?> </a> <?php else : ?> <p><a href="<?php echo get_permalink( get_option( 'woocommerce_myaccount_page_id' ) ); ?>" class="cart-pdf-login"><?php esc_html_e( 'Please login to download your cart as a PDF', 'wc-cart-pdf' ); ?></a></p> <?php endif; } add_action( 'woocommerce_proceed_to_checkout', 'child_theme_wc_cart_pdf_button', 21 );
-
Product images are not showing on PDF
-
Try adding the following to your wp-config.php file:
define( 'WC_CART_PDF_THUMBNAIL_COMPATIBILITY', true );
-
How can I customize the PDF template?
-
Copy the PDF template from the plugin folder wc-cart-pdf/templates/cart-table.php into your child theme folder child-theme/woocommerce/wc-cart-pdf/cart-table.php.
From there you can modify the PDF template in your child theme.
Reviews
Contributors & Developers
“WooCommerce Cart PDF” is open source software. The following people have contributed to this plugin.
Contributors“WooCommerce Cart PDF” has been translated into 5 locales. Thank you to the translators for their contributions.
Translate “WooCommerce Cart PDF” into your language.
Interested in development?
Browse the code, check out the SVN repository, or subscribe to the development log by RSS.
Changelog
3.1
* Compatibility with WP 6.7
3.0.2
* Fix PDF template not translating the date
3.0.1
* Fix PDF not generating when changing shipping method
3.0.0
* BREAKING CHANGE: Scoped dependencies to prevent collisions. References to namespace \Mpdf
is now \WCCartPDF\Mpdf
2.10.0
* Set minimum compatibility to PHP 8+
2.9.4
* Fix fatal error due to missing second parameter on woocommerce_email_styles
filter. (Filter removed)
2.9.3
* Fix wc_cart_pdf_filename
filter not being applied to admin copy
2.9.2
* Update compatibility with WooCommerce cart and checkout blocks
2.9.1
* Fix Georgian language not displaying all characters
2.9.0
* Compatbility with All Products for Woo Subscriptions
* Improve PDF product thumbnail compatibility
2.8.0
* Migrate settings to WooCommerce > Settings > Integration > Cart PDF
* Add ability to capture customer details via modal popup before downloading cart as PDF
* Additional compatbility with WooCommerce blocks
2.7.0
* Add Cart PDF Button block
2.6.0
* HPOS (high performance order storage) compatibility
2.5.0
* TranslatePress compatibility
2.4.0
* Update broken image compatibility
* Add debug capability using constant define( 'WC_CART_PDF_DEBUG', true );
to wp-config.php
2.3.1
* Update compatibility
2.3.0
* Improve multilingual capabilities
* Add customizer control to open PDF in new tab
2.2.3
* Update compatibility
2.2.2
* Update compatibility
2.2.1
* Fix capture customer not working properly for logged in users
2.2.0
* Add customizer option to display unique generated PDF number on PDF
2.1.7
* Disable lazy loading product thumbnails by default
* Add define( 'WC_CART_PDF_THUMBNAIL_COMPATIBILITY', true );
to wp-config.php in an attempt to fix product thumbnails not loading
2.1.6
* Fix logo rendering on cart table PDF template
2.1.5
* Fix capture customer feature to only capture certain checkout fields
2.1.4
* Customizer option to show Download Cart as PDF button on checkout
* Ability to capture customer and guest information from checkout and display on PDF
2.1.3
* Add language translation file
* Stylesheet changes
2.1.2
* Add compatibility with Gravity PDF plugin
2.1.1
* Send admin email as HTML
2.1.0
* Ability to send an emailed copy of generated PDF to admin
* Add date to PDF
* Add customer details to PDF
2.0.6
* Update compatibility tag
* Two new hooks to modify PDF output
2.0.5
* WordPress 5.4 compatibility
* Add support for coupons displaying on PDF
* Add minimum PHP requirements admin notice and prevent loading if not satisfied
* Minor styling update to PDF
2.0.4
* Added compatibility with Visual Products Configurator
* Perform WC cart calculate_totals() method prior to generating PDF
* Added customizer setting to modify download cart as PDF button label
2.0.3
* Fix composer dependencies
2.0.2
* Update compatibility
2.0.1
* Fix product thumbnails too large
2.0.0
* Change PDF library from Dompdf to mPDF
* Add support for RTL languages
1.0.5
* Fix CSS for language support
* Default font to Noto Sans for language support
* Update Dompdf
1.0.4
* Add PDF template actions hooks wc_cart_pdf_before_template
and wc_cart_pdf_after_template
1.0.3
* Add customizer option to change PDF header logo, width and alignment
* Adjustments to default widths and styling of PDF cart table
* Bug fix: Expand {site_title} variable placeholder in PDF footer text
1.0.2
* Tested up to WordPress 5.1
* Add wc_cart_pdf_stream_options
filter for stream options
1.0.1
* Add compatibility with TM Extra Product Options
* Add ability to override PDF template and CSS through the theme folder woocommerce/wc-cart-pdf/
* Add filter to change PDF filename
* Add shipping and taxes to PDF
* Add WooCommerce error notice if nonce is invalid
* Add action hook before PDF is generated
1.0.0
* Initial plugin release