{"id":375198,"date":"2026-09-29T18:59:32","date_gmt":"2026-09-29T18:59:32","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/gift-coupon-for-woocommerce\/"},"modified":"2026-09-29T16:14:09","modified_gmt":"2026-09-29T16:14:09","slug":"tagalong-gifts-for-woocommerce","status":"publish","type":"plugin","link":"https:\/\/wordpress.org\/plugins\/tagalong-gifts-for-woocommerce\/","author":18468294,"comment_status":"closed","ping_status":"closed","template":"","meta":{"version":"2.1.0","stable_tag":"2.1.0","tested":"7.1.2","requires":"6.5","requires_php":"7.4","requires_plugins":null,"header_name":"Tagalong Gifts for WooCommerce","header_author":"Mahmood Saeed","header_description":"Give customers a free product when they apply a coupon. Choose the gift on the coupon screen.","assets_banners_color":"417e60","last_updated":"2026-09-29 16:14:09","external_support_url":"","external_repository_url":"","donate_link":"","header_plugin_uri":"https:\/\/github.com\/Mahmooodsaeed\/Tagalong-Gifts-for-WooCommerce","header_author_uri":"https:\/\/www.linkedin.com\/in\/mahmood-i-saeed","rating":0,"author_block_rating":0,"active_installs":0,"downloads":52,"num_ratings":0,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":{"2.1.0":{"tag":"2.1.0","author":"moodithegamer","date":"2026-09-29 16:14:09","revision":3719423}},"upgrade_notice":{"2.1.0":"<p>First WordPress.org release. If you used 2.0.0 from GitHub, choose the gift on your coupons again.<\/p>"},"ratings":[],"assets_icons":{"icon-128x128.png":{"filename":"icon-128x128.png","revision":3720384,"resolution":"128x128","location":"assets","locale":"","width":128,"height":128},"icon-256x256.png":{"filename":"icon-256x256.png","revision":3720384,"resolution":"256x256","location":"assets","locale":"","width":256,"height":256}},"assets_banners":{"banner-1544x500.png":{"filename":"banner-1544x500.png","revision":3720384,"resolution":"1544x500","location":"assets","locale":"","width":1544,"height":500},"banner-772x250.png":{"filename":"banner-772x250.png","revision":3720384,"resolution":"772x250","location":"assets","locale":"","width":772,"height":250}},"assets_blueprints":{},"all_blocks":[],"tagged_versions":["2.1.0"],"block_files":[],"assets_screenshots":{"screenshot-1.png":{"filename":"screenshot-1.png","revision":3719427,"resolution":"1","location":"assets","locale":"","width":1000,"height":845},"screenshot-2.png":{"filename":"screenshot-2.png","revision":3719427,"resolution":"2","location":"assets","locale":"","width":1000,"height":394},"screenshot-3.png":{"filename":"screenshot-3.png","revision":3719427,"resolution":"3","location":"assets","locale":"","width":780,"height":376},"screenshot-4.png":{"filename":"screenshot-4.png","revision":3719427,"resolution":"4","location":"assets","locale":"","width":780,"height":416}},"screenshots":{"1":"The classic cart: the gift is shown as Free, its quantity is fixed, and the total doesn't include it.","2":"The block cart: the gift's original price is crossed out and its quantity can't be changed.","3":"Choose the Free gift product on the coupon's General tab.","4":"The order screen shows the gift line and the coupon that added it."}},"plugin_section":[],"plugin_tags":[326,65403,13486,2647,286],"plugin_category":[45],"plugin_contributors":[283468],"plugin_business_model":[],"class_list":["post-375198","plugin","type-plugin","status-publish","hentry","plugin_tags-coupon","plugin_tags-free-gift","plugin_tags-gift","plugin_tags-promotion","plugin_tags-woocommerce","plugin_category-ecommerce","plugin_contributors-moodithegamer","plugin_committers-moodithegamer"],"banners":{"banner":"https:\/\/ps.w.org\/tagalong-gifts-for-woocommerce\/assets\/banner-772x250.png?rev=3720384","banner_2x":"https:\/\/ps.w.org\/tagalong-gifts-for-woocommerce\/assets\/banner-1544x500.png?rev=3720384","banner_rtl":false,"banner_2x_rtl":false},"icons":{"svg":false,"icon":"https:\/\/ps.w.org\/tagalong-gifts-for-woocommerce\/assets\/icon-128x128.png?rev=3720384","icon_2x":"https:\/\/ps.w.org\/tagalong-gifts-for-woocommerce\/assets\/icon-256x256.png?rev=3720384","generated":false},"screenshots":[{"src":"https:\/\/ps.w.org\/tagalong-gifts-for-woocommerce\/assets\/screenshot-1.png?rev=3719427","caption":"The classic cart: the gift is shown as Free, its quantity is fixed, and the total doesn't include it."},{"src":"https:\/\/ps.w.org\/tagalong-gifts-for-woocommerce\/assets\/screenshot-2.png?rev=3719427","caption":"The block cart: the gift's original price is crossed out and its quantity can't be changed."},{"src":"https:\/\/ps.w.org\/tagalong-gifts-for-woocommerce\/assets\/screenshot-3.png?rev=3719427","caption":"Choose the Free gift product on the coupon's General tab."},{"src":"https:\/\/ps.w.org\/tagalong-gifts-for-woocommerce\/assets\/screenshot-4.png?rev=3719427","caption":"The order screen shows the gift line and the coupon that added it."}],"raw_content":"<!--section=description-->\n<p>Run offers like \"Use code FREEMUG and get a mug free\" with the coupons you already use.<\/p>\n\n<p>Choose a <strong>Free gift product<\/strong> on any coupon. When a customer applies that coupon, one of that product is added to their cart for free. The gift tags along with the coupon: remove the coupon and the gift goes too, and the other way round. The gift is clearly labelled on the order, so whoever packs it knows why it's there.<\/p>\n\n<h4>Features<\/h4>\n\n<ul>\n<li><strong>Adds the gift automatically<\/strong> when the coupon is applied.<\/li>\n<li><strong>Really free.<\/strong> The gift is priced at 0 in the cart total, not just labelled \"Free\".<\/li>\n<li><strong>One gift per coupon.<\/strong> The customer can't raise the gift's quantity. If they also buy the same product, those units stay paid and appear as a separate line.<\/li>\n<li><strong>Coupon and gift stay together.<\/strong> Remove one and the other goes too, including when WooCommerce drops the coupon because its rules are no longer met (for example, minimum spend).<\/li>\n<li><strong>Refuses a coupon whose gift isn't available<\/strong> (out of stock, deleted or not for sale), with a clear message.<\/li>\n<li><strong>Labelled everywhere:<\/strong> \"Free gift: with coupon freemug\" in the cart, checkout, order emails, My Account and the order screen, plus a private order note.<\/li>\n<li><strong>Works with the Cart and Checkout blocks and the classic cart and checkout.<\/strong><\/li>\n<li><strong>Compatible with High-Performance Order Storage (HPOS).<\/strong><\/li>\n<li>Uses WooCommerce's own coupon rules: expiry dates, minimum spend, usage limits and so on.<\/li>\n<li>No settings page, no extra database tables, no scripts or styles loaded on your store.<\/li>\n<\/ul>\n\n<h4>For developers<\/h4>\n\n<ul>\n<li><code>tagalong_gift_coupon_map<\/code>: map coupon codes to product or variation IDs in code.<\/li>\n<li><code>tagalong_gift_product_id<\/code>: decide the gift for a coupon at runtime.<\/li>\n<li><code>tagalong_remove_coupon_with_gift<\/code>: return <code>false<\/code> to keep the coupon when the gift is removed.<\/li>\n<li><code>tagalong_free_price_html<\/code>: change the \"Free\" label in the classic cart.<\/li>\n<\/ul>\n\n<p>The source code and end-to-end tests are on <a href=\"https:\/\/github.com\/Mahmooodsaeed\/Tagalong-Gifts-for-WooCommerce\">GitHub<\/a>.<\/p>\n\n<!--section=installation-->\n<ol>\n<li>Install and activate WooCommerce.<\/li>\n<li>Go to <strong>Plugins \u2192 Add New Plugin<\/strong>, search for \"Tagalong Gifts for WooCommerce\", then install and activate it.<\/li>\n<li>Go to <strong>Marketing \u2192 Coupons<\/strong> and create or edit a coupon.<\/li>\n<li>On the <strong>General<\/strong> tab, search for a product under <strong>Free gift product<\/strong>. For a gift-only coupon, use <strong>Fixed cart discount<\/strong> with <strong>Coupon amount 0<\/strong>.<\/li>\n<li>Publish the coupon.<\/li>\n<\/ol>\n\n<!--section=faq-->\n<dl>\n<dt id=\"which%20products%20can%20be%20a%20gift%3F\"><h3>Which products can be a gift?<\/h3><\/dt>\n<dd><p>A simple product, or one exact variation such as \"Hoodie \u2013 Medium\". Variable products can't be chosen, because the customer would need to pick options. The product needs a price and must be in stock. The customer never pays that price.<\/p><\/dd>\n<dt id=\"how%20do%20i%20stop%20people%20buying%20the%20gift%20on%20its%20own%3F\"><h3>How do I stop people buying the gift on its own?<\/h3><\/dt>\n<dd><p>Edit the gift product and set <strong>Catalog visibility<\/strong> to <strong>Hidden<\/strong>. It can still be given as a gift.<\/p><\/dd>\n<dt id=\"can%20a%20coupon%20give%20a%20discount%20as%20well%20as%20a%20gift%3F\"><h3>Can a coupon give a discount as well as a gift?<\/h3><\/dt>\n<dd><p>Yes. Set the coupon's discount type and amount as usual, then also choose a free gift product.<\/p><\/dd>\n<dt id=\"what%20happens%20if%20the%20gift%20runs%20out%20of%20stock%3F\"><h3>What happens if the gift runs out of stock?<\/h3><\/dt>\n<dd><p>New customers can't apply the coupon. They see \"Sorry, the free gift for this coupon is out of stock right now.\" A customer who already has the gift in their cart gets WooCommerce's usual out-of-stock message at checkout, as with any product.<\/p><\/dd>\n<dt id=\"can%20the%20customer%20choose%20between%20several%20gifts%3F\"><h3>Can the customer choose between several gifts?<\/h3><\/dt>\n<dd><p>Not at the moment. Each coupon gives one specific product.<\/p><\/dd>\n<dt id=\"does%20it%20work%20when%20i%20add%20a%20coupon%20to%20an%20order%20in%20the%20admin%3F\"><h3>Does it work when I add a coupon to an order in the admin?<\/h3><\/dt>\n<dd><p>The coupon is applied, but the gift isn't added automatically. Add the gift product to the order by hand.<\/p><\/dd>\n<dt id=\"what%20does%20it%20store%2C%20and%20what%20happens%20when%20i%20delete%20the%20plugin%3F\"><h3>What does it store, and what happens when I delete the plugin?<\/h3><\/dt>\n<dd><p>It stores the chosen gift on each coupon, a hidden marker on gift order lines, and a flag on orders that got a gift note. Deleting the plugin removes the coupon setting. Past orders keep their gift details.<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>2.1.0<\/h4>\n\n<ul>\n<li>First release on WordPress.org.<\/li>\n<li>Renamed to Tagalong Gifts for WooCommerce. Code prefix changed from <code>gcl_<\/code> to <code>tagalong_<\/code>. If you installed 2.0.0 from GitHub, choose the gift on your coupons again after updating.<\/li>\n<li>The coupon screen checks its security token and user permission itself before saving.<\/li>\n<\/ul>\n\n<h4>2.0.0<\/h4>\n\n<ul>\n<li>Rewritten as a plugin: gift chosen on the coupon screen, gift really free and locked to quantity 1, coupon codes match in any letter case, Cart and Checkout blocks and HPOS supported, order note fixed, unavailable gifts refuse the coupon.<\/li>\n<\/ul>\n\n<h4>1.0.0<\/h4>\n\n<ul>\n<li>Original code snippet.<\/li>\n<\/ul>","raw_excerpt":"Give customers a free product when they apply a coupon. Choose the gift on the coupon screen and it&#039;s added to the cart at no cost.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/375198","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=375198"}],"author":[{"embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/moodithegamer"}],"wp:attachment":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=375198"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=375198"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=375198"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=375198"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=375198"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=375198"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}