{"id":313459,"date":"2026-05-29T15:14:47","date_gmt":"2026-05-29T15:14:47","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/pdf-gift-card\/"},"modified":"2026-06-04T19:43:18","modified_gmt":"2026-06-04T19:43:18","slug":"kafestudio-pdf-gift-cards","status":"publish","type":"plugin","link":"https:\/\/pcd.wordpress.org\/plugins\/kafestudio-pdf-gift-cards\/","author":23500248,"comment_status":"closed","ping_status":"closed","template":"","meta":{"version":"1.1.1","stable_tag":"1.1.1","tested":"7.0","requires":"6.0","requires_php":"8.0","requires_plugins":null,"header_name":"PDF Gift Cards for WooCommerce","header_author":"KafeStudio","header_description":"Automatically generate personalized PDF gift cards for WooCommerce orders with a Drag & Drop template editor.","assets_banners_color":"","last_updated":"2026-06-04 19:43:18","external_support_url":"","external_repository_url":"","donate_link":"","header_plugin_uri":"","header_author_uri":"https:\/\/kafestudio.fr","rating":5,"author_block_rating":0,"active_installs":0,"downloads":190,"num_ratings":1,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":{"1.0.0":{"tag":"1.0.0","author":"fabiendst","date":"2026-06-03 16:55:51"},"1.1.0":{"tag":"1.1.0","author":"fabiendst","date":"2026-06-03 17:00:48"},"1.1.1":{"tag":"1.1.1","author":"fabiendst","date":"2026-06-04 19:43:18"}},"upgrade_notice":{"1.1.1":"<p>Important bugfix release. Prevents accidental data loss on update\/uninstall. Recommended for all users.<\/p>","1.1.0":"<p>Security and compatibility update. Recommended for all users.<\/p>","1.0.0":"<p>Initial release. Install and start creating your first gift card template!<\/p>"},"ratings":{"1":0,"2":0,"3":0,"4":0,"5":1},"assets_icons":{"icon-128x128.png":{"filename":"icon-128x128.png","revision":3554643,"resolution":"128x128","location":"assets","locale":"","width":128,"height":128},"icon-256x256.png":{"filename":"icon-256x256.png","revision":3554643,"resolution":"256x256","location":"assets","locale":"","width":256,"height":256}},"assets_banners":[],"assets_blueprints":{},"all_blocks":[],"tagged_versions":["1.0.0","1.1.0","1.1.1"],"block_files":[],"assets_screenshots":[],"screenshots":{"1":"Template list \u2014 overview of your gift card templates","2":"Drag &amp; Drop editor \u2014 place fields anywhere on your PDF","3":"Field properties panel \u2014 font, size, color, alignment","4":"Product associations \u2014 link templates to WooCommerce products","5":"PDF preview \u2014 test with real product data before going live","6":"Customer-facing gift card \u2014 what your buyer receives"}},"plugin_section":[],"plugin_tags":[15861,165782,1764,35576,286],"plugin_category":[45,50],"plugin_contributors":[264968],"plugin_business_model":[],"class_list":["post-313459","plugin","type-plugin","status-publish","hentry","plugin_tags-gift-card","plugin_tags-gift-voucher","plugin_tags-pdf","plugin_tags-voucher","plugin_tags-woocommerce","plugin_category-ecommerce","plugin_category-media","plugin_contributors-fabiendst","plugin_committers-fabiendst"],"banners":[],"icons":{"svg":false,"icon":"https:\/\/ps.w.org\/kafestudio-pdf-gift-cards\/assets\/icon-128x128.png?rev=3554643","icon_2x":"https:\/\/ps.w.org\/kafestudio-pdf-gift-cards\/assets\/icon-256x256.png?rev=3554643","generated":false},"screenshots":[],"raw_content":"<!--section=description-->\n<p><strong>PDF Gift Card<\/strong> lets you create beautiful, fully personalized PDF gift cards for your WooCommerce store.<\/p>\n\n<p>It lets store owners upload their own PDF design and dynamically populate it with real order data \u2014 no coding required.<\/p>\n\n<h4>How it works<\/h4>\n\n<ol>\n<li><strong>Upload<\/strong> your PDF design (created in Canva, Illustrator, Affinity Designer, etc.)<\/li>\n<li><strong>Drag &amp; drop<\/strong> dynamic fields onto your template<\/li>\n<li><strong>Associate<\/strong> the template with any WooCommerce product<\/li>\n<li>When an order is placed, the <strong>PDF is automatically generated<\/strong> and attached to the confirmation email<\/li>\n<\/ol>\n\n<h4>Available dynamic fields<\/h4>\n\n<ul>\n<li>Product name<\/li>\n<li>Customer name<\/li>\n<li>Recipient name<\/li>\n<li>Personalized message<\/li>\n<li>Purchase date<\/li>\n<li>Expiry date<\/li>\n<li>Order number<\/li>\n<li>Unique voucher code<\/li>\n<li>Price<\/li>\n<li>Product image <em>(Pro)<\/em><\/li>\n<li>Site logo <em>(Pro)<\/em><\/li>\n<li>QR Code <em>(Pro)<\/em><\/li>\n<\/ul>\n\n<h4>What's included in the Free plan<\/h4>\n\n<ul>\n<li>1 template<\/li>\n<li>All text fields<\/li>\n<li>PDF preview with real product data<\/li>\n<li>Product associations<\/li>\n<li>Multilingual admin: English, French, German, Spanish, Dutch<\/li>\n<\/ul>\n\n<h4>Upgrade to Pro<\/h4>\n\n<ul>\n<li><strong>Unlimited templates<\/strong><\/li>\n<li>Image fields (logo, product photo, QR code)<\/li>\n<li>Plugin language selector<\/li>\n<li>Priority email support<\/li>\n<li>Automatic updates<\/li>\n<\/ul>\n\n<h4>Multilingual support<\/h4>\n\n<p>The plugin interface is fully translated into:\nFrench, English, German (Deutsch), Spanish (Espanol), Dutch (Nederlands)<\/p>\n\n<h4>Security &amp; GDPR<\/h4>\n\n<ul>\n<li>Generated PDFs stored in a protected, non-public directory<\/li>\n<li>Configurable auto-deletion of PDFs after N days<\/li>\n<li>No personal data stored beyond what WooCommerce already holds<\/li>\n<\/ul>\n\n<h4>Requirements<\/h4>\n\n<ul>\n<li>WordPress 6.0+<\/li>\n<li>WooCommerce 8.0+<\/li>\n<li>PHP 8.0+<\/li>\n<\/ul>\n\n<!--section=installation-->\n<ol>\n<li>Upload the <code>pdf-gift-card<\/code> folder to <code>\/wp-content\/plugins\/<\/code><\/li>\n<li>Activate the plugin through the <strong>Plugins<\/strong> screen<\/li>\n<li>Go to <strong>PDF Gift Cards<\/strong> in your WordPress admin menu<\/li>\n<li>Create your first template, upload your PDF design, and drag &amp; drop your fields<\/li>\n<li>Associate the template with a WooCommerce product<\/li>\n<li>Done!<\/li>\n<\/ol>\n\n<!--section=faq-->\n<dl>\n<dt id=\"does%20this%20work%20with%20any%20pdf%20file%3F\"><h3>Does this work with any PDF file?<\/h3><\/dt>\n<dd><p>Yes. Any PDF created in Canva, Adobe Illustrator, Affinity Designer or any other tool works as a base template.<\/p><\/dd>\n<dt id=\"can%20the%20customer%20fill%20in%20the%20recipient%27s%20name%20themselves%3F\"><h3>Can the customer fill in the recipient's name themselves?<\/h3><\/dt>\n<dd><p>Yes. The plugin adds a \"Recipient name\" and \"Personalized message\" field on the product page, which the customer fills in before adding to cart. These values are then injected into the PDF.<\/p><\/dd>\n<dt id=\"is%20the%20generated%20pdf%20attached%20to%20the%20woocommerce%20order%20email%3F\"><h3>Is the generated PDF attached to the WooCommerce order email?<\/h3><\/dt>\n<dd><p>Yes. The PDF is automatically attached to the customer's order confirmation email. You can also enable a separate dedicated email.<\/p><\/dd>\n<dt id=\"is%20this%20gdpr%20compliant%3F\"><h3>Is this GDPR compliant?<\/h3><\/dt>\n<dd><p>Yes. PDFs are stored in a protected, non-publicly-accessible directory. You can configure automatic deletion after a number of days (default: 365).<\/p><\/dd>\n<dt id=\"does%20it%20work%20with%20variable%20products%3F\"><h3>Does it work with variable products?<\/h3><\/dt>\n<dd><p>Yes, both simple and variable WooCommerce products are supported.<\/p><\/dd>\n<dt id=\"is%20it%20compatible%20with%20woocommerce%20hpos%3F\"><h3>Is it compatible with WooCommerce HPOS?<\/h3><\/dt>\n<dd><p>Yes, the plugin fully supports WooCommerce High Performance Order Storage (HPOS \/ custom order tables).<\/p><\/dd>\n<dt id=\"what%27s%20the%20difference%20between%20free%20and%20pro%3F\"><h3>What's the difference between Free and Pro?<\/h3><\/dt>\n<dd><p>The Free plan allows 1 template with text fields. The Pro plan unlocks unlimited templates, image fields (logo, product photo, QR code), and priority support.<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>1.1.1 \u2014 2026-06-04<\/h4>\n\n<ul>\n<li>Fix: Templates and data are never deleted on plugin uninstall<\/li>\n<li>Fix: DB migration (maybe_upgrade) now correctly runs on plugin update<\/li>\n<li>Fix: Editor upload button was non-functional due to a script timing issue<\/li>\n<li>Fix: PDF preview not rendering (PDF.js IIFE wrapper \u2014 import.meta syntax)<\/li>\n<li>Fix: Special characters and emoji icons corrupted in editor field list<\/li>\n<\/ul>\n\n<h4>1.1.0 \u2014 2026-06-03<\/h4>\n\n<ul>\n<li>Security: PDF filenames now use a random 24-character token (no longer guessable)<\/li>\n<li>Security: Temporary QR code files are now properly deleted after PDF generation<\/li>\n<li>Improvement: Error notification email subject now uses the site name dynamically<\/li>\n<li>Improvement: Upgraded PDF.js from 3.11.174 to 5.7.284 (bundled locally)<\/li>\n<li>Improvement: Replaced deprecated PHP filesystem functions with WP_Filesystem equivalents<\/li>\n<li>Fix: PHP syntax errors caused by escaped variables in admin class<\/li>\n<li>Fix: Removed load_plugin_textdomain() \u2014 auto-loaded since WordPress 4.6<\/li>\n<li>Compatibility: Tested up to WordPress 7.0 and WooCommerce 9.6<\/li>\n<\/ul>\n\n<h4>1.0.0 \u2014 2026-05-14<\/h4>\n\n<ul>\n<li>Initial release<\/li>\n<\/ul>","raw_excerpt":"Automatically generate personalized PDF gift cards for WooCommerce orders with a Drag &amp; Drop template editor. No design skills needed.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/pcd.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/313459","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/pcd.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/pcd.wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/pcd.wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=313459"}],"author":[{"embeddable":true,"href":"https:\/\/pcd.wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/fabiendst"}],"wp:attachment":[{"href":"https:\/\/pcd.wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=313459"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/pcd.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=313459"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/pcd.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=313459"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/pcd.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=313459"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/pcd.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=313459"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/pcd.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=313459"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}