{"id":345850,"date":"2026-07-31T10:15:48","date_gmt":"2026-07-31T10:15:48","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/social-buttons-for-products-grc\/"},"modified":"2026-08-21T10:24:20","modified_gmt":"2026-08-21T10:24:20","slug":"grc-contact-buttons-for-woocommerce","status":"publish","type":"plugin","link":"https:\/\/pcd.wordpress.org\/plugins\/grc-contact-buttons-for-woocommerce\/","author":13210680,"comment_status":"closed","ping_status":"closed","template":"","meta":{"version":"2.4.2","stable_tag":"2.4.2","tested":"7.1","requires":"6.0","requires_php":"7.4","requires_plugins":null,"header_name":"GRC Contact Buttons + Universal Tracker","header_author":"Robert G.","header_description":"Adds contact buttons (Facebook, WhatsApp, TikTok, Phone, Email, Viber, Telegram, Instagram) to the product page of a WooCommerce-based online store. Messages automatically include the product name and page link. Full settings from the dashboard.","assets_banners_color":"eef5fd","last_updated":"2026-08-21 10:24:20","external_support_url":"","external_repository_url":"","donate_link":"","header_plugin_uri":"","header_author_uri":"","rating":0,"author_block_rating":0,"active_installs":0,"downloads":147,"num_ratings":0,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":{"1.3.1":{"tag":"1.3.1","author":"robertutzu","date":"2026-07-31 10:15:12"},"2.4.1":{"tag":"2.4.1","author":"robertutzu","date":"2026-08-21 09:35:21"},"2.4.2":{"tag":"2.4.2","author":"robertutzu","date":"2026-08-21 10:24:20"}},"upgrade_notice":{"2.4.1":"<p>Critical fix for fatal error + new premium icons and pill-shaped buttons. Update immediately if 2.4.0 crashed.<\/p>","2.4.0":"<p>Major update: Source column (Facebook\/Google Ads\/UTM tracking) + Top Sources report. DB will auto-migrate, no data loss.<\/p>","2.2.0":"<p>Now you can disable buttons and use only tracking, or vice versa. Check Contact Tracker &gt; Settings after update.<\/p>","Can I change the text display on the buttons?":"<p>Yes, every channel has an editable &quot;Button text&quot; field in the settings so you can customize or translate it however you want.<\/p>"},"ratings":[],"assets_icons":{"icon-128x128.png":{"filename":"icon-128x128.png","revision":3658701,"resolution":"128x128","location":"assets","locale":"","width":128,"height":128},"icon-256x256.png":{"filename":"icon-256x256.png","revision":3658701,"resolution":"256x256","location":"assets","locale":"","width":256,"height":256},"icon-512x512.png":{"filename":"icon-512x512.png","revision":3658701,"resolution":"512x512","location":"assets","locale":"","width":512,"height":512}},"assets_banners":{"banner-1544x500.png":{"filename":"banner-1544x500.png","revision":3658678,"resolution":"1544x500","location":"assets","locale":"","width":1544,"height":500},"banner-772x250.png":{"filename":"banner-772x250.png","revision":3658678,"resolution":"772x250","location":"assets","locale":"","width":772,"height":250}},"assets_blueprints":{},"all_blocks":[],"tagged_versions":["1.3.1","2.4.1","2.4.2"],"block_files":[],"assets_screenshots":{"screenshot-1.png":{"filename":"screenshot-1.png","revision":3658678,"resolution":"1","location":"assets","locale":"","width":1280,"height":720},"screenshot-2.png":{"filename":"screenshot-2.png","revision":3658678,"resolution":"2","location":"assets","locale":"","width":1280,"height":720}},"screenshots":{"1":"Dashboard with universal stats + Source column (Facebook\/Google Ads detection)","2":"Top Traffic Sources report","3":"Daily evolution chart with stacked colors","4":"Modern pill-shaped contact buttons on product page with premium icons","5":"Settings page - enable\/disable modules","6":"Social Buttons settings per channel"}},"plugin_section":[],"plugin_tags":[5375,276806,3093,276805,286],"plugin_category":[42,45],"plugin_contributors":[162797],"plugin_business_model":[],"class_list":["post-345850","plugin","type-plugin","status-publish","hentry","plugin_tags-click-tracking","plugin_tags-soacial-tracker","plugin_tags-social-buttons","plugin_tags-track-contact","plugin_tags-woocommerce","plugin_category-contact-forms","plugin_category-ecommerce","plugin_contributors-robertutzu","plugin_committers-robertutzu"],"banners":{"banner":"https:\/\/ps.w.org\/grc-contact-buttons-for-woocommerce\/assets\/banner-772x250.png?rev=3658678","banner_2x":"https:\/\/ps.w.org\/grc-contact-buttons-for-woocommerce\/assets\/banner-1544x500.png?rev=3658678","banner_rtl":false,"banner_2x_rtl":false},"icons":{"svg":false,"icon":"https:\/\/ps.w.org\/grc-contact-buttons-for-woocommerce\/assets\/icon-128x128.png?rev=3658701","icon_2x":"https:\/\/ps.w.org\/grc-contact-buttons-for-woocommerce\/assets\/icon-256x256.png?rev=3658701","generated":false},"screenshots":[{"src":"https:\/\/ps.w.org\/grc-contact-buttons-for-woocommerce\/assets\/screenshot-1.png?rev=3658678","caption":"Dashboard with universal stats + Source column (Facebook\/Google Ads detection)"},{"src":"https:\/\/ps.w.org\/grc-contact-buttons-for-woocommerce\/assets\/screenshot-2.png?rev=3658678","caption":"Top Traffic Sources report"}],"raw_content":"<!--section=description-->\n<p><strong>GRC Contact Buttons + Universal Tracker<\/strong> is the all-in-one solution for WooCommerce stores that want both beautiful contact buttons AND complete analytics.<\/p>\n\n<p><strong>2 plugins in 1:<\/strong><\/p>\n\n<ol>\n<li><strong>Contact Buttons<\/strong> on WooCommerce product pages (Facebook Messenger, WhatsApp, TikTok, Phone, Email, Viber, Telegram, Instagram)<\/li>\n<li><strong>Universal Click &amp; Form Tracker<\/strong> for the ENTIRE site - tracks every contact link regardless of where it is (header, footer, widgets, product page)<\/li>\n<\/ol>\n\n<p><strong>What's new in 2.4.x:<\/strong><\/p>\n\n<ul>\n<li>\u2705 <strong>Source column<\/strong> - Automatically detects traffic source: <code>fbclid<\/code> = Facebook, <code>gclid<\/code>\/<code>gad_source<\/code> = Google Ads, <code>utm_source<\/code>\/<code>utm_medium<\/code>\/<code>utm_campaign<\/code>, referrer domain<\/li>\n<li>\u2705 <strong>Beautiful new icons<\/strong> - Official brand logos, pill-shaped buttons (999px radius), hover effects, shadows - looks premium<\/li>\n<li>\u2705 <strong>Modular<\/strong> - You can enable ONLY tracking without buttons, or ONLY buttons without tracking (Contact Tracker &gt; Settings)<\/li>\n<li>\u2705 <strong>Universal tracking<\/strong> - Tracks ALL <code>tel:<\/code>, <code>mailto:<\/code>, <code>wa.me<\/code>, <code>m.me\/<\/code>, <code>t.me\/<\/code>, <code>viber:\/\/<\/code>, <code>ig.me\/m\/<\/code>, <code>tiktok.com<\/code> links from anywhere on site, not just product buttons<\/li>\n<li>\u2705 <strong>All forms tracking<\/strong> - CF7, WPForms, Gravity Forms, Fluent Forms, Elementor Forms, Ninja Forms, Formidable, WS Form, generic HTML forms, WooCommerce checkout - only successful submissions<\/li>\n<\/ul>\n\n<p><strong>Features:<\/strong><\/p>\n\n<ul>\n<li>Independent enable\/disable toggle for each contact channel<\/li>\n<li>For each channel you can set recipient (phone number, username, or email address)<\/li>\n<li>Default message configurable per channel with placeholders <code>{product}<\/code> and <code>{link}<\/code> - automatically replaced with product name and URL<\/li>\n<li>Built-in premium SVG icons for each channel, no external dependencies<\/li>\n<li>Modern pill-shaped buttons with shadows and hover animations<\/li>\n<li>Dashboard with monthly stats: Contact Tracker &gt; Dashboard<\/li>\n<li>Daily evolution chart, Top numbers\/emails\/forms, Last 150 events with Source column<\/li>\n<li>Top Traffic Sources report (Facebook \/ Google Ads \/ UTM)<\/li>\n<li>All settings managed from Contact Tracker &gt; Settings and Settings &gt; Social Buttons<\/li>\n<li>Tracking works even if button is disabled - universal site-wide detection<\/li>\n<\/ul>\n\n<p><strong>Use cases:<\/strong><\/p>\n\n<ul>\n<li><strong>Only tracking:<\/strong> Disable buttons display and keep tracking enabled - perfect for stats only<\/li>\n<li><strong>Only buttons:<\/strong> Enable buttons, disable tracking - no DB storage<\/li>\n<li><strong>Everything:<\/strong> Keep all 3 modules enabled (recommended)<\/li>\n<\/ul>\n\n<p>This plugin requires WooCommerce only if you enable product page buttons. Tracking works without WooCommerce.<\/p>\n\n<!--section=installation-->\n<ol>\n<li>Upload the <code>grc-contact-buttons-tracker<\/code> folder to <code>\/wp-content\/plugins\/<\/code> directory, or install the zip archive directly from Plugins &gt; Add New &gt; Upload Plugin.<\/li>\n<li>Activate the plugin through the 'Plugins' menu in WordPress.<\/li>\n<li>Go to Contact Tracker &gt; Settings and choose which modules you want (buttons, click tracking, form tracking)<\/li>\n<li>Go to Settings &gt; Social Buttons (or Contact Tracker &gt; Social Buttons) and configure channels you want (enable, recipient, message)<\/li>\n<li>Buttons will automatically appear on every WooCommerce product page if enabled<\/li>\n<li>Tracking starts immediately for all contact links and forms - check Contact Tracker &gt; Dashboard<\/li>\n<\/ol>\n\n<!--section=faq-->\n<dl>\n<dt id=\"does%20the%20plugin%20work%20without%20woocommerce%3F\"><h3>Does the plugin work without WooCommerce?<\/h3><\/dt>\n<dd><p>Yes for tracking! Universal click tracking and form tracking work without WooCommerce. Product page buttons require WooCommerce. You can disable buttons and use only tracking if you don't have WooCommerce.<\/p><\/dd>\n<dt id=\"can%20i%20use%20only%20tracking%20without%20buttons%3F\"><h3>Can I use only tracking without buttons?<\/h3><\/dt>\n<dd><p>Yes! Go to Contact Tracker &gt; Settings and disable the product contact buttons toggle while keeping click tracking and form tracking enabled. Perfect if you only want analytics.<\/p><\/dd>\n<dt id=\"what%20does%20source%20column%20track%3F\"><h3>What does Source column track?<\/h3><\/dt>\n<dd><p>The plugin automatically detects:<\/p>\n\n<ul>\n<li><code>utm_source<\/code>, <code>utm_medium<\/code>, <code>utm_campaign<\/code> from URL<\/li>\n<li><code>fbclid<\/code> parameter = Facebook \/ cpc<\/li>\n<li><code>gclid<\/code>, <code>gbraid<\/code>, <code>wbraid<\/code>, <code>gad_source<\/code> = Google \/ cpc (Google Ads)<\/li>\n<li><code>srsltid<\/code> = Google \/ organic<\/li>\n<li>Referrer domain (facebook.com, google, instagram.com, etc)<\/li>\n<li>Fallback to Direct if no source found<\/li>\n<\/ul>\n\n<p>Works for old data too - it parses page_url for fbclid\/gclid even if utm columns are empty.<\/p><\/dd>\n<dt id=\"does%20the%20prefilled%20message%20work%20on%20every%20channel%3F\"><h3>Does the prefilled message work on every channel?<\/h3><\/dt>\n<dd><p>WhatsApp, Viber, Telegram, and Email prefill the message directly in the link. Facebook Messenger (m.me\/USERNAME?text=...) supports pre-filling officially but Meta doesn't guarantee it works on every device. TikTok and Instagram do not allow prefilling due to platform restrictions; the configured text is shown as tooltip instead.<\/p><\/dd>\n<dt id=\"can%20i%20change%20the%20text%20displayed%20on%20the%20buttons%3F\"><h3>Can I change the text displayed on the buttons?<\/h3><\/dt>\n<dd><p>Yes, every channel has editable \"Button text\" field. Translate or customize as you like.<\/p><\/dd>\n<dt id=\"which%20forms%20are%20tracked%3F\"><h3>Which forms are tracked?<\/h3><\/dt>\n<dd><p>Server-side: Contact Form 7 (wpcf7_mail_sent), WPForms (wpforms_process_complete), Gravity Forms (gform_after_submission), Fluent Forms (fluentform_submission_inserted), Elementor Pro Forms (elementor_pro\/forms\/new_record), Ninja Forms, Formidable Forms, WS Form\nClient-side JS: wpcf7mailsent, wpformsAjaxSubmitCompleted, elementor-pro\/forms\/success, fluentform_submission_success, gform_confirmation_loaded\nGeneric: Add <code>data-cct-track=\"Form Name\"<\/code> attribute to any  tag and it will be tracked on successful submit.<\/p><\/dd>\n<dt id=\"does%20tracking%20respect%20gdpr%3F\"><h3>Does tracking respect GDPR?<\/h3><\/dt>\n<dd><p>The plugin stores only event type (tel, whatsapp, etc), event value (phone number or form title), page URL, referrer, and UTM source. No personal data from visitors is stored. IP is not stored. For full GDPR compliance, mention it in your privacy policy.<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>2.4.1<\/h4>\n\n<ul>\n<li>FIX: Fixed fatal error from SVG concatenation and onmouseover inline handlers - plugin no longer crashes<\/li>\n<li>NEW: Beautiful premium icons - official brand logos (Facebook, WhatsApp, TikTok, Phone, Email, Viber, Telegram, Instagram) with 20px size<\/li>\n<li>NEW: Pill-shaped buttons (border-radius: 999px) with shadows, hover animation translateY(-2px), font-weight 600<\/li>\n<li>NEW: Button styles moved to wp_head for clean CSS, no inline JS<\/li>\n<li>Improved: Better color palette (Messenger #0084FF, Telegram #26A5E4, Instagram #E4405F)<\/li>\n<\/ul>\n\n<h4>2.4.0<\/h4>\n\n<ul>\n<li>NEW: Source column in dashboard - automatically detects fbclid (Facebook), gclid\/gad_source (Google Ads), utm_source\/medium\/campaign, referrer domain<\/li>\n<li>NEW: Top Traffic Sources report (Top 10 sources for current month)<\/li>\n<li>NEW: New DB columns referer_url, utm_source, utm_medium, utm_campaign - auto migration via dbDelta and ALTER TABLE<\/li>\n<li>NEW: Tracking script now sends document.referrer + UTM params via REST API and Beacon API<\/li>\n<li>Improved: Old data backward compatible - source detected from page_url query params even if UTM columns empty<\/li>\n<\/ul>\n\n<h4>2.3.0<\/h4>\n\n<ul>\n<li>NEW: Universal tracking now captures referrer URL<\/li>\n<li>NEW: Dashboard shows Source badge with color coding (Facebook blue #1877F2, Google blue #4285F4, etc)<\/li>\n<li>NEW: Last 150 events table now has 5 columns: Data, Tip, Valoare, Sursa, Pagina<\/li>\n<\/ul>\n\n<h4>2.2.0<\/h4>\n\n<ul>\n<li>NEW: Modular system - Contact Tracker &gt; Settings with 3 toggles: buttons_enabled, click_tracking_enabled, form_tracking_enabled<\/li>\n<li>You can now use ONLY tracking without buttons or ONLY buttons without tracking<\/li>\n<li>NEW: Comprehensive form tracking - CF7, WPForms, Gravity, Fluent, Elementor, Ninja, Formidable, WS Form, generic forms, WooCommerce checkout<\/li>\n<li>Both server-side hooks and client-side JS events for reliable tracking<\/li>\n<\/ul>\n\n<h4>2.1.0<\/h4>\n\n<ul>\n<li>NEW: Combined 2 plugins into 1 - GRC Contact Buttons + Click &amp; Contact Tracker<\/li>\n<li>NEW: Universal tracking for ALL contact links site-wide, not just product buttons<\/li>\n<li>Tracking selector now includes tel:, mailto:, wa.me, api.whatsapp.com, m.me\/, t.me\/, viber:\/\/, ig.me\/m\/, tiktok.com, facebook.com<\/li>\n<\/ul>\n\n<h4>1.3.1<\/h4>\n\n<ul>\n<li>Facebook Messenger links now prefill the message via official text parameter (m.me\/USERNAME?text=...)<\/li>\n<li>Verified and documented which channels genuinely support message pre-filling<\/li>\n<\/ul>\n\n<h4>1.3<\/h4>\n\n<ul>\n<li>Added editable \"Button text\" field for every channel<\/li>\n<li>Removed automatic locale-based label translation<\/li>\n<\/ul>\n\n<h4>1.2<\/h4>\n\n<ul>\n<li>Full English translation of all plugin strings<\/li>\n<li>Removed hardcoded default recipient values<\/li>\n<li>Renamed placeholders from {produs}\/{link} to {product}\/{link}<\/li>\n<\/ul>\n\n<h4>1.1.1<\/h4>\n\n<ul>\n<li>Fixed unescaped output flagged by Plugin Check tool<\/li>\n<li>Renamed main class to avoid collisions<\/li>\n<\/ul>\n\n<h4>1.1<\/h4>\n\n<ul>\n<li>Renamed plugin to avoid restricted \"woocommerce\" term<\/li>\n<\/ul>\n\n<h4>1.0.0<\/h4>\n\n<ul>\n<li>First public release - Facebook Messenger, WhatsApp, TikTok, Phone, Email, Viber, Telegram, Instagram support<\/li>\n<\/ul>","raw_excerpt":"Track EVERY contact click + form submission + traffic source. Buttons for WooCommerce product pages + universal tracking for entire site.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/pcd.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/345850","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=345850"}],"author":[{"embeddable":true,"href":"https:\/\/pcd.wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/robertutzu"}],"wp:attachment":[{"href":"https:\/\/pcd.wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=345850"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/pcd.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=345850"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/pcd.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=345850"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/pcd.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=345850"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/pcd.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=345850"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/pcd.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=345850"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}