TalaDesk

Description

TalaDesk adds a polished floating call-to-action button to your WordPress site, making it effortless for visitors to reach you on WhatsApp.

Why TalaDesk?

Most CTA plugins overload your site with JavaScript frameworks and tracking scripts. TalaDesk is different — it’s a single lightweight button with pure CSS, no dependencies, and by default makes zero external requests. Your page stays fast and your visitors’ privacy is respected. The only exception is the optional “TalaDesk Account” tab (see FAQ), which is off unless you explicitly connect a paid TalaDesk account.

Features

  • One-click WhatsApp chat button
  • Customizable icon color, text color, and background color
  • Customizable button text and optional hover text
  • Position: bottom-right or bottom-left, with adjustable pixel distance from bottom and side edges
  • Availability scheduling — choose the days of the week and hours the button appears (overnight hours supported)
  • Public holidays — pick your country (Australia, Canada, Ireland, Kenya, Nigeria, South Africa, United Kingdom — by state/province/nation where holidays differ) and the chat closes on its public holidays automatically; untick any you stay open on
  • Closures & special hours — add one-off or yearly closed dates/times, or special opening hours (e.g. closing early on Christmas Eve)
  • Closed state — while closed, hide the button or show a closed version with its own text and colors (“Merry Christmas! Back Monday 9:00 am”), optionally still opening WhatsApp so visitors can leave a message
  • Works with page caching — the open/closed state is checked in the visitor’s browser
  • Display rules: all pages, homepage, posts, pages, or exclude front page
  • Lightweight — pure CSS, no framework bloat
  • SEO-friendly semantic markup with ARIA labels
  • No external data collection or tracking by default
  • Optional: connect a paid TalaDesk account to configure message-sending (off unless you explicitly connect one)
  • Optional (requires WooCommerce): send a TalaDesk message automatically when an order changes status
  • Optional (requires WooCommerce + a connected TalaDesk account): let customers opt in to WhatsApp order-status updates at checkout

Looking for more?

A separate premium product at taladesk.com offers additional messaging services, click analytics, and advanced display rules. It is a standalone product and is not required to use this plugin — every feature listed above is fully functional and free.

How It Works

  1. Install and activate TalaDesk.
  2. Go to the TalaDesk menu in your admin sidebar.
  3. Enter your phone number (with country code).
  4. Customize colors, text, and position.
  5. Done — the button appears on every page (or as configured).

Screenshots

Installation

From the WordPress dashboard:

  1. Go to Plugins > Add New.
  2. Search for “TalaDesk”.
  3. Click Install Now, then Activate.
  4. Go to the TalaDesk menu in your admin sidebar to configure.

Manual installation:

  1. Upload the taladesk folder to /wp-content/plugins/.
  2. Activate through the Plugins screen.
  3. Configure under the TalaDesk menu in your admin sidebar.

FAQ

What information does TalaDesk collect?

By default, nothing. TalaDesk does not collect personal data, track visitors, or contact external servers. All settings are stored in your WordPress options table. The optional click counter lives in the browser’s sessionStorage only — it is never transmitted anywhere. The one exception is the optional “TalaDesk Account” tab — see the next question.

What is the TalaDesk Account feature?

An optional integration for site owners who have a separate, paid TalaDesk SaaS account. It requires you to explicitly enter your TalaDesk domain and OAuth Client ID/Secret and click “Connect” — nothing is contacted until you do this. Once connected, the plugin contacts your TalaDesk domain to exchange your credentials for an access token and to fetch the list of available messaging sources and channels, so you can select which one this site should use. Your Client Secret is stored in your WordPress options table in plaintext, the same as every other setting on this page — protecting your database is the same responsibility as with any other WordPress credential storage. This feature has no effect on the free CTA button, which keeps working exactly as before whether or not you connect an account. If you also use WooCommerce, connecting an account unlocks the “TalaDesk Messaging” rules feature — see the next question.

What is WooCommerce Order Messaging?

An optional feature, visible under WooCommerce > TalaDesk Messaging, available once a TalaDesk Account is connected. It lets you create rules that send a TalaDesk message when a WooCommerce order changes from one status to another (e.g. “pending” to “processing”), using a template from your TalaDesk account with WooCommerce order/customer data (name, email, order number, etc.) mapped into the template’s placeholders. This only fires when a rule you’ve configured matches an order’s status change — it makes no external requests otherwise, and has no effect on any other part of the plugin.

What is the WhatsApp checkout opt-in?

An optional feature, off by default, that only appears once you’ve connected a TalaDesk account, chosen a channel, and explicitly enabled it under TalaDesk Account > Checkout Opt-In. When enabled, an unchecked “Send me order updates via WhatsApp” checkbox appears on the WooCommerce checkout page. Checking it reveals an optional WhatsApp number field, for cases where the number to message isn’t the billing phone already entered (e.g. ordering for a branch but wanting updates on a personal phone) — leaving it blank just uses the billing phone. Checking the box stores a flag (and number, if given) against that order only; it makes no external request by itself. That flag is then used by “Customer”-mode TalaDesk Messaging rules (see “What is WooCommerce Order Messaging?” above) to decide whether a given order may be messaged — an order that didn’t opt in is skipped, not messaged, by such rules. “Custom phone number”-mode rules are unaffected by this checkbox either way, since those were never about customer consent.

Which messaging services are supported?

This plugin connects visitors to WhatsApp. Additional services are offered by a separate premium product at taladesk.com.

Can I customize the button colors?

Yes — icon color, text color, and background color are all configurable from the settings page. Each has a color picker with defaults matching the WhatsApp green theme.

What happens when someone clicks the button?

The button opens WhatsApp in a new tab with your pre-filled message (e.g., wa.me/27123456789?text=Hi). The message template is configured in the settings.

How do public holidays work? Does it contact a holiday service?

No. Holiday dates are calculated inside the plugin from rules shipped with it (fixed dates, Easter-based dates, “nth Monday” rules, and each country’s weekend substitute-day rule) — nothing is fetched from the internet. Supported: Australia (by state/territory), Canada (by province/territory), Ireland, Kenya, Nigeria, South Africa, and the United Kingdom (England & Wales, Scotland, Northern Ireland). Each holiday’s next date is shown in the settings so you can check it, and any holiday can be unticked.

Some holidays can’t be calculated and must be added under Closures & Special Hours: holidays whose dates depend on the moon (e.g. Eid in Kenya and Nigeria), days a government declares at short notice (e.g. election days), and holidays set by yearly proclamation or that only apply to part of a state (e.g. WA King’s Birthday, AFL Grand Final Friday). In Canada only holidays that are statutory for the province’s general workforce are included.

Does the schedule work with caching plugins?

Yes. The button’s open/closed state is decided in the visitor’s browser from a schedule embedded in the page, so a page cached during opening hours still shows the closed state after hours (and vice versa). The embedded schedule covers the next 60 days.

Does this work with page builders?

Yes — because TalaDesk hooks into wp_footer, it works with all page builders (Elementor, Beaver Builder, Gutenberg, etc.) and any WordPress theme.

Is TalaDesk GDPR-compliant?

Used purely as the free CTA button, TalaDesk makes zero external requests and sets no cookies. The optional click counter uses the browser’s sessionStorage which is cleared when the tab closes. No consent banner is required for the free CTA. If you explicitly connect the optional TalaDesk Account feature, your entered credentials are sent to the domain you specify — see “What is the TalaDesk Account feature?” above.

Are there additional features available elsewhere?

Yes. taladesk.com offers a separate premium product with extra messaging services and analytics. It is independent of this plugin — nothing in this plugin is locked or disabled.

Reviews

There are no reviews for this plugin.

Contributors & Developers

“TalaDesk” is open source software. The following people have contributed to this plugin.

Contributors

Translate “TalaDesk” into your language.

Interested in development?

Browse the code, check out the SVN repository, or subscribe to the development log by RSS.

Changelog

1.4.0

  • Added: Public holidays — choose a country to close the chat on its public holidays, including weekend substitute days: Australia (by state/territory), Canada (by province/territory), Ireland, Kenya, Nigeria, South Africa, United Kingdom (by nation). Each holiday can be unticked or given its own button text. Calculated locally; no external requests.
  • Added: Closures & Special Hours — one-off or yearly closed periods (whole days or specific times), and special opening hours that replace the normal hours on given dates.
  • Added: When Closed — per reason (outside hours / holidays / closures), hide the button or show a closed button with its own text, colors and pre-filled message. {name} and {reopen} placeholders, e.g. “Closed for Christmas Day — back Monday 9:00 am”. The closed button can be clickable or a message only.
  • Added: Schedule Preview on the settings page — current status and upcoming holidays/closures with exactly what visitors will see.
  • Fixed: Opening hours that run past midnight (e.g. 20:00–02:00) never showed the button.
  • Fixed: With full-page caching, the button’s scheduled visibility was frozen at whatever time the page was cached; the state is now evaluated in the browser and refreshed every minute.
  • Fixed: Invalid active-hours values are now rejected on save instead of stored.
  • Fixed: The click counter no longer throws when browser storage is blocked.
  • Changed: Outside active hours the button is still hidden by default, as before — existing sites see no change until they opt in to the closed button.

1.3.4

  • Added: Adjustable distance from side edge (0–500 px) — fine-tune how far the CTA sits from the left or right edge.
  • Changed: Side offset uses a CSS custom property, consistent at all screen sizes (responsive override removed, same as 1.3.3’s bottom offset).

1.3.3

  • Added: Adjustable distance from bottom edge (0–500 px) — push the CTA button up to clear sticky footers, cookie banners, or other bottom-of-page elements.
  • Changed: Bottom offset now uses a CSS custom property so the user’s chosen value is consistent at every screen size.

1.3.2

  • Added: The WhatsApp checkout opt-in now reveals a WhatsApp number field once checked, pre-filled from the billing phone already entered — edit it if updates should go to a different number (e.g. ordering for a branch but wanting updates on a personal phone).

1.3.1

  • Fixed: TalaDesk_Account_Client now targets the confirmed TalaDesk API contract (source/channel/template lookups and message sending) instead of placeholder endpoint guesses.
  • Changed: Source and Channel are now selected together immediately after connecting an account — channels are account-wide, not filtered by source.
  • Changed: Template placeholder mapping in TalaDesk Messaging rules is now positional (Variable 1, 2, 3…) instead of named, matching the real template contract, which has no named placeholders.

1.3.0

  • Added: Optional “TalaDesk Account” settings tab — connect a paid taladesk.com account via OAuth 2.0 Client Credentials to select a messaging source and channel.
  • Added: TalaDesk_Account_Client — isolated API client for token exchange, source/channel/template lookups, and message sending.
  • Added: Optional “TalaDesk Messaging” rules under WooCommerce (requires WooCommerce) — send a TalaDesk message using a chosen template, with placeholders mapped to order/customer data, when an order transitions between configured statuses.
  • Added: Optional WooCommerce checkout opt-in checkbox (“Send me order updates via WhatsApp”) — off by default, requires a separate admin toggle even when an account is connected; reuses the existing billing phone field, no new phone field added.
  • Changed: Settings page now has WhatsApp CTA / TalaDesk Account tabs.
  • Changed: “Customer”-mode TalaDesk Messaging rules now skip (recorded as a new “Skipped” status, not an error) any order that did not opt in at checkout; “Custom phone number”-mode rules are unaffected.
  • Fixed: The floating CTA button no longer appears on a fresh install before a Recipient ID (phone number) has been configured.
  • Note: All new features are entirely optional and off by default. External requests only occur if configured and used by the site owner; the free CTA button is unaffected either way.

1.2.1

  • Removed: Disabled “service” selector and the non-functional API token field — no locked or disabled UI remains.
  • Removed: Internal pro-gating function and constant; the plugin is fully functional with no license checks.
  • Removed: WordPress.org directory image assets (banner, icon, screenshots) from the plugin package.
  • Changed: Settings page now shows a single, non-intrusive informational note about the separate premium product.
  • Fixed: Inline SVG output now escaped with wp_kses(); removed inline admin JavaScript.

1.2.2

  • Fixed: Phone sanitization now strips + signs (digits only for WhatsApp wa.me compatibility)

1.2.0

  • Removed: Telegram, Messenger, Signal, and SMS code from the free plugin to comply with WordPress.org guidelines (resolved plugin review blocker).
  • Changed: Messaging service selector replaced with a static WhatsApp display.
  • Changed: build_messaging_url() and get_service_icon() simplified to WhatsApp-only.

1.1.4

  • Fixed: Escaped $checked output in active days field
  • Fixed: Removed Update URI header (not permitted on .org)
  • Fixed: Removed load_plugin_textdomain() (auto-loaded for .org)
  • Fixed: Added languages/index.php placeholder so domain path resolves
  • Updated: Tested up to 7.0
  • Updated: Limited readme tags to 5

1.1.3

  • Added: load_plugin_textdomain() call for translation support
  • Added: Update URI header in plugin bootstrap
  • Added: Empty languages/ directory for future .mo files
  • Updated: Screenshots to reflect latest UI

1.1.2

  • Changed: Messaging service dropdown disabled (WhatsApp only in free tier)

1.1.1

  • Added: Purple Pro CTA banner at top of settings page (links to taladesk.com/#contact)
  • Updated: Token field description shortened (CTA moved to top banner)

1.1.0

  • Added: Master active toggle to turn CTA on/off
  • Added: Business hours scheduling (day-of-week checkboxes + time range)
  • Added: taladesk.com token field (greyed out, for future Pro API linking)

1.0.3

  • Fixed: Admin menu icon resized to 20×20 (was displaying huge)

1.0.2

  • Changed: Admin menu icon switched to custom PNG icon

1.0.1

  • Fixed: Hover text swap not working (JS ran before CTA rendered in DOM)
  • Fixed: Removed line-number artifacts that broke CSS and PHP
  • Removed: Username field (Telegram/Messenger no longer configurable)
  • Removed: “Powered by TalaDesk” branding link
  • Removed: !important from CSS (proper specificity instead)
  • Updated: Plugin description and labels streamlined for WhatsApp-only
  • Added: Plugin icon, banner, and screenshots for WordPress.org directory
  • Added: Top-level admin menu with TalaDesk icon (was under Settings)

1.0.0

  • Initial public release.
  • Floating CTA button with configurable messaging service.
  • Support for WhatsApp, Telegram, Messenger, Signal, and SMS.
  • Full color customization (icon, text, background).
  • Optional hover text swap.
  • Position selection (bottom-right / bottom-left).
  • Display rules (all pages, homepage, posts, pages, exclude front page).
  • Settings page under Settings > TalaDesk.
  • Lightweight: no JavaScript frameworks, no external requests.
  • Accessibility: ARIA labels, keyboard navigation, focus-visible styles.