bonny / WordPress-Simple-History

🔍🕵️‍♀️ WordPress audit log that track user changes in WordPress admin using a nice activity feed.
https://simple-history.com
309 stars 70 forks source link
activity audit feed history log user-activity wordpress

logo Simple History

Plugin rating: 5 stars Number of active installs: over 100K Number of monthly downloads

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:

Simple History screenshot

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

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 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.

Development

Running tests

See the README in tests directory.

Sponsors

Support the free version of Simple History by becoming a sponsor. You can sponsor using PayPal or becoming a GitHub Sponsor.