Entwicklerschnittstellen
FG Media Audit 0.9.1 deklariert keine eigene stabile externe PHP-API. Die Klassen sind überwiegend interne Implementierung. Relevant für Integrationen sind vor allem WordPress-Endpunkte, Plugin-Konstanten und die Hooks des eingebetteten FG Core.
Plugin-Konstanten
Section titled “Plugin-Konstanten”| Konstante | Wert/Bedeutung |
|---|---|
FG_MEDIA_AUDIT_VERSION |
0.9.1 |
FG_MEDIA_AUDIT_DB_VERSION |
2 |
FG_MEDIA_AUDIT_FILE |
Hauptdatei des Plugins |
FG_MEDIA_AUDIT_DIR |
Plugin-Verzeichnis |
FG_MEDIA_AUDIT_URL |
Plugin-URL |
Aktivierung
Section titled “Aktivierung”Die Aktivierung ruft FG_Media_Audit_Installer::activate() auf. Dabei werden die eigenen Tabellen über dbDelta() angelegt oder aktualisiert.
Der Plugin-Boot erfolgt auf:
add_action('init', 'fg_media_audit_boot', 20);AJAX-Endpunkte
Section titled “AJAX-Endpunkte”Alle AJAX-Endpunkte sind ausschließlich als wp_ajax_* registriert. Es existieren keine wp_ajax_nopriv_*-Varianten.
fg_media_audit_start_usage_scan
Section titled “fg_media_audit_start_usage_scan”Zweck: Startet einen neuen Verwendungsscan.
Berechtigung: manage_options
Nonce: fg_media_audit_usage_scan, Request-Feld nonce
fg_media_audit_scan_usage_batch
Section titled “fg_media_audit_scan_usage_batch”Zweck: Verarbeitet den nächsten Scan-Batch.
Parameter:
scan_id: stringnonce: stringBerechtigung: manage_options
fg_media_audit_direct_edit_load
Section titled “fg_media_audit_direct_edit_load”Zweck: Lädt den aktuellen Zustand eines einzelnen Bild-Attachments für die Inline-Bearbeitung.
Parameter:
attachment_id: intnonce: stringNonce-Action: fg_media_audit_direct_edit
fg_media_audit_direct_edit_save
Section titled “fg_media_audit_direct_edit_save”Zweck: Speichert eine verifizierte Inline-Änderung und legt bei tatsächlichen Änderungen einen History-Eintrag an.
Parameter:
attachment_id: intfingerprint: stringtitle: stringalt: stringcaption: stringdescription: stringfilename: stringconfirm_rename: "0" | "1"nonce: stringBerechtigung: manage_options
Admin-Post-Endpunkte
Section titled “Admin-Post-Endpunkte”fg_media_audit_export
Section titled “fg_media_audit_export”Hook: admin_post_fg_media_audit_export
Zweck: Streamt CSV- oder JSON-Exporte.
Berechtigung: manage_options
Nonce-Action: fg_media_audit_export
fg_media_audit_backup_download
Section titled “fg_media_audit_backup_download”Hook: admin_post_fg_media_audit_backup_download
Zweck: Lädt das JSON-Backup eines History-Eintrags herunter.
Berechtigung: manage_options
Nonce-Action: fg_media_audit_backup_download_{record_id}
REST API und WP-CLI
Section titled “REST API und WP-CLI”FG Media Audit registriert keine eigenen REST-Routen und keine WP-CLI-Kommandos.
Das Composer-Script
composer fg-core:syncführt tools/sync-fg-core.php aus und dient ausschließlich der Entwicklung beziehungsweise Synchronisierung des eingebetteten FG Core.
Admin-Assets und Build
Section titled “Admin-Assets und Build”assets/admin.js und assets/admin.css werden über admin_enqueue_scripts nur auf der FG-Media-Audit-Adminseite geladen. Das Projekt enthält kein package.json; die ausgelieferten Admin-Assets benötigen im Repository keinen Node-/npm-Buildschritt.
Datenbanktabellen
Section titled “Datenbanktabellen”{prefix}fg_media_audit_usage
Section titled “{prefix}fg_media_audit_usage”Verwendungsindex mit unter anderem scan_id, attachment_id, object_id, post_type, usage_type, field_key, usage_count und scanned_at.
{prefix}fg_media_audit_imports
Section titled “{prefix}fg_media_audit_imports”History-/Backup-Tabelle mit Batch-ID, Benutzer-IDs, Status, Zählwerten, backup_data sowie Rollback-Zeitpunkt.
FG-Core-Hooks
Section titled “FG-Core-Hooks”Die folgenden Hooks stammen aus dem im Projekt eingebetteten FG Core 1.1.3. Wird durch ein anderes FUNCKGROUP-Plugin eine höhere kompatible FG-Core-Version ausgewählt, kann deren Verhalten maßgeblich sein.
fg_core_loaded
Section titled “fg_core_loaded”Typ: Action
Parameter:
/** @var \Funckgroup\FGCore\AdminCore $core *//** @var array<string,mixed> $runtime */do_action('fg_core_loaded', $core, $runtime);Zweck: Wird nach Auswahl und Boot der aktiven FG-Core-Runtime ausgelöst.
fg_core_parent_capability
Section titled “fg_core_parent_capability”Typ: Filter
Standard: manage_options
add_filter('fg_core_parent_capability', static function (string $capability): string { return 'manage_options';});fg_core_menu_icon
Section titled “fg_core_menu_icon”Typ: Filter
Standard: dashicons-admin-generic
fg_core_menu_position
Section titled “fg_core_menu_position”Typ: Filter
Standard: 58
fg_core_status_reporting_enabled
Section titled “fg_core_status_reporting_enabled”Typ: Filter
Standard: true, sofern FG_CORE_STATUS_REPORTING nicht ausdrücklich false ist.
add_filter('fg_core_status_reporting_enabled', '__return_false');fg_core_status_endpoint
Section titled “fg_core_status_endpoint”Typ: Filter
Parameter: URL des Status-Endpunkts.
add_filter('fg_core_status_endpoint', static function (string $endpoint): string { return $endpoint;});fg_core_status_payload
Section titled “fg_core_status_payload”Typ: Filter
Parameter: Array des vollständigen Status-Payloads vor JSON-Encoding.
add_filter('fg_core_status_payload', static function (array $payload): array { return $payload;});Bei Erweiterungen sollte vermieden werden, personenbezogene oder vertrauliche Daten in den Status-Payload aufzunehmen.
fg_core_status_report_sent
Section titled “fg_core_status_report_sent”Typ: Action
Parameter: Status-Payload und WordPress-HTTP-Response.
fg_core_status_report_failed
Section titled “fg_core_status_report_failed”Typ: Action
Parameter: Fehlermeldung und HTTP-Statuscode.