Wordpress 3.7
[autoinstalls/wordpress.git] / wp-includes / ms-default-filters.php
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 // Users
17 add_filter( 'wpmu_validate_user_signup', 'signup_nonce_check' );
18 add_action( 'init', 'maybe_add_existing_user_to_blog' );
19 add_action( 'wpmu_new_user', 'newuser_notify_siteadmin' );
20 add_action( 'wpmu_activate_user', 'add_new_user_to_blog', 10, 3 );
21 add_filter( 'sanitize_user', 'strtolower' );
22
23 // Blogs
24 add_filter( 'wpmu_validate_blog_signup', 'signup_nonce_check' );
25 add_action( 'wpmu_new_blog', 'wpmu_log_new_registrations', 10, 2 );
26 add_action( 'wpmu_new_blog', 'newblog_notify_siteadmin', 10, 2 );
27
28 // Register Nonce
29 add_action( 'signup_hidden_fields', 'signup_nonce_fields' );
30
31 // Template
32 add_action( 'template_redirect', 'maybe_redirect_404' );
33 add_filter( 'allowed_redirect_hosts', 'redirect_this_site' );
34
35 // Administration
36 add_filter( 'term_id_filter', 'global_terms', 10, 2 );
37 add_action( 'publish_post', 'update_posts_count' );
38 add_action( 'delete_post', '_update_blog_date_on_post_delete' );
39 add_action( 'transition_post_status', '_update_blog_date_on_post_publish', 10, 3 );
40
41 // Counts
42 add_action( 'admin_init', 'wp_schedule_update_network_counts');
43 add_action( 'update_network_counts', 'wp_update_network_counts');
44 foreach ( array( 'user_register', 'deleted_user', 'wpmu_new_user', 'make_spam_user', 'make_ham_user' ) as $action )
45         add_action( $action, 'wp_maybe_update_network_user_counts' );
46 foreach ( array( 'make_spam_blog', 'make_ham_blog', 'archive_blog', 'unarchive_blog', 'make_delete_blog', 'make_undelete_blog' ) as $action )
47         add_action( $action, 'wp_maybe_update_network_site_counts' );
48 unset( $action );
49
50 // Files
51 add_filter( 'wp_upload_bits', 'upload_is_file_too_big' );
52 add_filter( 'import_upload_size_limit', 'fix_import_form_size' );
53 add_filter( 'upload_mimes', 'check_upload_mimes' );
54 add_filter( 'upload_size_limit', 'upload_size_limit_filter' );
55 add_action( 'upload_ui_over_quota', 'multisite_over_quota_message' );
56
57 // Mail
58 add_action( 'phpmailer_init', 'fix_phpmailer_messageid' );
59
60 // Disable somethings by default for multisite
61 add_filter( 'enable_update_services_configuration', '__return_false' );
62 if ( ! defined('POST_BY_EMAIL') || ! POST_BY_EMAIL ) // back compat constant.
63         add_filter( 'enable_post_by_email_configuration', '__return_false' );
64 if ( ! defined('EDIT_ANY_USER') || ! EDIT_ANY_USER ) // back compat constant.
65         add_filter( 'enable_edit_any_user_configuration', '__return_false' );
66 add_filter( 'force_filtered_html_on_import', '__return_true' );
67
68 // WP_HOME and WP_SITEURL should not have any effect in MS
69 remove_filter( 'option_siteurl', '_config_wp_siteurl' );
70 remove_filter( 'option_home',    '_config_wp_home'    );
71
72 // If the network upgrade hasn't run yet, assume ms-files.php rewriting is used.
73 add_filter( 'default_site_option_ms_files_rewriting', '__return_true' );
74
75 // Whitelist multisite domains for HTTP requests
76 add_filter( 'http_request_host_is_external', 'ms_allowed_http_request_hosts', 20, 2 );