SAC Pro is equipped with the following action and filter hooks. Absolutely loaded with filter hooks. Action hooks not so much.
Action Hooks
SAC Pro currently does not include any action hooks. Let us know if you need a specific action hook added to the plugin.
Filter Hooks
Filter | Description |
---|---|
sacpro_options_general |
filters the default general options |
sacpro_options_appearance |
filters the default appearance options |
sacpro_options_notifications |
filters the default notification options |
sacpro_options_security |
filters the default security options |
sacpro_options_shortcuts |
filters the default shortcuts options |
sacpro_options_emojis |
filters the default emoji list |
sacpro_locale |
filters the i18n locale (for translations) |
sacpro_online_users_interval |
filters interval (in minutes) for expiry of online-users widget (default: 10 ) |
sacpro_online_temp_name |
filters temp name for online-users widget (default: “Lurker (that’s you)”) |
sacpro_none_online_message |
filters the message displayed for online-users widget when no active users (default: “Ghost town..”) |
sacpro_online_users |
filters the final output/markup of the online-users widget |
sacpro_user_id |
filters the current user ID |
sacpro_user_role |
filters the current user role |
sacpro_user_roles |
filters the set of current user roles |
sacpro_user_url |
filters the current user URL |
sacpro_default_url |
filters the default site URL |
sacpro_current_time |
filters the current time (on server) |
sacpro_get_date |
filters the current date |
sacpro_get_domain |
filters the current site domain |
sacpro_get_request |
filter the current request |
sacpro_get_refer |
filter the current referrer |
sacpro_enable_host_check |
filter to enable or disable the host lookup via gethostbyaddr() (default: true ) |
sacpro_get_host |
filters the current host name (when sacpro_enable_host_check is enabled) |
sacpro_get_ua |
filters the current user agent |
sacpro_get_key_length |
filters the length of the user key ID (default: 500 ) |
sacpro_time_since |
filters the output of the time-since function, simple_ajax_chat_pro_time_since() |
sacpro_remove_chars_name_regex |
filters the regex set of characters allowed in user names, when applicable (default: [^A-Za-z0-9-_@+,. ] ) |
sacpro_remove_chars_name |
filters the user name after disallowed characters have been removed |
sacpro_remove_chars_text_regex_str |
filters some characters not allowed in chat messages, when applicable (default: removes backslashes \ ) |
sacpro_remove_chars_text_regex_preg |
filters some characters not allowed in chat messages, when applicable (default: removes angle brackets < > ) |
sacpro_remove_chars_text |
filters the chat message after disallowed characters have been removed |
sacpro_read_only_message_default |
filters the default message displayed to non-logged users, when in read-only mode (default: “Log in to join this chat!”) |
sacpro_read_only_message |
filters the message displayed to non-logged users, when in read-only mode (default: “Log in to join this chat!”) |
sacpro_login_required_message_default |
filters the default message displayed to non-logged users, when login is required (default: “You must be logged in to join this chat.”) |
sacpro_login_required_message |
filters the message displayed to non-logged users, when login is required (default: “You must be logged in to join this chat.”) |
sacpro_shortcode_filter |
filters the chat message after it is filtered with character and shortcode replacements |
sacpro_wp_login_url |
filters the URL for the WordPress Login Page |
sacpro_random_string_length |
filters the length of the random string generator (default: 5 ) |
sacpro_random_string_chars |
filters the set of characters used by the random string generator (default: 0123456789 ) |
sacpro_random_string |
filters the output string for the random string generator |
sacpro_secret_iv |
filters the seed for secret key (very advanced, experts only) |
sacpro_secret_key |
filters the secret key (very advanced, experts only) |
sacpro_recaptcha_query |
filters the query string for the reCaptcha request (default: none/empty) |
sacpro_remove_chars_name_regex_js |
filters the regex set of characters allowed in user names (inline JavaScript), when applicable (default: [^A-Za-z0-9-_@+,. ] ) |
sacpro_ip |
filters the current IP address |
sacpro_ip_keys |
filters the array of keys used for IP address validation |
sacpro_ip_filter |
filters the array of filter flags used for IP address validation |
sacpro_validate_ip_log |
filters the log message for IP address errors (default: “Invalid IP Address: 123.123.123”) |
sacpro_dashboard_chat |
filters the shortcode used for the dashboard chat (default: [sacpro form_id="dashchat" chat_theme="classic" user_name="display_name" user_url="edit_url" user_avatar="true" display_meta="true"] ) |
sacpro_name_prefix_regex |
filters validation regex for allowed characters in generated name prefix (default: [^A-Za-z0-9-_] ) |
sacpro_allowedposttags |
filters allowed tags for validation of custom content settings (defaults located @ simple_ajax_chat_pro_allowedposttags() ) |
sacpro_meta |
filters the array of collected user data (e.g., IP address, user agent, etc.) |
sacpro_latest_message |
filters output/markup for the “latest message” information |
sacpro_showing_message |
filters output/markup for the “showing message” information |
sacpro_showing_message_plain |
filters output/text for the “showing message” information |
sacpro_banned_phrases_replace |
filters the replacement for removed banned phrases in chat messages (default: empty/blank) |
sacpro_check_user_protocol |
filters HTTP header for banned users (default: HTTP/1.1 403 Forbidden ) |
sacpro_check_user_connection |
filters HTTP header for banned users (default: Connection: Close ) |
sacpro_check_user_message |
filters message for banned users (default: “You are banned.”) |
sacpro_recaptcha_score |
filters the minimal acceptable score for reCaptcha (default: 0.5 ) |
sacpro_filter_text_output |
filters default allowed markup for chat messages, when applicable (default: <code> , <del> , <em> , <ins> , <strong> ) |
sacpro_max_chars_url |
filters max number of characters in user URLs (default: 1000 ) |
sacpro_max_users |
filters the maximum number of users allowed in a chat room (possible values: a number or default for unlimited users) |
sacpro_private_chat |
filters to determine whether or not the chat is private (possible values: comma-separated usernames or false for not private) |
auto_clear |
filters to determine auto-clear functionality (possible values: one_week , three_days , one_day , eight_hours , sixty_minutes , thirty_minutes , three_minutes , sixty_seconds , null or empty = no auto-clear) |
auto_clear_alert |
filters the email address used for auto-clear alerts (possible values: any valid email address or empty/none to disable alerts) |
sacpro_login_required_message_display |
filters the output/markup for the login-required message |
sacpro_max_users_message |
filters the message when chat reaches maximum number of users (default: “Chat closed (user limit reached).”) |
sacpro_max_users_message_display |
filters the output/markup when chat reaches maximum number of users |
sacpro_private_chat_message |
filters the message for users not included in private chats (default: “Private chat (access not allowed).”) |
sacpro_private_chat_message_display |
filters the output/markup for users not included in private chats |
sacpro_display_read_only_message_display |
filters output displayed to non-logged users, when in read-only mode |
sacpro_display_name_title |
filters to determine whether or not the title attribute should be included in the hyperlink, when user URL is enabled (default: “Visit this website (opens new tab)”) |
sacpro_display_chat_sep |
filters the character(s) displayed between the chat user name and the chat message (default: colon : ) |
sacpro_online_class_interval |
filters the interval (in minutes) for expiry of online-user class attribute (default: 10 ) |
sacpro_user_avatar_default |
filters the default avatar for chat users, when applicable (default: /img/sacpro-icon-200.png ) |
sacpro_user_avatar_sacpro |
filters the avatar for the chat “welcome” message (default: /img/sacpro-icon-200.png ) |
sacpro_user_avatar_args |
filters the size and other arguments for user avatars, via WordPress function get_avatar_url() (default: array('size' => '100', 'rating' => 'PG') ) |
sacpro_submit_button |
filters the text of the chat submit button (default: “Submit”) |
sacpro_text_label |
filters the label and placeholder of the chat Message field (default: “Message”) |
sacpro_name_label |
filters the label and placeholder of the chat Name field (default: “Name”) |
sacpro_url_label |
filters the label of the chat URL field (default: “URL”) |
sacpro_url_placeholder |
filters the placeholder of the chat URL field (default: https://example.com/ ) |
sacpro_user_name_registered |
filters the registered user name, when applicable |
sacpro_user_name_generated |
filters the auto-generated user name, when applicable |
sacpro_user_name_defined |
filters the user-defined user name, when applicable |
sacpro_audio_alert_mp3 |
filters the URL for the MP3 file used when audio alerts are enabled |
sacpro_audio_alert_ogg |
filters the URL for the OGG file used when audio alerts are enabled |
sacpro_audio_alert_markup |
filters the output/markup for audio alerts |
sacpro_email_alerts_site |
filters the site/blog name included in email alerts (default: get_bloginfo('name') ) |
sacpro_email_alerts_subject |
filters the subject line for email alerts (default: “SAC Pro : New chat @ Your Site Name”) |
sacpro_email_alerts_send |
filters the headers included in email alerts (defaults @ simple_ajax_chat_pro_email_alerts_send() ) |
sacpro_email_alerts_data_sep |
filters the characters used to separate lines of information in email alerts (default: === ) |
sacpro_email_alerts_data |
filters the message included in email alerts (defaults @ simple_ajax_chat_pro_email_alerts_data() ) |
sacpro_process_url_filter |
filters to determine whether banned phrases should be checked while pre-processing chat messages (default: false ) |
I will be adding more hooks in future versions on an as-needed basis, so let me know if you have any requests and it shall be done :)