mirror of
https://github.com/WordPress/WordPress.git
synced 2024-11-16 07:35:39 +01:00
aaf99e6913
WordPress' code just... wasn't. This is now dealt with. Props jrf, pento, netweb, GaryJ, jdgrimes, westonruter, Greg Sherwood from PHPCS, and everyone who's ever contributed to WPCS and PHPCS. Fixes #41057. Built from https://develop.svn.wordpress.org/trunk@42343 git-svn-id: http://core.svn.wordpress.org/trunk@42172 1a063a9b-81f0-0310-95a4-ce76da25c4cd
94 lines
3.2 KiB
PHP
94 lines
3.2 KiB
PHP
<?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.
|
|
*
|
|
* @package WordPress
|
|
*/
|
|
|
|
/** Define ABSPATH as this file's directory */
|
|
if ( ! defined( 'ABSPATH' ) ) {
|
|
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 );
|
|
|
|
/*
|
|
* If wp-config.php exists in the WordPress root, or if it exists in the root and wp-settings.php
|
|
* doesn't, load wp-config.php. The secondary check for wp-settings.php has the added benefit
|
|
* of avoiding cases where the current directory is a nested installation, e.g. / is WordPress(a)
|
|
* and /blog/ is WordPress(b).
|
|
*
|
|
* If neither set of conditions is true, initiate loading the setup process.
|
|
*/
|
|
if ( file_exists( ABSPATH . 'wp-config.php' ) ) {
|
|
|
|
/** The config file resides in ABSPATH */
|
|
require_once( ABSPATH . 'wp-config.php' );
|
|
|
|
} 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 installation */
|
|
require_once( dirname( ABSPATH ) . '/wp-config.php' );
|
|
|
|
} else {
|
|
|
|
// A config file doesn't exist
|
|
|
|
define( 'WPINC', 'wp-includes' );
|
|
require_once( ABSPATH . WPINC . '/load.php' );
|
|
|
|
// Standardize $_SERVER variables across setups.
|
|
wp_fix_server_vars();
|
|
|
|
require_once( ABSPATH . WPINC . '/functions.php' );
|
|
|
|
$path = wp_guess_url() . '/wp-admin/setup-config.php';
|
|
|
|
/*
|
|
* We're going to redirect to setup-config.php. While this shouldn't result
|
|
* in an infinite loop, that's a silly thing to assume, don't you think? If
|
|
* we're traveling in circles, our last-ditch effort is "Need more help?"
|
|
*/
|
|
if ( false === strpos( $_SERVER['REQUEST_URI'], 'setup-config' ) ) {
|
|
header( 'Location: ' . $path );
|
|
exit;
|
|
}
|
|
|
|
define( 'WP_CONTENT_DIR', ABSPATH . 'wp-content' );
|
|
require_once( ABSPATH . WPINC . '/version.php' );
|
|
|
|
wp_check_php_mysql_versions();
|
|
wp_load_translations_early();
|
|
|
|
// Die with an error message
|
|
$die = sprintf(
|
|
/* translators: %s: wp-config.php */
|
|
__( "There doesn't seem to be a %s file. I need this before we can get started." ),
|
|
'<code>wp-config.php</code>'
|
|
) . '</p>';
|
|
$die .= '<p>' . sprintf(
|
|
/* translators: %s: Codex URL */
|
|
__( "Need more help? <a href='%s'>We got it</a>." ),
|
|
__( 'https://codex.wordpress.org/Editing_wp-config.php' )
|
|
) . '</p>';
|
|
$die .= '<p>' . sprintf(
|
|
/* translators: %s: wp-config.php */
|
|
__( "You can create a %s file through a web interface, but this doesn't work for all server setups. The safest way is to manually create the file." ),
|
|
'<code>wp-config.php</code>'
|
|
) . '</p>';
|
|
$die .= '<p><a href="' . $path . '" class="button button-large">' . __( 'Create a Configuration File' ) . '</a>';
|
|
|
|
wp_die( $die, __( 'WordPress › Error' ) );
|
|
}
|