The deprecated_file_included WordPress PHP action fires when a deprecated file is called.
Usage
add_action('deprecated_file_included', 'your_custom_function', 10, 4); function your_custom_function($file, $replacement, $version, $message) { // your custom code here }
Parameters
$file
(string) – The file that was called.$replacement
(string) – The file that should have been included based on ABSPATH.$version
(string) – The version of WordPress that deprecated the file.$message
(string) – A message regarding the change.
More information
See WordPress Developer Resources: deprecated_file_included
Examples
Log Deprecated File
Log information about the deprecated file to a custom log file.
add_action('deprecated_file_included', 'log_deprecated_file', 10, 4); function log_deprecated_file($file, $replacement, $version, $message) { // Log deprecated file information to a custom log file error_log("Deprecated file: {$file} | Replacement: {$replacement} | Version: {$version} | Message: {$message}", 3, "/path/to/your/custom.log"); }
Send Email Alert
Send an email alert when a deprecated file is called.
add_action('deprecated_file_included', 'email_deprecated_file_alert', 10, 4); function email_deprecated_file_alert($file, $replacement, $version, $message) { // Compose email message $email_subject = "Deprecated File Alert"; $email_body = "Deprecated file: {$file}\nReplacement: {$replacement}\nVersion: {$version}\nMessage: {$message}"; // Send email to the administrator wp_mail('[email protected]', $email_subject, $email_body); }
Add Admin Notice
Display an admin notice when a deprecated file is called.
add_action('deprecated_file_included', 'admin_notice_deprecated_file', 10, 4); function admin_notice_deprecated_file($file, $replacement, $version, $message) { // Store the notice message in a transient set_transient('deprecated_file_notice', "Deprecated file: {$file} | Replacement: {$replacement} | Version: {$version} | Message: {$message}", 60); // Display the notice on admin pages add_action('admin_notices', 'show_deprecated_file_notice'); } function show_deprecated_file_notice() { // Get the notice message from the transient $notice = get_transient('deprecated_file_notice'); // If the notice exists, display it and delete the transient if ($notice) { echo "<div class='notice notice-error'><p>{$notice}</p></div>"; delete_transient('deprecated_file_notice'); } }
Disable Deprecated File Usage
Prevent the use of deprecated files in the website.
add_action('deprecated_file_included', 'disable_deprecated_file', 10, 4); function disable_deprecated_file($file, $replacement, $version, $message) { // Exit the script execution with a message die("A deprecated file ({$file}) was called. Please update your code to use the replacement file ({$replacement})."); }
Track Deprecated File Usage
Keep track of deprecated file usage by updating an option in the WordPress database.
add_action('deprecated_file_included', 'track_deprecated_file_usage', 10, 4); function track_deprecated_file_usage($file, $replacement, $version, $message) { // Get the current deprecated files usage from the database $deprecated_files_usage = get_option('deprecated_files_usage', array()); // Increment the usage count for the deprecated file if (isset($deprecated_files_usage[$file])) { $deprecated_files_usage[$file]++; } else { $deprecated_files_usage[$file] = 1; } // Update the deprecated files usage in the database update_option('deprecated_files_usage', $deprecated_files_usage); }
This example tracks the number of times each deprecated file is called by incrementing the count in the deprecated_files_usage
option in the WordPress database.