=== Contact Buttons by WebAdis ===
Contributors: adityapaul
Tags: whatsapp, contact button, floating button, click to chat, call button
Requires at least: 6.2
Tested up to: 7.0
Requires PHP: 8.0
Stable tag: 1.0.0
License: GPLv2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html

Lightweight floating contact button bar with 20+ channels, display rules, scheduling and client-side click tracking.

== Description ==

**Contact Buttons by WebAdis** adds a fast, accessible floating contact widget to your WordPress site. Visitors can reach you instantly through WhatsApp, Phone, SMS, Email, Telegram, Messenger and many more channels — from a single expandable button or one direct button.

Built to be light and cache-friendly: assets load only on pages where the widget is allowed to appear, the markup is fully escaped and accessible, and the plugin never sends data to any external server.

Learn more and view documentation at [WebAdis.com](https://www.webadis.com).

**Key Features**

* 20+ contact channels: WhatsApp, Phone, SMS, Email, Telegram, Messenger, Instagram, Facebook, LinkedIn, X (Twitter), Pinterest, YouTube, Skype, Discord, Slack, Line, Viber, Signal, WeChat, Custom URL and Custom Button.
* Single-button or multi-button (expandable menu) display modes.
* Full appearance control: position, shape, size, colors, spacing, animation, opacity, call-to-action bubble and per-channel labels.
* Display rules by page type, specific URL paths (with wildcards), login state and user role.
* Device and schedule rules that run in the browser — compatible with page caching plugins.
* Client-side click tracking for Google Analytics 4, Google Tag Manager, Meta Pixel and a generic dataLayer.
* Live preview in the admin panel with a desktop/mobile toggle.
* Import and export settings as JSON, plus one-click reset to defaults.
* Accessible markup: keyboard support, focus styles, ARIA roles, screen-reader labels, reduced-motion and high-contrast support.
* Translation ready.
* No jQuery dependency. No external requests.

**Privacy**

This plugin does not collect, store or transmit any personal data. Optional click-tracking events are dispatched only to analytics libraries (gtag, dataLayer, fbq) already installed on your site.

== Installation ==

1. Upload the `contact-buttons-by-webadis` folder to the `/wp-content/plugins/` directory, or install directly through the WordPress Plugins screen.
2. Activate the plugin through the **Plugins** screen in WordPress.
3. Go to **Contact Buttons** in the WordPress admin menu.
4. Add one or more channels under the **Buttons** tab and enter your contact details (for example, your WhatsApp number with country code).
5. Adjust the appearance under the **Appearance** tab, set any display rules under **Display Rules**, then click **Save changes**.

== Frequently Asked Questions ==

= Which number format should I use for WhatsApp? =

Enter the full international number using digits only, including the country code — for example `15551234567`. Do not add a "+", spaces or dashes.

= Does the widget work with caching plugins? =

Yes. Page-level rules (page type, URL, login state, role) are evaluated on the server, while visitor-level rules (device type and schedule) run in the browser. This means the widget behaves correctly even when pages are served from cache.

Note: if your full-page cache serves identical HTML to logged-in and logged-out visitors, login-state and role rules may not apply correctly on cached pages.

= Will it slow down my site? =

No. The CSS and JavaScript files are small and load only on pages where the widget is allowed to display. There is no jQuery dependency and no external network request.

= Does the plugin send any data to WebAdis? =

No. The plugin makes no external requests of its own. Tracking events, if enabled, are sent only to the analytics tools already running on your site (such as Google Analytics or Meta Pixel).

= Can I show the widget on specific pages only? =

Yes. You can target by page type, specific URL paths (with `*` wildcards), login state, user role, device type and schedule. A single widget configuration is supported in this version.

= Is the plugin translation ready? =

Yes. All user-facing strings are wrapped in WordPress translation functions with the text domain `contact-buttons-by-webadis`.

== Screenshots ==

1. The floating multi-button widget on the frontend.
2. The settings screen with live preview.
3. Display rules including device, role and schedule targeting.
4. Per-channel button configuration.

== Changelog ==

= 1.0.0 =
* Initial release: 20+ channels, single/multi display modes, full appearance controls, display rules (page type, URL, login state, role, device, schedule), client-side click tracking, import/export settings, live preview, full output escaping and accessibility support.

== Upgrade Notice ==

= 1.0.0 =
Initial release. No upgrade steps required.

== Privacy Policy ==

Contact Buttons by WebAdis does not collect, store or transmit any personal data to WebAdis or any third party.

The plugin does not set cookies, make external HTTP requests, or log visitor information. Optional click-tracking events (for Google Analytics 4, Google Tag Manager or Meta Pixel) are dispatched entirely within the visitor's browser using analytics libraries you have already installed and configured on your site. No data is sent to WebAdis as part of this process.

For information about the data collected by third-party analytics tools, please refer to the privacy policies of those services.
