{"id":11375,"date":"2026-05-30T08:30:06","date_gmt":"2026-05-30T00:30:06","guid":{"rendered":"https:\/\/aeosub.com\/bat-activity-log\/"},"modified":"2026-05-30T08:30:06","modified_gmt":"2026-05-30T00:30:06","slug":"bat-activity-log","status":"publish","type":"post","link":"https:\/\/aeosub.com\/zh\/bat-activity-log\/","title":{"rendered":"Bat Activity Log"},"content":{"rendered":"<div class=\"post-img\" style=\"margin-bottom: 25px\"><img decoding=\"async\" src=\"https:\/\/ps.w.org\/bat-activity-log\/assets\/banner-1544x500.png?rev=3554266\" alt=\"Bat Activity Log\" style=\"width: 100%;height: auto;border-radius: 12px\"><\/div>\n<div class=\"plugin-info-card\" style=\"border: 1px solid #e2e8f0;border-radius: 10px;overflow: hidden;margin-bottom: 30px;font-family: -apple-system, system-ui, sans-serif;background: #fff\">\n<table style=\"width: 100%;border-collapse: collapse;font-size: 14px\">\n<tr style=\"border-bottom: 1px solid #edf2f7\">\n<th style=\"padding: 15px 20px;text-align: left;width: 35%;color: #4a5568;background: #fcfcfc\"><img decoding=\"async\" src=\"https:\/\/ps.w.org\/bat-activity-log\/assets\/icon-256x256.png?rev=3554266\" style=\"width: 40px;height: 40px;border-radius: 6px;margin-right: 12px;vertical-align: middle\"> Developer<\/th>\n<td style=\"padding: 15px 20px;font-weight: 500\"><a href=\"https:\/\/profiles.wordpress.org\/jerryscg\/\" target=\"_blank\" rel=\"noopener\">Jaroslav Svetlik<\/a><\/td>\n<\/tr>\n<tr style=\"border-bottom: 1px solid #edf2f7\">\n<th style=\"padding: 12px 20px;text-align: left;color: #4a5568;background: #fcfcfc\">Version<\/th>\n<td style=\"padding: 12px 20px\">v0.3.2<\/td>\n<\/tr>\n<tr style=\"border-bottom: 1px solid #edf2f7\">\n<th style=\"padding: 12px 20px;text-align: left;color: #4a5568;background: #fcfcfc\">Active Installs<\/th>\n<td style=\"padding: 12px 20px\">0 +<\/td>\n<\/tr>\n<tr style=\"border-bottom: 1px solid #edf2f7\">\n<th style=\"padding: 12px 20px;text-align: left;color: #4a5568;background: #fcfcfc\">Requires \/ Tested<\/th>\n<td style=\"padding: 12px 20px\">6.2 \/ 7.0<\/td>\n<\/tr>\n<tr style=\"border-bottom: 1px solid #edf2f7\">\n<th style=\"padding: 12px 20px;text-align: left;color: #4a5568;background: #fcfcfc\">Last Updated<\/th>\n<td style=\"padding: 12px 20px\">2026-05-29 11:52pm GMT<\/td>\n<\/tr>\n<tr>\n<th style=\"padding: 12px 20px;text-align: left;color: #4a5568;background: #fcfcfc\">Official Link<\/th>\n<td style=\"padding: 12px 20px\"><a href=\"https:\/\/wordpress.org\/plugins\/bat-activity-log\/\" target=\"_blank\" style=\"text-decoration: none;color: #4a3bca;font-weight: bold\" rel=\"noopener\">View Details \u2192<\/a><\/td>\n<\/tr>\n<\/table><\/div>\n<div class=\"plugin-short-desc\" style=\"margin: 20px 0;padding: 12px 15px;background: #f9fafb;border-left: 4px solid #4a3bca;border-radius: 6px;font-style: italic;color: #4a5568\">Track important WordPress activity with detailed audit logs, filters, alerts, reports, and integrity checks.<\/div>\n<p>Bat Activity Log helps site owners and administrators understand what changed, who changed it, and when it happened.<\/p>\n<p>The plugin records activity across users, content, media, comments, plugins, themes, settings, updates, privacy workflows, and other core WordPress operations. Logs are stored in a custom indexed table for fast filtering and large datasets.<\/p>\n<h4>Key features<\/h4>\n<ul>\n<li>Track logins, logouts, failed logins, profile changes, registrations, role changes, and password updates.<\/li>\n<li>Record post, page, media, comment, taxonomy, menu, widget, and settings activity.<\/li>\n<li>Monitor plugin, theme, and WordPress update activity.<\/li>\n<li>Filter logs by event type, action, severity, user, object, IP address, and date range.<\/li>\n<li>Use saved views, quick filters, bulk actions, CSV export, and a structured log detail drawer.<\/li>\n<li>Configure retention cleanup, privacy controls, alert rules, and scheduled reports.<\/li>\n<li>Verify log integrity with a tamper-evident hash chain.<\/li>\n<li>Use WP-CLI commands for stats, cleanup, export, repair, reporting, benchmarking, and integrity verification.<\/li>\n<\/ul>\n<h4>Event coverage<\/h4>\n<p>Bat Activity Log currently covers:<\/p>\n<ul>\n<li>User authentication and account events<\/li>\n<li>Content and revision events<\/li>\n<li>Media library activity<\/li>\n<li>Comment activity<\/li>\n<li>Plugin and theme lifecycle events<\/li>\n<li>Core, update, and database upgrade events<\/li>\n<li>Settings, widget, permalink, and menu changes<\/li>\n<li>Privacy request and erasure workflow events<\/li>\n<li>File editor changes<\/li>\n<li>WooCommerce events when WooCommerce is active<\/li>\n<li>Supported form submission events for Contact Form 7, Gravity Forms, WPForms, and Elementor Pro Forms<\/li>\n<\/ul>\n<h4>Integrity and privacy<\/h4>\n<p>Each log row includes integrity metadata that can be verified from the Tools screen or WP-CLI. Privacy controls include IP logging toggles, optional IP anonymization, user-agent logging controls, and WordPress personal data exporter and eraser integration.<\/p>\n<h4>WP-CLI examples<\/h4>\n<ul>\n<li><code>wp bat-activity-log stats<\/code><\/li>\n<li><code>wp bat-activity-log cleanup --days=90 --batch-size=2000<\/code><\/li>\n<li><code>wp bat-activity-log export --file=\/tmp\/activity-log.csv<\/code><\/li>\n<li><code>wp bat-activity-log repair<\/code><\/li>\n<li><code>wp bat-activity-log verify-integrity<\/code><\/li>\n<li><code>wp bat-activity-log report --days=7 --format=text<\/code><\/li>\n<li><code>wp bat-activity-log benchmark --iterations=10 --per-page=100<\/code><\/li>\n<\/ul>","protected":false},"excerpt":{"rendered":"<p>Track important WordPress activity with detailed audit logs, filters, alerts, reports, and integrity checks.<\/p>","protected":false},"author":1,"featured_media":9317,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"inline_featured_image":false,"footnotes":""},"categories":[252],"tags":[696,720,697,1093,664,555],"class_list":["post-11375","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-trends","tag-activity-log","tag-admin","tag-audit-log","tag-monitoring","tag-security","tag-wordpress-plugin"],"_links":{"self":[{"href":"https:\/\/aeosub.com\/zh\/wp-json\/wp\/v2\/posts\/11375","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/aeosub.com\/zh\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/aeosub.com\/zh\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/aeosub.com\/zh\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/aeosub.com\/zh\/wp-json\/wp\/v2\/comments?post=11375"}],"version-history":[{"count":0,"href":"https:\/\/aeosub.com\/zh\/wp-json\/wp\/v2\/posts\/11375\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/aeosub.com\/zh\/wp-json\/wp\/v2\/media\/9317"}],"wp:attachment":[{"href":"https:\/\/aeosub.com\/zh\/wp-json\/wp\/v2\/media?parent=11375"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/aeosub.com\/zh\/wp-json\/wp\/v2\/categories?post=11375"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/aeosub.com\/zh\/wp-json\/wp\/v2\/tags?post=11375"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}