Plugin Directory

Simple Ajax Chat

Simple Ajax Chat displays a fully customizable Ajax-powered chat box anywhere on your site.


  • Updated heading hierarchy in plugin settings
  • Added missing get_currentuserinfo() where applicable
  • Updated some i18n code and added French translation (Thanks to alysko)
  • Added Russian translation (Thanks to arniarni)
  • Improved logic of database query in sac_shout_edit()
  • Added esc_url() to sac_add_to_head()
  • Updated default translation template
  • Updated minimum version requirement
  • Tested on WordPress 4.4 beta


  • Tested on WordPress 4.3
  • Updated minimum version requirement
  • Fixed 404/500 error for certain setups


  • Tested with WP 4.2 + 4.3 (alpha)
  • Changed a few "http" links to "https"
  • Fixed XSS vulnerability with add_query_arg()
  • Added primary key flag to create database function
  • Bugfix: form not submitting when JavaScript disabled
  • Improved logic in simple-ajax-chat.php
  • Added nonce security to chat form
  • Added support for SSL/https
  • Added sac_censor_replace filter to customize censored words
  • Added isset() to stop PHP warning


  • Tested with latest version of WP (4.1)
  • Increased minimum version to WP 3.8
  • Added $sac_wp_vers for version check
  • Added Text Domain and Domain Path to file header
  • Removed deprecated screen_icon()
  • Added alert notice for donations
  • Streamline/fine-tune plugin code
  • Replaced time() with current_time() throughout plugin
  • Added timestamp for each chat via data-time attribute
  • Replace $user_level and $sac_admin_user_level with current_user_can()
  • New feature: option to set max number of allowed chats
  • New feature: option to set max number of characters per chat
  • New feature: option to set max number of characters in username
  • Replaced hard-coded values for max chats/chars/name with options
  • Revamped chat-order functionality (Thanks to MartinW2)
  • Added line breaks to initJavaScript()
  • Added rows="5" cols="50" to chat message textarea
  • Updated auto-link regex, fixes backslash appended to URL
  • Think I fixed the backslash-before-apostrophes issue, let me know!
  • Replaced default .mo/.po templates with .pot template


  • Tested on latest version of WordPress (4.0)
  • Increased minimum version requirement to WP 3.7
  • Added conditional check to min-version function
  • Added option to display logged-in username as chat name
  • Improved logic of simple_ajax_chat()
  • Improved logic of sac_addData()
  • Improved logic in core and admin files
  • Increased default username max-length
  • Fine-tuned plugin settings page
  • Removed vestigial killswitch variable
  • Fixed issue where special characters were not displaying correctly
  • Replaced hardcoded paths with WP tags (e.g., wp-content directory)
  • Replaced $user_nickname global with wp_get_current_user()
  • Minified portions of the SAC JavaScript file for better performance
  • Added conditional check for $sac_lastID is numeric
  • Now using sanitize_text_field() for IPs
  • Replaced htmlspecialchars() with sanitize_text_field()
  • Replaced sac_special_chars() with esc_url() for user URL
  • Replaced htmlentities(), stripslashes(), sac_clean() with sanitize_text_field()
  • Replaced PHP tags with WP tags in sac_special_chars()
  • Updated mo/po translation files


  • New feature: added setting to display chats in ascending or descending order (beta)
  • Improved logic for creating chat db table, fixes "mysql_list_tables" deprecated error
  • Added various CSS selectors to chat messages for custom styling
  • Added support for localization/translation


  • Tested with latest WordPress (3.8)
  • Added trailing slash to load_plugin_textdomain()
  • Fixed 3 incorrect _e() tags in simple-sjax-chat-admin.php
  • Edited setting description for "Require log in?" for accuracy


  • Removed delete_option('sac_delete'); from uninstall.php
  • Replaced application/x-javascript with `` in sac.php
  • Replaced add_plugin_links with add_sac_links in simple-ajax-core.php


  • Replaced original header codes and WP includes in sac.php


  • Removed 3x "Δ" from die() for better security
  • Added "rate this plugin" link on Plugins and SAC settings screens
  • Replaced 3x "wpdb->escape" with "esc_sql" in simple-ajax-chat-core.php
  • Filter server variables with built-in simple-ajax-chat-admin.php (lines 65/66)
  • Improved security when submitted chat fails (simple-ajax-chat.php)
  • Specified no border for smileys in filter_smilies()
  • Added localized timestamp of last chat to span.name in sac.php
  • Localized "ago" in sac-admin, sac-core, and sac-form
  • Localized sac_time_since() in simple-ajax-core.php
  • Improved header codes and WP includes in sac.php
  • Fixed bug where chats don't work if audio is disabled
  • Added uninstall.php to remove options and chat table upon uninstall
  • Enhanced functionality of plugin settings page
  • Tested with latest version of WordPress (3.7)
  • General code maintenance and cleanup
  • Added support for localization


  • Tightened form security
  • Tightened plugin security
  • Updated deprecated functions
  • Resolved some PHP Notices


  • Improved localization support
  • Replaced some deprecated template tags


  • Reorganized file/directory structure
  • Separated Ajax stuff from core plugin
  • Implemented strong anti-spam measures
  • Many functions rewritten to maximize native WP functionality
  • Improved audio support for chat alerts, fixed Safari bug
  • Fixed: case-insensitive banned phrases
  • Fixed: default options not working on install
  • Fixed: a bunch of annoying PHP Notices
  • Added .sac-reg-req for registration message div#sac-panel
  • Updated CSS skeleton with new selector (@ "/resources/sac.css")
  • Fixed: enable/disable links for usernames now works properly
  • General code check n clean
  • added comments to the .htaccess file (no active rules are included)


  • Added JavaScript to set up sound-alerts (fixes undefined variable error)


  • Added margins to submit buttons (now required in WP 3.5)
  • Added "div#sac-panel p {}" to default CSS
  • Added links to demo in readme.txt file
  • Updated all instances of $wpdb->prepare with new syntax
  • Added option for sound to play for new chat messages (note: chat-sound technique is borrowed from "Pierre's Wordspew")


  • Edited line 217 to define variable and fix "timeout" error
  • Enhanced markup for custom content
  • Custom content may be added before and/or after the chat form and/or the list of chat messages


  • Fixed PHP Warning: [function.stristr]: Empty delimiter (line 282)
  • Removed fieldset border in default form styles (plugin settings)
  • Added placeholders for name, URL, and chat message


  • Initial release.

Requires: 4.1 or higher
Compatible up to: 4.4.2
Last Updated: 3 months ago
Active Installs: 1,000+


4.6 out of 5 stars


1 of 3 support threads in the last two months have been marked resolved.

Got something to say? Need help?


Not enough data

0 people say it works.
0 people say it's broken.

100,1,1 100,1,1
100,1,1 50,2,1
100,1,1 100,1,1
100,1,1 100,2,2 100,1,1
100,1,1 100,1,1
100,1,1 67,3,2 100,1,1
100,2,2 100,1,1