Created
October 31, 2012 23:58
-
-
Save isra00/3990752 to your computer and use it in GitHub Desktop.
Intercepts the Wordpress bootstrap and loads one site or another depending on the domain name requested.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<?php | |
/** | |
* Bootstrap file for setting the ABSPATH constant | |
* and loading the wp-config.php file. The wp-config.php | |
* file will then load the wp-settings.php file, which | |
* will then set up the WordPress environment. | |
* | |
* If the wp-config.php file is not found then an error | |
* will be displayed asking the visitor to set up the | |
* wp-config.php file. | |
* | |
* Will also search for wp-config.php in WordPress' parent | |
* directory to allow the WordPress directory to remain | |
* untouched. | |
* | |
* @internal This file must be parsable by PHP4. | |
* | |
* @package WordPress | |
*/ | |
/** Define ABSPATH as this file's directory */ | |
define( 'ABSPATH', dirname(__FILE__) . '/' ); | |
error_reporting( E_CORE_ERROR | E_CORE_WARNING | E_COMPILE_ERROR | E_ERROR | E_WARNING | E_PARSE | E_USER_ERROR | E_USER_WARNING | E_RECOVERABLE_ERROR ); | |
define('I_WP_CONFIG', ABSPATH . 'sites/' . $_SERVER['SERVER_NAME'] .'/wp-config.php' ); | |
define('I_WP_CONTENT', ABSPATH . 'sites/' . $_SERVER['SERVER_NAME'] . '/wp-content' ); | |
if ( file_exists( I_WP_CONFIG ) ) { | |
/** The config file resides in ABSPATH */ | |
require_once( I_WP_CONFIG ); | |
define( 'WP_CONTENT_DIR', I_WP_CONTENT ); | |
} elseif ( file_exists( dirname(ABSPATH) . '/wp-config.php' ) && ! file_exists( dirname(ABSPATH) . '/wp-settings.php' ) ) { | |
/** The config file resides one level above ABSPATH but is not part of another install */ | |
require_once( dirname(ABSPATH) . '/wp-config.php' ); | |
} else { | |
// A config file doesn't exist | |
// Set a path for the link to the installer | |
if ( strpos($_SERVER['PHP_SELF'], 'wp-admin') !== false ) | |
$path = 'setup-config.php'; | |
else | |
$path = 'wp-admin/setup-config.php'; | |
define( 'WPINC', 'wp-includes' ); | |
define( 'WP_CONTENT_DIR', I_WP_CONTENT ); | |
require_once( ABSPATH . WPINC . '/load.php' ); | |
require_once( ABSPATH . WPINC . '/version.php' ); | |
wp_check_php_mysql_versions(); | |
wp_load_translations_early(); | |
require_once( ABSPATH . WPINC . '/functions.php' ); | |
// Die with an error message | |
$die = __( "There doesn't seem to be a <code>wp-config.php</code> file. I need this before we can get started." ) . '</p>'; | |
$die .= '<p>' . __( "Need more help? <a href='http://codex.wordpress.org/Editing_wp-config.php'>We got it</a>." ) . '</p>'; | |
$die .= '<p>' . __( "You can create a <code>wp-config.php</code> file through a web interface, but this doesn't work for all server setups. The safest way is to manually create the file." ) . '</p>'; | |
$die .= '<p><a href="' . $path . '" class="button">' . __( "Create a Configuration File" ) . '</a>'; | |
wp_die( $die, __( 'WordPress › Error' ) ); | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment