LobbyChat

Changelog

1.2.2

  • Compliance: Cloudflare Turnstile’s API script is now printed directly instead of enqueued, to satisfy WordPress.org’s rule against enqueueing remote scripts. No functional change — Turnstile works exactly as before.
  • Housekeeping: cleaned up a couple of Plugin Check warnings (script versioning and a cross-method nonce annotation).

1.2.1

  • Fixed: Clicking an emoji in the picker did nothing on sites where WordPress replaces emoji with images (Twemoji). The real emoji character is now stored on each button and inserted reliably regardless of how the glyph is displayed.

1.2.0

  • New: Optional Cloudflare Turnstile integration for bot protection. Enable it under Settings → LobbyChat → Spam protection, paste your free site/secret keys, and choose whether to require it for everyone or guests only. Posting is blocked until the check passes.
  • Improved: Emoji picker is more reliable — fixed an issue where clicking the 😊 button or an emoji did nothing on some setups.
  • Improved: The moderator “clear chat” action no longer uses a browser confirm() popup. Instead the 🧹 button arms on first click (turns red, shows ✓) and clears on a second click within 3 seconds.
  • Improved: Hover actions (Delete / Pin / Report) now float in the top-right corner of a message instead of pushing the message taller, so row heights no longer jump on hover.

1.1.0

  • New: Emoji picker — users can insert emoji into their messages via a 😊 button next to the message box. The emoji set is filterable with lobbychat_emoji_set.
  • New: Moderators can instantly clear all chat messages with a 🧹 button in the chat header — useful for sites that run multiple separate sessions (pinned messages are kept).
  • Fixed: Auto-delete (message retention) now also runs opportunistically when the chat is loaded, throttled to once per hour. Previously, on very low-traffic sites — for example a chat only enabled during a weekly event — WordPress cron might never fire and old messages would linger past their retention window. Thanks to @david-innes for the report.

1.0.8

  • Fixed: Apostrophes and other special characters were rendered as HTML entities (I'm going instead of I’m going) in chat messages and display names. Server no longer double-encodes payload fields that the JS client already escapes at render time. Thanks to @david-innes for the report.
  • Fixed: Clickable usernames could 404 on sites where users hadn’t published any posts or where author archives are disabled. Default username link is now only added when the user has a usable author archive — otherwise the name is shown as plain text. Use the lobbychat_profile_url filter to point at custom profile URLs (see FAQ).

1.0.7

  • Updated: “Tested up to” bumped to WordPress 7.0.

1.0.6

  • Updated: Plugin URI now points to the GitHub source repository (github.com/JauntyMYT/lobbychat) for a more stable canonical URL.

1.0.5

  • Compliance: Moved inline admin JavaScript to a properly enqueued file (assets/js/admin.js) loaded only on the bot settings page via admin_enqueue_scripts, per WordPress.org coding standards.
  • Compliance: Renamed all plugin-defined constants from the 3-character LBC_* prefix to LOBBYCHAT_* to meet the 4+ character prefix requirement.

1.0.4

  • Compliance: “Powered by LobbyChat” frontend attribution is now opt-in (off by default) per WordPress.org guidelines on plugin attribution.
  • Compliance: Added detailed “External services” section to readme documenting all third-party API calls (Gemini, OpenAI, YouTube oEmbed, link preview fetches) with terms-of-service and privacy-policy links.

1.0.3

  • Fixed: Link sharing now works for any URL — previously only worked when the linked page had perfectly-formatted Open Graph tags. Now handles Twitter cards, plain <title> tags, and falls back to a bare link card if no metadata is available.
  • Improved: Open Graph parser now handles meta tags with content before property, mixed quote styles, and follows redirects.
  • Improved: Bumped link-fetch timeout from 5s to 8s for slower-responding sites.
  • Updated: Plugin URI and demo link now point to bejaunty.com.

1.0.2

  • Plugin Check compliance: addressed all errors and warnings from the official WordPress Plugin Check tool.
  • Replaced parse_url() with wp_parse_url(), mt_rand() with wp_rand(), date() with gmdate().
  • Added wp_unslash() to all $_POST and $_SERVER reads before sanitization.
  • Refactored get_messages() to avoid dynamic SQL fragments — now uses two clean prepared queries.
  • Added documented phpcs suppressions for legitimate direct-DB access (custom plugin tables) and bot logging.
  • Removed redundant load_plugin_textdomain() (WP.org auto-loads translations since WP 4.6).
  • Removed Domain Path header (no /languages/ folder needed for WP.org-hosted plugins).
  • Bumped Tested up to: 6.9 to match current WordPress release.
  • Renamed template-scope variables to use full lobbychat_ prefix.

1.0.1

  • Fixed: Send button not working in some themes — moved script localization earlier so the LobbyChat global is always defined when the JS loads.
  • Fixed: Click handler now uses event delegation, so it survives DOM changes from page builders and caching plugins.
  • Fixed: Uninstall now correctly drops the messages table (was using the wrong table name).
  • Fixed: Removed unused tag column from the messages table schema (auto-migrates from 1.0.0).
  • Added: “Show ‘Powered by’ link” toggle in Settings (on by default — admins can turn it off).
  • Added: Donate link on the Plugins page, in plugin header, and on the settings page footer.
  • Added: Console diagnostic when the LobbyChat global is missing (helps debug script-loading conflicts).

1.0.0

  • Initial release.
  • Live chat feed with HTTP polling.
  • Guest and member posting with separate rate limits.
  • Emoji reactions, link previews (YouTube + Open Graph), pinned messages.
  • Reporting with auto-hide threshold.
  • Word blocklist + 60-second self-delete window.
  • Custom LobbyChat Moderator role.
  • Online presence with bot detection.
  • Optional AI chat companion (Gemini + OpenAI fallback).
  • Fullscreen mode, collapse toggle, sound notifications.

Plugin Website
Visit website

Author
Asad Khalil
Version:
1.2.2
Last Updated
June 26, 2026
Requires
WordPress 5.8
Tested Up To
WordPress 7.0
Requires PHP
7.2

Share Post

Join our newsletter.

Get insights into what’s happening at ChangelogWP right in your inbox. We don’t believe in spam.