Simple History – Track, Log, and Audit WordPress Changes Security & Risk Analysis

wordpress.org/plugins/simple-history

Track changes and user activities on your WordPress site. See who created a page, uploaded an attachment, and more, for a complete audit trail.

300K active installs v5.24.1 PHP 7.4+ WP 6.3+ Updated Mar 14, 2026
activityaudit-logevent-loghistoryuser-tracking
96
A · Safe
CVEs total4
Unpatched0
Last CVEJun 5, 2025
Safety Verdict

Is Simple History – Track, Log, and Audit WordPress Changes Safe to Use in 2026?

Generally Safe

Score 96/100

Simple History – Track, Log, and Audit WordPress Changes has a strong security track record. Known vulnerabilities have been patched promptly.

4 known CVEsLast CVE: Jun 5, 2025Updated 20d ago
Risk Assessment

The "simple-history" plugin version 5.24.1 presents a mixed security posture. On the positive side, it demonstrates good practices by utilizing prepared statements for the vast majority of its SQL queries and properly escaping output. The plugin also incorporates a significant number of capability checks and nonce checks, indicating a thoughtful approach to securing its functionalities. However, concerns arise from the presence of an unprotected AJAX handler, which represents a direct entry point for potential exploitation without authentication. Furthermore, the taint analysis revealed two flows with unsanitized paths, flagged as high severity, suggesting potential vulnerabilities that could lead to unauthorized actions or information disclosure.

The plugin's vulnerability history, with four known medium-severity CVEs, is a significant concern. Although none are currently unpatched, the common vulnerability types (plaintext password storage, CSV formula injection, and sensitive information exposure) suggest a pattern of recurring security weaknesses. This history, coupled with the findings in the static and taint analysis, indicates that while the developers are addressing vulnerabilities, there might be underlying architectural issues or a lack of consistent security focus leading to these types of flaws. The plugin has a moderate attack surface with 6 entry points, one of which is unprotected, and the taint analysis highlights specific risks that warrant attention.

Key Concerns

  • Unprotected AJAX handler
  • High severity unsanitized taint flows
  • History of 4 medium severity CVEs
Vulnerabilities
4

Simple History – Track, Log, and Audit WordPress Changes Security Vulnerabilities

CVEs by Year

1 CVE in 2014
2014
1 CVE in 2016
2016
1 CVE in 2023
2023
1 CVE in 2025
2025
Patched Has unpatched

Severity Breakdown

Medium
4

4 total CVEs

CVE-2025-5760medium · 4.9Plaintext Storage of a Password

Simple History <= 5.8.1 - Authenticated (Administrator+) Sensitive Information Exposure via Detective Mode

Jun 5, 2025 Patched in 5.8.2 (1d)
CVE-2022-45350medium · 6Improper Neutralization of Formula Elements in a CSV File

Simple History <= 3.3.1 - Authenticated (Subscriber+) CSV Injection

Feb 2, 2023 Patched in 3.4.0 (355d)
WF-62e01d59-e649-4b84-993b-9faf28a24274-simple-historymedium · 4.3Exposure of Sensitive Information to an Unauthorized Actor

Simple History Plugin < 2.7.5 - Sensitive Information Disclosure

Jul 28, 2016 Patched in 2.7.5 (2735d)
WF-f30af3c4-82be-40d5-be9f-82631b8f3ee2-simple-historymedium · 5.3Exposure of Sensitive Information to an Unauthorized Actor

Simple History <= 1.0.7 - Sensitive Information Disclosure

Aug 1, 2014 Patched in 1.0.8 (3462d)
Code Analysis
Analyzed Mar 16, 2026

Simple History – Track, Log, and Audit WordPress Changes Code Analysis

Dangerous Functions
0
Raw SQL Queries
19
172 prepared
Unescaped Output
86
984 escaped
Nonce Checks
13
Capability Checks
41
File Operations
20
External Requests
5
Bundled Libraries
0

SQL Query Safety

90% prepared191 total queries

Output Escaping

92% escaped1070 total outputs
Data Flows
2 unsanitized

Data Flow Analysis

9 flows2 with unsanitized paths
<class-rss-dropin> (dropins\class-rss-dropin.php:0)
Source (user input) Sink (dangerous op) Sanitizer Transform Unsanitized Sanitized
Attack Surface
1 unprotected

Simple History – Track, Log, and Audit WordPress Changes Attack Surface

Entry Points6
Unprotected1

AJAX Handlers 4

authwp_ajax_SimplePluginLogger_GetGitHubPluginInfologgers\class-plugin-logger.php:220
authwp_ajax_toggle-auto-updatesloggers\class-plugin-logger.php:236
authwp_ajax_inline-saveloggers\class-post-logger.php:81
authwp_ajax_destroy-sessionsloggers\class-user-logger.php:177

REST API Routes 2

GET/wp-json/simple-history/v1/email-report/preview/emailinc\services\class-email-report-service.php:39
GET/wp-json/simple-history/v1/email-report/preview/htmlinc\services\class-email-report-service.php:49
WordPress Hooks 316
filterupdate_bulk_plugins_complete_actionsdropins\class-action-links-dropin.php:13
filterupdate_plugin_complete_actionsdropins\class-action-links-dropin.php:14
filterinstall_plugin_complete_actionsdropins\class-action-links-dropin.php:15
filterupdate_bulk_theme_complete_actionsdropins\class-action-links-dropin.php:16
filterupdate_translations_complete_actionsdropins\class-action-links-dropin.php:17
filterinstall_theme_complete_actionsdropins\class-action-links-dropin.php:18
filterupdate_theme_complete_actionsdropins\class-action-links-dropin.php:19
actionsimple_history/settings_page/general_section_outputdropins\class-detective-mode-dropin.php:16
actionsimple_history/log_argument/contextdropins\class-detective-mode-dropin.php:23
actionadmin_menudropins\class-donate-dropin.php:23
filterplugin_row_metadropins\class-donate-dropin.php:24
filteradmin_footer_textdropins\class-donate-dropin.php:25
actionsimple_history/settings_page/general_section_outputdropins\class-experimental-features-dropin.php:16
actionadmin_menudropins\class-export-dropin.php:24
actionadmin_initdropins\class-export-dropin.php:25
actionadmin_menudropins\class-import-dropin.php:25
filtersimple_history/row_header_output/display_ip_addressdropins\class-ip-info-dropin.php:15
filtersimple_history/post_logger/skip_posttypesdropins\class-plugin-patches-dropin.php:16
filtersimple_history/post_logger/skip_posttypesdropins\class-plugin-patches-dropin.php:21
actioninitdropins\class-quick-view-dropin.php:14
actionadmin_bar_menudropins\class-quick-view-dropin.php:49
actionwp_enqueue_scriptsdropins\class-quick-view-dropin.php:53
actionadmin_enqueue_scriptsdropins\class-quick-view-dropin.php:54
actionsimple_history/history_page/gui_wrap_topdropins\class-react-dropin.php:13
actionsimple_history/dashboard/before_guidropins\class-react-dropin.php:14
actionsimple_history/enqueue_admin_scriptsdropins\class-react-dropin.php:15
actioninitdropins\class-rss-dropin.php:36
actionadmin_menudropins\class-rss-dropin.php:39
filtersimple_history/header_just_now_max_timedropins\class-rss-dropin.php:281
filtersimple_history/header_time_ago_max_timedropins\class-rss-dropin.php:282
actionadmin_menudropins\class-settings-help-support-dropin.php:22
actionadmin_menudropins\class-settings-help-support-dropin.php:23
actionadmin_enqueue_scriptsdropins\class-settings-help-support-dropin.php:24
actionsimple_history/dropin/sidebar/sidebar_htmldropins\class-sidebar-add-ons-dropin.php:16
actionsimple_history/dropin/sidebar/sidebar_htmldropins\class-sidebar-add-ons-dropin.php:17
actionsimple_history/dropin/sidebar/sidebar_htmldropins\class-sidebar-add-ons-dropin.php:18
actionsimple_history/dropin/sidebar/sidebar_htmldropins\class-sidebar-add-ons-dropin.php:19
actionsimple_history/history_page/after_guidropins\class-sidebar-dropin.php:16
actionsimple_history/dropin/sidebar/sidebar_htmldropins\class-sidebar-dropin.php:17
actionsimple_history/dropin/sidebar/sidebar_htmldropins\class-sidebar-email-promo-dropin.php:58
actionsimple_history/enqueue_admin_scriptsdropins\class-sidebar-email-promo-dropin.php:59
actionadmin_menudropins\class-tools-menu-dropin.php:29
actionadmin_menudropins\class-tools-menu-dropin.php:30
actionadmin_initdropins\class-tools-menu-dropin.php:32
actionsimple_history/log/insertedinc\channels\class-channels-manager.php:34
filtersimple_history/is_forwarding_to_channelinc\channels\class-channels-manager.php:233
actionsimple_history_cleanup_log_filesinc\channels\class-file-channel.php:36
filtersimple_history/header_time_ago_max_timeinc\class-export.php:82
filtersimple_history/header_just_now_max_timeinc\class-export.php:83
filtersimple_history/header_initiator_use_youinc\class-export.php:86
filtersimple_history/categories_logger/skip_taxonomiesinc\class-helpers.php:514
filterplugins_apiinc\class-plugin-updater.php:65
filtersite_transient_update_pluginsinc\class-plugin-updater.php:66
actionupgrader_process_completeinc\class-plugin-updater.php:67
actionadmin_headinc\class-simple-history.php:295
actionadmin_footerinc\class-simple-history.php:296
actionadmin_menuinc\class-simple-history.php:669
actionsimple_history/loggers/instantiatedinc\services\class-addons-licences.php:24
actionadmin_menuinc\services\class-admin-page-premium-promo.php:16
actionadmin_menuinc\services\class-admin-pages.php:16
actionadmin_page_access_deniedinc\services\class-admin-pages.php:17
actionadmin_menuinc\services\class-alerts-settings-page-teaser.php:33
actionadmin_initinc\services\class-auto-backfill-service.php:47
actioninitinc\services\class-channels-settings-page.php:44
actionadmin_menuinc\services\class-channels-settings-page.php:47
actionadmin_menuinc\services\class-channels-settings-page.php:54
actionenqueue_block_editor_assetsinc\services\class-command-palette.php:19
actionwp_dashboard_setupinc\services\class-dashboard-widget.php:15
actionafter_setup_themeinc\services\class-dropins-loader.php:15
actionadmin_menuinc\services\class-email-report-service.php:19
actionsimple_history/settings_page/general_section_outputinc\services\class-email-report-service.php:22
actionrest_api_initinc\services\class-email-report-service.php:25
actioninitinc\services\class-email-report-service.php:28
actionsimple_history/email_reportinc\services\class-email-report-service.php:29
actionupdate_option_simple_history_email_report_enabledinc\services\class-email-report-service.php:32
actionadmin_menuinc\services\class-experimental-features-page.php:31
filtersimple_history/log/do_loginc\services\class-failed-login-limit-service.php:48
filtersimple_history/log/do_loginc\services\class-failed-login-limit-service.php:49
actionadmin_menuinc\services\class-failed-logins-settings-page-teaser.php:31
actionsimple_history/dropin/sidebar/sidebar_htmlinc\services\class-history-insights-sidebar-service.php:36
actionsimple_history/enqueue_admin_scriptsinc\services\class-history-insights-sidebar-service.php:37
actioninitinc\services\class-licences-settings-page.php:39
actionadmin_menuinc\services\class-licences-settings-page.php:46
actionadmin_menuinc\services\class-licences-settings-page.php:53
actionafter_setup_themeinc\services\class-loggers-loader.php:16
actionadmin_menuinc\services\class-menu-service.php:35
actioncurrent_screeninc\services\class-menu-service.php:36
actionadmin_menuinc\services\class-message-control-settings-page-teaser.php:30
actionadmin_bar_menuinc\services\class-network-menu-items.php:15
actionadmin_bar_menuinc\services\class-network-menu-items.php:16
actionsimple_history/admin_page/after_headerinc\services\class-notification-bar.php:13
actionplugin_row_metainc\services\class-plugin-list-info.php:17
filterplugin_action_links_simple-history/index.phpinc\services\class-plugin-list-link.php:13
actionrest_api_initinc\services\class-rest-api.php:19
actionadmin_initinc\services\class-review-reminder-service.php:34
actionadmin_noticesinc\services\class-review-reminder-service.php:62
actionadmin_enqueue_scriptsinc\services\class-review-reminder-service.php:64
actionadmin_footerinc\services\class-scripts-and-templates.php:16
actionadmin_enqueue_scriptsinc\services\class-scripts-and-templates.php:17
actionafter_setup_themeinc\services\class-setup-database.php:22
filtersimple_history/row_details_outputinc\services\class-setup-database.php:24
actionsimple_history/loggers_loadedinc\services\class-setup-database.php:285
actionsimple_history_loginc\services\class-setup-log-filters.php:26
actionsimple_history_log_emergencyinc\services\class-setup-log-filters.php:35
actionsimple_history_log_alertinc\services\class-setup-log-filters.php:36
actionsimple_history_log_criticalinc\services\class-setup-log-filters.php:37
actionsimple_history_log_errorinc\services\class-setup-log-filters.php:38
actionsimple_history_log_warninginc\services\class-setup-log-filters.php:39
actionsimple_history_log_noticeinc\services\class-setup-log-filters.php:40
actionsimple_history_log_infoinc\services\class-setup-log-filters.php:41
actionsimple_history_log_debuginc\services\class-setup-log-filters.php:42
actionsimple_history/pauseinc\services\class-setup-pause-resume-actions.php:24
filtersimple_history/log/do_loginc\services\class-setup-pause-resume-actions.php:27
actionsimple_history/resumeinc\services\class-setup-pause-resume-actions.php:31
actionafter_setup_themeinc\services\class-setup-purge-db-cron.php:13
actionsimple_history/maybe_purge_dbinc\services\class-setup-purge-db-cron.php:30
actionadmin_menuinc\services\class-setup-settings-page.php:20
actionadmin_menuinc\services\class-setup-settings-page.php:21
actionadmin_menuinc\services\class-setup-settings-page.php:23
actionadmin_page_access_deniedinc\services\class-setup-settings-page.php:24
actionadmin_initinc\services\class-setup-settings-page.php:26
actionsimple_history/dropin/sidebar/sidebar_htmlinc\services\class-sidebar-tips-service.php:18
filtersimple_history/pluginlogger/plugin_updated_details/simple-history/5.14.0inc\services\class-simple-history-updates.php:16
filtersimple_history/pluginlogger/plugin_updated_details/simple-history/5.15.0inc\services\class-simple-history-updates.php:17
filtersimple_history/pluginlogger/plugin_updated_details/simple-history/5.18.0inc\services\class-simple-history-updates.php:18
filtersimple_history/pluginlogger/plugin_updated_details/simple-history/5.19.0inc\services\class-simple-history-updates.php:19
filtersimple_history/pluginlogger/plugin_updated_details/simple-history/5.21.0inc\services\class-simple-history-updates.php:20
filtersimple_history/pluginlogger/plugin_updated_details/simple-history/5.22.0inc\services\class-simple-history-updates.php:21
filtersimple_history/pluginlogger/plugin_updated_details/simple-history/5.23.0inc\services\class-simple-history-updates.php:22
filtersimple_history/pluginlogger/plugin_updated_details/simple-history/5.24.0inc\services\class-simple-history-updates.php:23
actionadmin_menuinc\services\class-stats-service.php:31
actionsimple_history/enqueue_admin_scriptsinc\services\class-stats-service.php:33
actionsimple_history/stats/output_page_contentsinc\services\class-stats-service.php:34
actioninitinc\services\class-stealth-mode.php:13
filtersimple_history/show_on_dashboardinc\services\class-stealth-mode.php:40
filtersimple_history/show_in_admin_barinc\services\class-stealth-mode.php:43
filtersimple_history/show_admin_menu_pageinc\services\class-stealth-mode.php:46
filtersimple_history/add_admin_bar_menu_iteminc\services\class-stealth-mode.php:49
filtersimple_history/add_admin_bar_network_menu_iteminc\services\class-stealth-mode.php:50
filterall_pluginsinc\services\class-stealth-mode.php:53
filtersimple_history/show_action_linkinc\services\class-stealth-mode.php:56
filtersimple_history/menu_manager/get_pagesinc\services\class-stealth-mode.php:59
actionadmin_initinc\services\class-welcome-message-service.php:22
actionadmin_noticesinc\services\class-welcome-message-service.php:51
filtersimple_history/loggers_user_can_read/can_read_single_loggerinc\services\wp-cli-commands\class-wp-cli-benchmark-search-command.php:160
filtersimple_history/loggers_user_can_read/can_read_single_loggerinc\services\wp-cli-commands\class-wp-cli-benchmark-search-command.php:318
filtersimple_history/loggers_user_can_read/can_read_single_loggerinc\services\wp-cli-commands\class-wp-cli-get-command.php:49
filtersimple_history/loggers_user_can_read/can_read_single_loggerinc\services\wp-cli-commands\class-wp-cli-list-command.php:286
filtersimple_history/loggers_user_can_read/can_read_single_loggerinc\services\wp-cli-commands\class-wp-cli-search-command.php:67
actionadmin_noticesindex.php:41
actionset_site_transient_update_coreloggers\class-available-updates-logger.php:58
actionset_site_transient_update_pluginsloggers\class-available-updates-logger.php:61
actionset_site_transient_update_themesloggers\class-available-updates-logger.php:63
actioncreated_termloggers\class-categories-logger.php:57
actiondelete_termloggers\class-categories-logger.php:60
actionwp_update_term_parentloggers\class-categories-logger.php:63
filtersimple_history/log_query_inner_whereloggers\class-comments-logger.php:319
filtersimple_history/quick_stats_whereloggers\class-comments-logger.php:320
actioncomment_postloggers\class-comments-logger.php:325
actionwp_set_comment_statusloggers\class-comments-logger.php:331
actionuntrashed_commentloggers\class-comments-logger.php:336
actiondelete_commentloggers\class-comments-logger.php:341
actionedit_commentloggers\class-comments-logger.php:347
actioninitloggers\class-core-files-logger.php:59
action_core_updated_successfullyloggers\class-core-updates-logger.php:48
actionupdate_feedbackloggers\class-core-updates-logger.php:49
actionload-update-core.phploggers\class-core-updates-logger.php:50
filterauto_core_update_send_emailloggers\class-core-updates-logger.php:57
actionexport_wploggers\class-export-logger.php:44
actionadmin_initloggers\class-file-edits-logger.php:48
actionadmin_initloggers\class-file-edits-logger.php:49
filtergettextloggers\class-logger.php:1663
filtergettext_with_contextloggers\class-logger.php:1664
actionadd_attachmentloggers\class-media-logger.php:62
actionattachment_updatedloggers\class-media-logger.php:63
actiondelete_attachmentloggers\class-media-logger.php:64
actionxmlrpc_call_success_mw_newMediaObjectloggers\class-media-logger.php:65
filtersimple_history/rss_item_linkloggers\class-media-logger.php:66
filterwp_save_image_editor_fileloggers\class-media-logger.php:67
actionload-post.phploggers\class-media-logger.php:68
actionload-nav-menus.phploggers\class-menu-logger.php:67
actionwp_create_nav_menuloggers\class-menu-logger.php:77
actionload-nav-menus.phploggers\class-menu-logger.php:84
actionload-nav-menus.phploggers\class-menu-logger.php:87
filtersimple_history/categories_logger/skip_taxonomiesloggers\class-menu-logger.php:89
actionwp_insert_commentloggers\class-notes-logger.php:77
actionedit_commentloggers\class-notes-logger.php:78
actionupdated_comment_metaloggers\class-notes-logger.php:79
actionadded_comment_metaloggers\class-notes-logger.php:80
actiondelete_commentloggers\class-notes-logger.php:81
actiontrash_commentloggers\class-notes-logger.php:82
actionload-options.phploggers\class-options-logger.php:45
actionload-options-permalink.phploggers\class-options-logger.php:46
actionupdated_optionloggers\class-options-logger.php:53
filtersimple_history/post_logger/skip_posttypesloggers\class-plugin-acf-logger.php:80
filterwp_insert_post_dataloggers\class-plugin-acf-logger.php:84
actiontransition_post_statusloggers\class-plugin-acf-logger.php:87
filtersimple_history/post_logger/post_updated/contextloggers\class-plugin-acf-logger.php:90
filtersimple_history/post_logger/post_updated/diff_table_outputloggers\class-plugin-acf-logger.php:93
actionadmin_action_editpostloggers\class-plugin-acf-logger.php:97
actionacf/save_postloggers\class-plugin-acf-logger.php:100
actionsimple_history/log/insertedloggers\class-plugin-acf-logger.php:103
filtersimple_history/post_logger/post_updated/ok_to_logloggers\class-plugin-acf-logger.php:138
actionfl_builder_after_save_layoutloggers\class-plugin-beaver-builder-logger.php:76
actionfl_builder_after_save_user_templateloggers\class-plugin-beaver-builder-logger.php:82
actionfl_builder_after_save_draftloggers\class-plugin-beaver-builder-logger.php:88
actionfl_builder_admin_settings_saveloggers\class-plugin-beaver-builder-logger.php:94
actiondp_duplicate_postloggers\class-plugin-duplicate-post-logger.php:69
actiondp_duplicate_pageloggers\class-plugin-duplicate-post-logger.php:70
actionload-media_page_enable-media-replace/enable-media-replaceloggers\class-plugin-enable-media-replace-logger.php:50
actionjetpack_activate_moduleloggers\class-plugin-jetpack-logger.php:53
actionjetpack_deactivate_moduleloggers\class-plugin-jetpack-logger.php:54
filterpre_option_limit_login_lockouts_totalloggers\class-plugin-limit-login-attempts-logger.php:69
actionload-settings_page_limit-login-attemptsloggers\class-plugin-limit-login-attempts-logger.php:70
filterupgrader_pre_installloggers\class-plugin-logger.php:197
actionactivated_pluginloggers\class-plugin-logger.php:202
actiondeactivated_pluginloggers\class-plugin-logger.php:207
actionupgrader_process_completeloggers\class-plugin-logger.php:212
actionautomatic_updates_completeloggers\class-plugin-logger.php:217
filterextra_plugin_headersloggers\class-plugin-logger.php:224
actionload-plugins.phploggers\class-plugin-logger.php:235
actiondelete_pluginloggers\class-plugin-logger.php:241
actiondeleted_pluginloggers\class-plugin-logger.php:242
filterupgrader_install_package_resultloggers\class-plugin-logger.php:246
filtergettextloggers\class-plugin-logger.php:254
filtergettextloggers\class-plugin-logger.php:255
filteresc_htmlloggers\class-plugin-logger.php:651
filterrest_request_before_callbacksloggers\class-plugin-redirection-logger.php:91
actionswitch_to_userloggers\class-plugin-user-switching-logger.php:55
actionswitch_back_userloggers\class-plugin-user-switching-logger.php:56
actionswitch_off_userloggers\class-plugin-user-switching-logger.php:57
actioncrontrol/added_new_eventloggers\class-plugin-wp-crontrol-logger.php:74
actioncrontrol/added_new_php_eventloggers\class-plugin-wp-crontrol-logger.php:75
actioncrontrol/ran_eventloggers\class-plugin-wp-crontrol-logger.php:76
actioncrontrol/deleted_eventloggers\class-plugin-wp-crontrol-logger.php:77
actioncrontrol/deleted_all_with_hookloggers\class-plugin-wp-crontrol-logger.php:78
actioncrontrol/paused_hookloggers\class-plugin-wp-crontrol-logger.php:79
actioncrontrol/resumed_hookloggers\class-plugin-wp-crontrol-logger.php:80
actioncrontrol/edited_eventloggers\class-plugin-wp-crontrol-logger.php:81
actioncrontrol/edited_php_eventloggers\class-plugin-wp-crontrol-logger.php:82
actioncrontrol/added_new_scheduleloggers\class-plugin-wp-crontrol-logger.php:83
actioncrontrol/deleted_scheduleloggers\class-plugin-wp-crontrol-logger.php:84
actionadmin_action_editpostloggers\class-post-logger.php:78
actionadmin_action_editloggers\class-post-logger.php:86
actiontransition_post_statusloggers\class-post-logger.php:89
actiontransition_post_statusloggers\class-post-logger.php:92
actiondelete_postloggers\class-post-logger.php:94
actionuntrash_postloggers\class-post-logger.php:95
actioninitloggers\class-post-logger.php:100
actionupdate_option_page_on_frontloggers\class-post-logger.php:102
actionupdate_option_page_for_postsloggers\class-post-logger.php:103
filtersimple_history/rss_item_linkloggers\class-post-logger.php:105
action_wp_put_post_revisionloggers\class-post-logger.php:108
actionxmlrpc_call_success_blogger_newPostloggers\class-post-logger.php:267
actionxmlrpc_call_success_mw_newPostloggers\class-post-logger.php:268
actionxmlrpc_call_success_blogger_editPostloggers\class-post-logger.php:270
actionxmlrpc_call_success_mw_editPostloggers\class-post-logger.php:271
actionxmlrpc_call_success_blogger_deletePostloggers\class-post-logger.php:273
actionxmlrpc_call_success_wp_deletePageloggers\class-post-logger.php:274
actionxmlrpc_callloggers\class-post-logger.php:276
filtersimple_history/post_logger/skip_posttypesloggers\class-privacy-logger.php:87
actionload-options-privacy.phploggers\class-privacy-logger.php:91
actionload-export-personal-data.phploggers\class-privacy-logger.php:95
actionsave_post_user_requestloggers\class-privacy-logger.php:99
actionuser_request_action_confirmedloggers\class-privacy-logger.php:102
actionload-erase-personal-data.phploggers\class-privacy-logger.php:105
actionwp_privacy_personal_data_export_file_createdloggers\class-privacy-logger.php:107
actionwp_privacy_personal_data_erasedloggers\class-privacy-logger.php:109
actionbefore_delete_postloggers\class-privacy-logger.php:407
actionadmin_action_completeloggers\class-privacy-logger.php:410
actionbefore_delete_postloggers\class-privacy-logger.php:447
actionactivate_pluginloggers\class-role-capability-logger.php:113
actiondeactivate_pluginloggers\class-role-capability-logger.php:114
actionactivated_pluginloggers\class-role-capability-logger.php:115
actiondeactivated_pluginloggers\class-role-capability-logger.php:116
actionshutdownloggers\class-role-capability-logger.php:199
actionload-options.phploggers\class-simple-history-logger.php:74
actionsimple_history/rss_feed/secret_updatedloggers\class-simple-history-logger.php:75
actionsimple_history/settings/log_clearedloggers\class-simple-history-logger.php:76
actionsimple_history/db/purge_doneloggers\class-simple-history-logger.php:77
actionsimple_history/backfill/completedloggers\class-simple-history-logger.php:78
actionsimple_history/channel/auto_disabledloggers\class-simple-history-logger.php:79
actionupdated_optionloggers\class-simple-history-logger.php:202
filterwp_redirectloggers\class-simple-history-logger.php:205
filterwp_redirectloggers\class-simple-history-logger.php:208
filtersite_status_test_resultloggers\class-site-health-logger.php:59
actionswitch_themeloggers\class-theme-logger.php:118
actioncustomize_saveloggers\class-theme-logger.php:120
actionsidebar_admin_setuploggers\class-theme-logger.php:122
actionsidebar_admin_setuploggers\class-theme-logger.php:123
filterwidget_update_callbackloggers\class-theme-logger.php:124
actionload-appearance_page_custom-backgroundloggers\class-theme-logger.php:126
filterupgrader_install_package_resultloggers\class-theme-logger.php:128
actionupgrader_process_completeloggers\class-theme-logger.php:129
actionupgrader_process_completeloggers\class-theme-logger.php:130
actiondelete_themeloggers\class-theme-logger.php:133
actiondeleted_themeloggers\class-theme-logger.php:134
filtersimple_history/post_logger/skip_posttypesloggers\class-theme-logger.php:136
actionupgrader_process_completeloggers\class-translations-logger.php:48
actionwp_loginloggers\class-user-logger.php:159
actionwp_logoutloggers\class-user-logger.php:160
actionwp_authenticate_userloggers\class-user-logger.php:163
filterauthenticateloggers\class-user-logger.php:168
actionuser_registerloggers\class-user-logger.php:171
actiondelete_userloggers\class-user-logger.php:174
actionvalidate_password_resetloggers\class-user-logger.php:180
actionretrieve_password_messageloggers\class-user-logger.php:181
filterwp_pre_insert_user_dataloggers\class-user-logger.php:184
actionprofile_updateloggers\class-user-logger.php:188
actionset_user_roleloggers\class-user-logger.php:190
actionlogin_form_confirm_admin_emailloggers\class-user-logger.php:193
actionwp_create_application_passwordloggers\class-user-logger.php:195
actionwp_delete_application_passwordloggers\class-user-logger.php:196
actionadmin_page_access_deniedloggers\class-user-logger.php:200
actionadd_user_roleloggers\class-user-logger.php:226
actionremove_user_roleloggers\class-user-logger.php:254

Scheduled Events 2

simple_history/email_report
simple_history/maybe_purge_db
Maintenance & Trust

Simple History – Track, Log, and Audit WordPress Changes Maintenance & Trust

Maintenance Signals

WordPress version tested6.9.4
Last updatedMar 14, 2026
PHP min version7.4
Downloads11.3M

Community Trust

Rating98/100
Number of ratings461
Active installs300K
Developer Profile

Simple History – Track, Log, and Audit WordPress Changes Developer Profile

Pär Thernström

11 plugins · 361K total installs

73
trust score
Avg Security Score
91/100
Avg Patch Time
1680 days
View full developer profile
Detection Fingerprints

How We Detect Simple History – Track, Log, and Audit WordPress Changes

Patterns used to identify this plugin on WordPress sites during automated security audits and web crawling.

Asset Fingerprints

Asset Paths
/wp-content/plugins/simple-history/css/simple-history.css/wp-content/plugins/simple-history/css/simple-history-admin.css/wp-content/plugins/simple-history/css/quick-view.css/wp-content/plugins/simple-history/js/simple-history.js/wp-content/plugins/simple-history/js/simple-history-admin.js/wp-content/plugins/simple-history/js/quick-view.js/wp-content/plugins/simple-history/js/vendors.js
Script Paths
/wp-content/plugins/simple-history/js/simple-history.js/wp-content/plugins/simple-history/js/simple-history-admin.js/wp-content/plugins/simple-history/js/quick-view.js/wp-content/plugins/simple-history/js/vendors.js
Version Parameters
simple-history/css/simple-history.css?ver=simple-history/css/simple-history-admin.css?ver=simple-history/css/quick-view.css?ver=simple-history/js/simple-history.js?ver=simple-history/js/simple-history-admin.js?ver=simple-history/js/quick-view.js?ver=simple-history/js/vendors.js?ver=

HTML / DOM Fingerprints

CSS Classes
simple-historysh-indexsh-log-itemsh-log-item-messagesh-log-item-message-textsh-log-item-datesh-log-item-date-timesh-log-item-date-date+53 more
HTML Comments
<!-- @package Simple History --><!-- PHP --><!-- @TODO: make activation multi site aware, as in https://github.com/scribu/wp-proper-network-activation --><!-- User is running to old version of php, add admin notice about that. -->+33 more
Data Attributes
data-simple-history-log-iddata-simple-history-log-datedata-simple-history-log-author-iddata-simple-history-log-leveldata-simple-history-log-message
JS Globals
simple_historySimpleHistoryAdminQuickViewApp
REST Endpoints
/wp-json/simple-history/v1/loggers
FAQ

Frequently Asked Questions about Simple History – Track, Log, and Audit WordPress Changes