bonny/wordpress-simple-history
🔍🕵️♀️ WordPress audit log that track user changes in WordPress admin using a nice activity feed.
npx skills add bonny/wordpress-simple-historyREADME
A WordPress activity log for what matters.
Simple History is a WordPress audit log plugin that logs various things that occur in WordPress and then presents those events in a very nice GUI.
It's great way to view user activity and keep an eye on what the admin users of a website are doing.
Installation
Download from WordPress.org and activate.
Usage
Viewing history events
This screenshot show the user activity feed:
- It has an active filter/search in use:
- only show changes performed by a specific user
- it only shows event that are of type post and pages and media (i.e. images & other uploads)
- A thumbnail is shown for the image that is uploaded

Events with different severity
Simple History uses the log levels specified in the PHP PSR-3 standard.
Quick diff lets you see what's changed

Events have context with extra details
Each logged event can include useful rich formatted extra information. For example: a plugin install can contain author info and a the url to the plugin, and an uploaded image can contain a thumbnail of the image.

Premium Add-on
Simple History Premium adds:
- Log Retention – Set retention policies (30d to forever)
- Export – CSV/JSON export of filtered results
- Stats Dashboard – Visual summaries of activity trends
- Custom Events – Manually log important changes via GUI
- Stealth Mode GUI – Control visibility per user (code-free)
- Sticky Events – Pin important events to top
- Ad-Free – Remove promotional content
The free version is fully functional and will remain free. Premium exists to fund ongoing development and provide pro features for agencies/enterprises.
Plugin API
Developers can easily log their own things using a simple API:
<?php
// This is the easiest and safest way to add messages to the log
// If the plugin is disabled this way will not generate in any error
do_action('simple_history_log', 'This is a logged message');
// Or with some context and with log level debug:
do_action(
'simple_history_log',
'My message about something',
[
'debugThing' => $myThingThatIWantIncludedInTheLoggedEvent,
'anotherThing' => $anotherThing
],
'debug'
);
// Or just debug a message quickly
do_action('simple_history_log_debug', 'My debug message');
// You can also use functions/methods to add events to the log
SimpleLogger()->info("This is a message sent to the log");
// Add events of different severity
SimpleLogger()->info("User admin edited page 'About our company'");
SimpleLogger()->warning("User 'Jessie' deleted user 'Kim'");
SimpleLogger()->debug("Ok, cron job is running!");
You will find more examples in the examples.php file.
Note: Premium users can also add custom events via the GUI at WordPress Admin > Simple History > Add Custom Event without writing code.
Development
Running tests
See the README in tests directory.
Sponsors
Hosting Sponsor
The Simple History website is proudly hosted by Oderland, a Swedish web hosting provider known for their reliable hosting and excellent support.
Support Development
Support the free version of Simple History by becoming a sponsor. You can sponsor using PayPal or becoming a GitHub Sponsor.
