{"id":260284,"date":"2025-12-05T20:09:57","date_gmt":"2025-12-05T20:09:57","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/shopper-rewards\/"},"modified":"2026-01-14T12:31:14","modified_gmt":"2026-01-14T12:31:14","slug":"shopper-rewards","status":"publish","type":"plugin","link":"https:\/\/scn.wordpress.org\/plugins\/shopper-rewards\/","author":23279251,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_crdt_document":"","version":"1.0.2","stable_tag":"1.0.2","tested":"6.9.4","requires":"5.8","requires_php":"7.4","requires_plugins":null,"header_name":"Shopper Rewards","header_author":"Maryam Noor","header_description":"Shopper Rewards is a lightweight and secure plugin that motivates your customers to add more items to their cart by showing them how close they are to unlocking a *surprise reward*\u2014 such as a discount, free shipping, or free products.","assets_banners_color":"313d4b","last_updated":"2026-01-14 12:31:14","external_support_url":"","external_repository_url":"","donate_link":"","header_plugin_uri":"","header_author_uri":"https:\/\/mrymnoor567.github.io\/themaryam\/","rating":0,"author_block_rating":0,"active_installs":0,"downloads":174,"num_ratings":0,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":{"1.0.1":{"tag":"1.0.1","author":"maryamnoor00","date":"2025-12-05 20:18:07"},"1.0.2":{"tag":"1.0.2","author":"maryamnoor00","date":"2026-01-14 12:31:14"}},"upgrade_notice":{"1.0.1":"<p>First stable release \u2014 adds full WooCommerce reward system with progress bar and WhatsApp integration.<\/p>\n\n<hr \/>"},"ratings":[],"assets_icons":{"icon-128x128.png":{"filename":"icon-128x128.png","revision":3412590,"resolution":"128x128","location":"assets","locale":""},"icon-256x256.png":{"filename":"icon-256x256.png","revision":3412590,"resolution":"256x256","location":"assets","locale":""}},"assets_banners":{"banner-1544x500.png":{"filename":"banner-1544x500.png","revision":3412590,"resolution":"1544x500","location":"assets","locale":""},"banner-772x250.png":{"filename":"banner-772x250.png","revision":3412590,"resolution":"772x250","location":"assets","locale":""}},"assets_blueprints":{},"all_blocks":[],"tagged_versions":["1.0.1","1.0.2"],"block_files":[],"assets_screenshots":{"screenshot-1.png":{"filename":"screenshot-1.png","revision":3428096,"resolution":"1","location":"assets","locale":""},"screenshot-2.png":{"filename":"screenshot-2.png","revision":3428096,"resolution":"2","location":"assets","locale":""},"screenshot-3.png":{"filename":"screenshot-3.png","revision":3428096,"resolution":"3","location":"assets","locale":""}},"screenshots":{"1":"<p><strong>Settings Page \u2013 Messages &amp; Labels Tab<\/strong><br \/>\nCustomize messages shown before and after unlocking rewards.<\/p>","2":"<p><strong>Cart Page \u2013 Progress Bar Display<\/strong><br \/>\nShows a visual progress indicator with remaining amount until a surprise reward is unlocked.<\/p>","3":"<p><strong>Cart Totals \u2013 Surprise Discount Applied<\/strong><br \/>\nDisplays a surprise discount line below subtotal and total once threshold is met.<\/p>"},"jetpack_post_was_ever_published":false},"plugin_section":[],"plugin_tags":[251753,331,294,52402,286],"plugin_category":[45],"plugin_contributors":[247766],"plugin_business_model":[],"class_list":["post-260284","plugin","type-plugin","status-publish","hentry","plugin_tags-cart-progress-bar","plugin_tags-discount","plugin_tags-rewards","plugin_tags-surprise","plugin_tags-woocommerce","plugin_category-ecommerce","plugin_contributors-maryamnoor00","plugin_committers-maryamnoor00"],"banners":{"banner":"https:\/\/ps.w.org\/shopper-rewards\/assets\/banner-772x250.png?rev=3412590","banner_2x":"https:\/\/ps.w.org\/shopper-rewards\/assets\/banner-1544x500.png?rev=3412590","banner_rtl":false,"banner_2x_rtl":false},"icons":{"svg":false,"icon":"https:\/\/ps.w.org\/shopper-rewards\/assets\/icon-128x128.png?rev=3412590","icon_2x":"https:\/\/ps.w.org\/shopper-rewards\/assets\/icon-256x256.png?rev=3412590","generated":false},"screenshots":[{"src":"https:\/\/ps.w.org\/shopper-rewards\/assets\/screenshot-1.png?rev=3428096","caption":"<p><strong>Settings Page \u2013 Messages &amp; Labels Tab<\/strong><br \/>\nCustomize messages shown before and after unlocking rewards.<\/p>"},{"src":"https:\/\/ps.w.org\/shopper-rewards\/assets\/screenshot-2.png?rev=3428096","caption":"<p><strong>Cart Page \u2013 Progress Bar Display<\/strong><br \/>\nShows a visual progress indicator with remaining amount until a surprise reward is unlocked.<\/p>"},{"src":"https:\/\/ps.w.org\/shopper-rewards\/assets\/screenshot-3.png?rev=3428096","caption":"<p><strong>Cart Totals \u2013 Surprise Discount Applied<\/strong><br \/>\nDisplays a surprise discount line below subtotal and total once threshold is met.<\/p>"}],"raw_content":"<!--section=description-->\n<p><strong>Shopper Rewards<\/strong> is a lightweight and secure plugin that motivates your customers to add more items to their cart by showing them how close they are to unlocking a <em>surprise reward<\/em> \u2014 such as a discount, free shipping, or free products.<\/p>\n\n<p>This plugin seamlessly integrates with the cart, checkout, and thank-you pages, offering a dynamic experience that boosts conversions and customer engagement.<\/p>\n\n<h3>\u2728 Features<\/h3>\n\n<ul>\n<li><strong>Dynamic Progress Bar<\/strong> \u2013 Displays how much more the customer needs to spend to unlock a reward.  <\/li>\n<li><strong>Surprise Discount or Free Shipping<\/strong> \u2013 Automatically apply or show a reward once the spending threshold is reached.  <\/li>\n<li><strong>Custom Messages &amp; Labels<\/strong> \u2013 Fully customizable messages before and after the unlock.  <\/li>\n<li><strong>Thank-You Page Integration<\/strong> \u2013 Show personalized badges or WhatsApp contact buttons after checkout.  <\/li>\n<li><strong>Responsive &amp; Lightweight<\/strong> \u2013 100% responsive design with no unnecessary bloat.  <\/li>\n<li><strong>Secure &amp; Compatible<\/strong> \u2013 Built following WordPress and WooCommerce coding standards.<\/li>\n<\/ul>\n\n<h3>\ud83c\udfaf Purpose<\/h3>\n\n<p>The goal of Shopper Rewards is to <strong>increase average order value (AOV)<\/strong> by motivating users to reach a target threshold in their shopping cart.<br \/>\nOnce a customer adds enough items to meet the target, they instantly unlock a <em>surprise reward<\/em>, creating a fun and rewarding shopping experience.<\/p>\n\n\n\n<h3>Security Notes<\/h3>\n\n<ul>\n<li>All user inputs are sanitized using WordPress functions (<code>sanitize_text_field<\/code>, <code>esc_html<\/code>, <code>esc_attr<\/code>, <code>wp_kses_post<\/code>).<\/li>\n<li>Nonces are used for form submissions to prevent CSRF attacks.<\/li>\n<li>Proper escaping and translation functions (<code>esc_html__<\/code>, <code>esc_attr__<\/code>, etc.) are used throughout.<\/li>\n<li>No external API calls or user data tracking is performed.<\/li>\n<\/ul>\n\n\n\n<h3>Credits<\/h3>\n\n<p>Developed by <strong>Maryam Kamal<\/strong><br \/>\nA learning project focused on practical WooCommerce plugin development and security best practices.<\/p>\n\n<!--section=installation-->\n<ol>\n<li>Upload the plugin folder to <code>\/wp-content\/plugins\/shopper-rewards\/<\/code><\/li>\n<li>Activate the plugin through the <em>Plugins<\/em> menu in WordPress.<\/li>\n<li>Go to <strong>WooCommerce \u2192 Shopper Rewards Settings<\/strong> to configure your threshold, reward type, and display options.<\/li>\n<li>Set your custom messages, labels, and progress bar styles.<\/li>\n<\/ol>\n\n<!--section=faq-->\n<dl>\n<dt id='does%20this%20plugin%20work%20with%20any%20theme%3F'><h3>Does this plugin work with any theme?<\/h3><\/dt>\n<dd><p>Yes, Shopper Rewards uses flexible WooCommerce hooks and fallback display methods to ensure compatibility with most WooCommerce-ready themes.<\/p><\/dd>\n<dt id='can%20i%20customize%20the%20messages%3F'><h3>Can I customize the messages?<\/h3><\/dt>\n<dd><p>Absolutely. All messages (before unlock, after unlock, labels, etc.) can be customized from the plugin\u2019s <strong>Messages &amp; Labels<\/strong> settings tab.<\/p><\/dd>\n<dt id='how%20are%20rewards%20applied%3F'><h3>How are rewards applied?<\/h3><\/dt>\n<dd><p>You can set rewards as free shipping, percentage-based discounts, or custom messages shown at checkout.<\/p><\/dd>\n<dt id='does%20it%20support%20translation%3F'><h3>Does it support translation?<\/h3><\/dt>\n<dd><p>Yes. The plugin is translation-ready and follows WordPress i18n standards. Place your <code>.po<\/code> and <code>.mo<\/code> files in the <code>\/languages\/<\/code> folder.<\/p><\/dd>\n<dt id='is%20it%20secure%20for%20production%20sites%3F'><h3>Is it secure for production sites?<\/h3><\/dt>\n<dd><p>Yes, the plugin follows all WordPress Plugin Security Guidelines \u2014 including proper escaping, sanitization, and nonces for safe data handling.<\/p>\n\n<\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>1.0.2<\/h4>\n\n<ul>\n<li>Initial release<\/li>\n<li>Added dynamic progress bar on cart page<\/li>\n<li>Added customizable messages and labels<\/li>\n<li>Added thank-you WhatsApp badge integration<\/li>\n<li>Fully compatible with WordPress 6.7 &amp; WooCommerce 9.x<\/li>\n<li>Security hardened following WordPress coding standards<\/li>\n<\/ul>","raw_excerpt":"A simple and elegant WooCommerce rewards plugin that adds a dynamic progress bar, discount rewards, and badges on the cart and checkout pages.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/scn.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/260284","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/scn.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/scn.wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/scn.wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=260284"}],"author":[{"embeddable":true,"href":"https:\/\/scn.wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/maryamnoor00"}],"wp:attachment":[{"href":"https:\/\/scn.wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=260284"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/scn.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=260284"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/scn.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=260284"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/scn.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=260284"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/scn.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=260284"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/scn.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=260284"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}