[ Index ] |
PHP Cross Reference of WordPress |
[Summary view] [Print] [Text view]
1 <?php 2 /** 3 * Sets up the default filters and actions for Multisite. 4 * 5 * If you need to remove a default hook, this file will give you the priority 6 * for which to use to remove the hook. 7 * 8 * Not all of the Multisite default hooks are found in ms-default-filters.php 9 * 10 * @package WordPress 11 * @subpackage Multisite 12 * @see default-filters.php 13 * @since 3.0.0 14 */ 15 16 add_action( 'init', 'ms_subdomain_constants' ); 17 18 // Functions. 19 add_action( 'update_option_blog_public', 'update_blog_public', 10, 2 ); 20 add_filter( 'option_users_can_register', 'users_can_register_signup_filter' ); 21 add_filter( 'site_option_welcome_user_email', 'welcome_user_msg_filter' ); 22 23 // Users. 24 add_filter( 'wpmu_validate_user_signup', 'signup_nonce_check' ); 25 add_action( 'init', 'maybe_add_existing_user_to_blog' ); 26 add_action( 'wpmu_new_user', 'newuser_notify_siteadmin' ); 27 add_action( 'wpmu_activate_user', 'add_new_user_to_blog', 10, 3 ); 28 add_action( 'wpmu_activate_user', 'wpmu_welcome_user_notification', 10, 3 ); 29 add_action( 'after_signup_user', 'wpmu_signup_user_notification', 10, 4 ); 30 add_action( 'network_site_new_created_user', 'wp_send_new_user_notifications' ); 31 add_action( 'network_site_users_created_user', 'wp_send_new_user_notifications' ); 32 add_action( 'network_user_new_created_user', 'wp_send_new_user_notifications' ); 33 add_filter( 'sanitize_user', 'strtolower' ); 34 add_action( 'deleted_user', 'wp_delete_signup_on_user_delete', 10, 3 ); 35 36 // Roles. 37 add_action( 'switch_blog', 'wp_switch_roles_and_user', 1, 2 ); 38 39 // Blogs. 40 add_filter( 'wpmu_validate_blog_signup', 'signup_nonce_check' ); 41 add_action( 'wpmu_activate_blog', 'wpmu_welcome_notification', 10, 5 ); 42 add_action( 'after_signup_site', 'wpmu_signup_blog_notification', 10, 7 ); 43 add_filter( 'wp_normalize_site_data', 'wp_normalize_site_data', 10, 1 ); 44 add_action( 'wp_validate_site_data', 'wp_validate_site_data', 10, 3 ); 45 add_action( 'wp_insert_site', 'wp_maybe_update_network_site_counts_on_update', 10, 1 ); 46 add_action( 'wp_update_site', 'wp_maybe_update_network_site_counts_on_update', 10, 2 ); 47 add_action( 'wp_delete_site', 'wp_maybe_update_network_site_counts_on_update', 10, 1 ); 48 add_action( 'wp_insert_site', 'wp_maybe_transition_site_statuses_on_update', 10, 1 ); 49 add_action( 'wp_update_site', 'wp_maybe_transition_site_statuses_on_update', 10, 2 ); 50 add_action( 'wp_update_site', 'wp_maybe_clean_new_site_cache_on_update', 10, 2 ); 51 add_action( 'wp_initialize_site', 'wp_initialize_site', 10, 2 ); 52 add_action( 'wp_initialize_site', 'wpmu_log_new_registrations', 100, 2 ); 53 add_action( 'wp_initialize_site', 'newblog_notify_siteadmin', 100, 1 ); 54 add_action( 'wp_uninitialize_site', 'wp_uninitialize_site', 10, 1 ); 55 add_action( 'update_blog_public', 'wp_update_blog_public_option_on_site_update', 1, 2 ); 56 57 // Site meta. 58 add_action( 'added_blog_meta', 'wp_cache_set_sites_last_changed' ); 59 add_action( 'updated_blog_meta', 'wp_cache_set_sites_last_changed' ); 60 add_action( 'deleted_blog_meta', 'wp_cache_set_sites_last_changed' ); 61 add_filter( 'get_blog_metadata', 'wp_check_site_meta_support_prefilter' ); 62 add_filter( 'add_blog_metadata', 'wp_check_site_meta_support_prefilter' ); 63 add_filter( 'update_blog_metadata', 'wp_check_site_meta_support_prefilter' ); 64 add_filter( 'delete_blog_metadata', 'wp_check_site_meta_support_prefilter' ); 65 add_filter( 'get_blog_metadata_by_mid', 'wp_check_site_meta_support_prefilter' ); 66 add_filter( 'update_blog_metadata_by_mid', 'wp_check_site_meta_support_prefilter' ); 67 add_filter( 'delete_blog_metadata_by_mid', 'wp_check_site_meta_support_prefilter' ); 68 add_filter( 'update_blog_metadata_cache', 'wp_check_site_meta_support_prefilter' ); 69 70 // Register nonce. 71 add_action( 'signup_hidden_fields', 'signup_nonce_fields' ); 72 73 // Template. 74 add_action( 'template_redirect', 'maybe_redirect_404' ); 75 add_filter( 'allowed_redirect_hosts', 'redirect_this_site' ); 76 77 // Administration. 78 add_filter( 'term_id_filter', 'global_terms', 10, 2 ); 79 add_action( 'after_delete_post', '_update_posts_count_on_delete' ); 80 add_action( 'delete_post', '_update_blog_date_on_post_delete' ); 81 add_action( 'transition_post_status', '_update_blog_date_on_post_publish', 10, 3 ); 82 add_action( 'transition_post_status', '_update_posts_count_on_transition_post_status', 10, 3 ); 83 84 // Counts. 85 add_action( 'admin_init', 'wp_schedule_update_network_counts' ); 86 add_action( 'update_network_counts', 'wp_update_network_counts', 10, 0 ); 87 foreach ( array( 'wpmu_new_user', 'make_spam_user', 'make_ham_user' ) as $action ) { 88 add_action( $action, 'wp_maybe_update_network_user_counts', 10, 0 ); 89 } 90 91 // These counts are handled by wp_update_network_counts() on Multisite: 92 remove_action( 'admin_init', 'wp_schedule_update_user_counts' ); 93 remove_action( 'wp_update_user_counts', 'wp_schedule_update_user_counts' ); 94 95 foreach ( array( 'make_spam_blog', 'make_ham_blog', 'archive_blog', 'unarchive_blog', 'make_delete_blog', 'make_undelete_blog' ) as $action ) { 96 add_action( $action, 'wp_maybe_update_network_site_counts', 10, 0 ); 97 } 98 unset( $action ); 99 100 // Files. 101 add_filter( 'wp_upload_bits', 'upload_is_file_too_big' ); 102 add_filter( 'import_upload_size_limit', 'fix_import_form_size' ); 103 add_filter( 'upload_mimes', 'check_upload_mimes' ); 104 add_filter( 'upload_size_limit', 'upload_size_limit_filter' ); 105 add_action( 'upload_ui_over_quota', 'multisite_over_quota_message' ); 106 107 // Mail. 108 add_action( 'phpmailer_init', 'fix_phpmailer_messageid' ); 109 110 // Disable somethings by default for multisite. 111 add_filter( 'enable_update_services_configuration', '__return_false' ); 112 if ( ! defined( 'POST_BY_EMAIL' ) || ! POST_BY_EMAIL ) { // Back compat constant. 113 add_filter( 'enable_post_by_email_configuration', '__return_false' ); 114 } 115 if ( ! defined( 'EDIT_ANY_USER' ) || ! EDIT_ANY_USER ) { // Back compat constant. 116 add_filter( 'enable_edit_any_user_configuration', '__return_false' ); 117 } 118 add_filter( 'force_filtered_html_on_import', '__return_true' ); 119 120 // WP_HOME and WP_SITEURL should not have any effect in MS. 121 remove_filter( 'option_siteurl', '_config_wp_siteurl' ); 122 remove_filter( 'option_home', '_config_wp_home' ); 123 124 // Some options changes should trigger site details refresh. 125 add_action( 'update_option_blogname', 'clean_site_details_cache', 10, 0 ); 126 add_action( 'update_option_siteurl', 'clean_site_details_cache', 10, 0 ); 127 add_action( 'update_option_post_count', 'clean_site_details_cache', 10, 0 ); 128 add_action( 'update_option_home', 'clean_site_details_cache', 10, 0 ); 129 130 // If the network upgrade hasn't run yet, assume ms-files.php rewriting is used. 131 add_filter( 'default_site_option_ms_files_rewriting', '__return_true' ); 132 133 // Allow multisite domains for HTTP requests. 134 add_filter( 'http_request_host_is_external', 'ms_allowed_http_request_hosts', 20, 2 );
title
Description
Body
title
Description
Body
title
Description
Body
title
Body
Generated: Sat Nov 23 01:00:02 2024 | Cross-referenced by PHPXref 0.7.1 |