Manchmal möchten Sie sicherstellen, dass ein bestimmtes essentielles Plugin auf Ihrer WordPress-Website niemals gelöscht wird, oder Sie möchten zumindest benachrichtigt werden, wann immer dies geschieht.
Stellen Sie sich vor, Sie haben ein Steuer-Plugin, das die Steuer in Ihrem WooCommerce- oder Easy Digital Downloads-Shop-System berechnet. Wenn dieses Plugin aus irgendeinem Grund deaktiviert wird, werden alle Ihre Einkaufspreise falsch berechnet und es kann eine Weile dauern, bis Sie das bemerken.
Es gibt keinen 100%igen Schutz, um zu verhindern, dass ein Plugin auf Ihrer WordPress-Website deaktiviert wird, aber wenn es passiert, können Sie den folgenden Code in ein mu-Plugin wie plugin-logger.php kopieren und es dem Ordner wp-content/mu-plugins hinzufügen.
<?php
/*
* Plugin Name: Log deleted plugins by WP Staging
* Plugin URI: https://wp-staging.com
* Description: Write a log file whenever a plugin is deleted or deactivated plugins.
*
* This is a must-use standalone plugin.
*
* Author: WP Staging
* Version: 1.0
* Author URI: https://wp-staging.com
*/
add_action('deactivated_plugin', function ($plugin_file) {
$datetime = date('d-m-Y H:i:s');
$message = "[{$datetime}] Deactivated plugin {$plugin_file}";
error_log(
"$messagen",
3,
WP_CONTENT_DIR . "/7263767234-deleted-plugins.log"
);
wp_mail('youremailaddress@example.com', 'Plugin deactivated on example.com', $message);
}, 20, 2);
add_action('deleted_plugin', function ($plugin_file, $deleted) {
if ($deleted) {
$datetime = date('d-m-Y H:i:s');
$message = "[{$datetime}] Deleted plugin {$plugin_file}";
error_log(
"[{$datetime}] Deleted plugin {$plugin_file}n",
3,
WP_CONTENT_DIR . "/7263767234-deleted-plugins.log"
);
wp_mail('youremailaddress@example.com', 'Plugin deleted on example.com', $message);
}
}, 20, 2);Sobald eines der installierten Plugins entweder durch die WordPress-Hooks deleted_plugin oder deactivated_plugin deaktiviert oder gelöscht wird, erhalten Sie eine E-Mail-Benachrichtigung. Der Bericht wird auch in der Datei wp-content//7263767234-deleted-plugins.log protokolliert.
Aus Sicherheitsgründen empfehle ich, den Pfad und den Dateinamen anzupassen.