WordPress audit log that track user changes in WordPress admin using a nice activity feed.
Permalink
Failed to load latest commit information.
bin
css
dropins
examples
img
inc
js
languages
loggers
templates
tests
.editorconfig
.gitignore
.travis.yml
CHANGELOG.md
README.md
composer.json
gruntfile.js
index.php
package.json
phpcs.xml.dist
phpunit.xml
readme.txt
uninstall.php

README.md

Simple History 2 – a simple, lightweight, extendable logger for WordPress

Simple History is a WordPress 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 users are doing.

Download from WordPress.org:
https://wordpress.org/plugins/simple-history/

Build Status Rating at wordpress.org Number of downloads WordPress plugin WordPress

Screenshots

Viewing history events

This screenshot show the log view + it also shows the filter function in use: the log only shows event that are of type post and pages and media (i.e. images & other uploads), and only events initiated by a specific user.

Simple History screenshot

Events with different severity

Simple History uses the log levels specified in the PHP PSR-3 standard.

Simple History screenshot

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.

Simple History screenshot

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
apply_filters("simple_history_log", "This is a logged message");

// Or with some context and with log level debug:
apply_filters(
	'simple_history_log',
	'My message about something',
	[
		'debugThing' => $myThingThatIWantIncludedInTheLoggedEvent,
		'anotherThing' => $anotherThing
	],
	'debug'
);

// Or just debug a message quickly
apply_filters('simple_history_log_debug', 'My debug message');

// You can olsy 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.