The mature_blog WordPress action fires when the ‘mature’ status is added to a site.
Usage
add_action('mature_blog', 'your_custom_function'); function your_custom_function($site_id) { // your custom code here }
Parameters
$site_id
(int): The site ID.
More information
See WordPress Developer Resources: mature_blog
Examples
Notify the admin when a site becomes mature
Send an email notification to the admin when a site gets the ‘mature’ status.
add_action('mature_blog', 'notify_admin_mature_site'); function notify_admin_mature_site($site_id) { $admin_email = get_option('admin_email'); $subject = 'A site has been marked as mature'; $message = "Site ID: $site_id has been marked as mature."; wp_mail($admin_email, $subject, $message); }
Log mature sites to a file
Log the site IDs of mature sites in a text file.
add_action('mature_blog', 'log_mature_sites'); function log_mature_sites($site_id) { $logfile = '/path/to/your/mature_sites.log'; $log_entry = "Mature site ID: $site_id" . PHP_EOL; file_put_contents($logfile, $log_entry, FILE_APPEND); }
Add a custom mature site message to the site’s front page
Display a custom message on the front page of mature sites.
add_action('mature_blog', 'add_mature_site_message'); function add_mature_site_message($site_id) { switch_to_blog($site_id); update_option('mature_site_message', 'This site contains mature content. Viewer discretion is advised.'); restore_current_blog(); }
Deactivate specific plugins for mature sites
Deactivate a specific plugin for sites that become mature.
add_action('mature_blog', 'deactivate_plugins_for_mature_sites'); function deactivate_plugins_for_mature_sites($site_id) { $plugin = 'plugin-folder/plugin-file.php'; switch_to_blog($site_id); deactivate_plugins($plugin); restore_current_blog(); }
Remove the default theme for mature sites
Switch to a different theme for mature sites.
add_action('mature_blog', 'change_theme_for_mature_sites'); function change_theme_for_mature_sites($site_id) { $new_theme = 'new-theme-folder-name'; switch_to_blog($site_id); switch_theme($new_theme); restore_current_blog(); }