Make WordPress Core


Ignore:
Timestamp:
05/26/2010 03:13:16 AM (13 years ago)
Author:
nacin
Message:

Prevent super admins from shooting themselves in the foot. props jorbin. Checks blog names against an array (filterable) of reserved keywords for subdirectory installs. fixes #13304.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/wp-admin/ms-edit.php

    r14910 r14928  
    149149        if ( ! preg_match( '/(--)/', $blog['domain'] ) && preg_match( '|^([a-zA-Z0-9-])+$|', $blog['domain'] ) )
    150150            $domain = strtolower( $blog['domain'] );
     151
     152        // If not a subdomain install, make sure the domain isn't a reserved word
     153        if ( ! is_subdomain_install() ) {
     154            $subdirectory_reserved_names = apply_filters( 'subdirectory_reserved_names', array( 'page', 'comments', 'blog', 'files', 'feed' ) );
     155            if ( in_array( $domain, $subdirectory_reserved_names ) )
     156                wp_die( sprintf( __('The following words are reserved for use by WordPress functions and cannot be used as blog names: <code>%s</code>' ), implode( '</code>, <code>', $subdirectory_reserved_names ) ) );
     157        }
     158
    151159        $email = sanitize_email( $blog['email'] );
    152160        $title = $blog['title'];
Note: See TracChangeset for help on using the changeset viewer.