Audit Export is a comprehensive WordPress plugin designed to help site administrators and developers analyze and report on the entity structure and overall usage of their WordPress site. The plugin provides detailed audits of various WordPress components and allows you to export this data in multiple formats.
The plugin provides comprehensive WP-CLI commands for all operations:
wp audit-export list
Shows all available audit reports with their ID, group, description, type, and last processed date.
wp audit-export run [<audit_id>] [--all] [--format=<format>]
Examples:
* wp audit-export run – Interactive audit selection
* wp audit-export run --all – Process all audits
* wp audit-export run site_report – Run specific audit
* wp audit-export run content_types --format=csv – Run audit with specific output format
wp audit-export export <audit_id> [--file=<file>] [--format=<format>]
Examples:
* wp audit-export export site_report – Export to stdout
* wp audit-export export content_types --file=content_types.csv – Export to file
* wp audit-export export plugins --format=json --file=plugins.json – Export as JSON
wp audit-export cron <action>
Actions:
* status – Show cron status and next run time
* enable – Enable cron processing
* disable – Disable cron processing
* run – Manually trigger cron execution
* schedule – Schedule cron events
wp audit-export test-connection
Tests the configured remote endpoint connection.
wp audit-export force-post <audit_id>
Manually post a specific audit to the remote endpoint.
wp audit-export info
Displays plugin version, statistics, and configuration status.
Basic Settings:
* Enable Remote Post: Turn on posting to remote endpoints
* Remote URL: Endpoint URL for receiving audit data
* Site Name: Identifier for this WordPress site
Authentication:
* Authentication Type: None, Basic, or Bearer Token
* Username/Password: For Basic Authentication
* Bearer Token: For token-based authentication
Advanced:
* Timeout: Request timeout in seconds (30-900)
* Verify SSL: SSL certificate verification
* Debug Mode: Enable detailed logging
audit_export_complete – Fired after an audit completes processingaudit_export_before_process – Fired before processing an auditaudit_export_after_process – Fired after processing an auditaudit_export_post_url – Modify the remote post URLaudit_export_post_data – Modify data before remote postingaudit_export_post_site_info – Customize site information in remote postsaudit_export_post_request_args – Modify HTTP request argumentsaudit_export_{audit_id}_headers – Customize CSV headers for specific auditsaudit_export_{audit_id}_data – Modify audit data before savingTo create a custom audit:
Audit_Export_Audit abstract classprepare_data() and process_data()$label, $description, $group, $data_typeaudit_export_register_audits actionExample:
class My_Custom_Audit extends Audit_Export_Audit {
protected $label = 'My Custom Audit';
protected $description = 'Audits custom functionality';
protected $group = 'custom';
public function prepare_data() {
// Return array of items to process
}
public function process_data( $item ) {
// Process individual item and return data row
}
}
The plugin creates a table {prefix}_audit_export_reports with columns:
* id – Primary key
* audit_name – Audit identifier
* audit_data – JSON-encoded audit results
* created_at – Timestamp
* created_by – User ID
For bug reports and feature requests, please use the plugin support forum.
This plugin stores audit data in your WordPress database and optionally saves CSV files to your server. When remote posting is enabled, audit data is sent to configured external endpoints. No data is sent to third parties without explicit configuration.