[ Index ] |
PHP Cross Reference of WordPress |
[Summary view] [Print] [Text view]
1 <?php 2 /** 3 * Bootstrap file for setting the ABSPATH constant 4 * and loading the wp-config.php file. The wp-config.php 5 * file will then load the wp-settings.php file, which 6 * will then set up the WordPress environment. 7 * 8 * If the wp-config.php file is not found then an error 9 * will be displayed asking the visitor to set up the 10 * wp-config.php file. 11 * 12 * Will also search for wp-config.php in WordPress' parent 13 * directory to allow the WordPress directory to remain 14 * untouched. 15 * 16 * @package WordPress 17 */ 18 19 /** Define ABSPATH as this file's directory */ 20 if ( ! defined( 'ABSPATH' ) ) { 21 define( 'ABSPATH', __DIR__ . '/' ); 22 } 23 24 /* 25 * The error_reporting() function can be disabled in php.ini. On systems where that is the case, 26 * it's best to add a dummy function to the wp-config.php file, but as this call to the function 27 * is run prior to wp-config.php loading, it is wrapped in a function_exists() check. 28 */ 29 if ( function_exists( 'error_reporting' ) ) { 30 /* 31 * Initialize error reporting to a known set of levels. 32 * 33 * This will be adapted in wp_debug_mode() located in wp-includes/load.php based on WP_DEBUG. 34 * @see http://php.net/manual/en/errorfunc.constants.php List of known error levels. 35 */ 36 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 ); 37 } 38 39 /* 40 * If wp-config.php exists in the WordPress root, or if it exists in the root and wp-settings.php 41 * doesn't, load wp-config.php. The secondary check for wp-settings.php has the added benefit 42 * of avoiding cases where the current directory is a nested installation, e.g. / is WordPress(a) 43 * and /blog/ is WordPress(b). 44 * 45 * If neither set of conditions is true, initiate loading the setup process. 46 */ 47 if ( file_exists( ABSPATH . 'wp-config.php' ) ) { 48 49 /** The config file resides in ABSPATH */ 50 require_once ABSPATH . 'wp-config.php'; 51 52 } elseif ( @file_exists( dirname( ABSPATH ) . '/wp-config.php' ) && ! @file_exists( dirname( ABSPATH ) . '/wp-settings.php' ) ) { 53 54 /** The config file resides one level above ABSPATH but is not part of another installation */ 55 require_once dirname( ABSPATH ) . '/wp-config.php'; 56 57 } else { 58 59 // A config file doesn't exist. 60 61 define( 'WPINC', 'wp-includes' ); 62 require_once ABSPATH . WPINC . '/load.php'; 63 64 // Standardize $_SERVER variables across setups. 65 wp_fix_server_vars(); 66 67 require_once ABSPATH . WPINC . '/functions.php'; 68 69 $path = wp_guess_url() . '/wp-admin/setup-config.php'; 70 71 /* 72 * We're going to redirect to setup-config.php. While this shouldn't result 73 * in an infinite loop, that's a silly thing to assume, don't you think? If 74 * we're traveling in circles, our last-ditch effort is "Need more help?" 75 */ 76 if ( false === strpos( $_SERVER['REQUEST_URI'], 'setup-config' ) ) { 77 header( 'Location: ' . $path ); 78 exit; 79 } 80 81 define( 'WP_CONTENT_DIR', ABSPATH . 'wp-content' ); 82 require_once ABSPATH . WPINC . '/version.php'; 83 84 wp_check_php_mysql_versions(); 85 wp_load_translations_early(); 86 87 // Die with an error message. 88 $die = '<p>' . sprintf( 89 /* translators: %s: wp-config.php */ 90 __( "There doesn't seem to be a %s file. I need this before we can get started." ), 91 '<code>wp-config.php</code>' 92 ) . '</p>'; 93 $die .= '<p>' . sprintf( 94 /* translators: 1: Documentation URL, 2: wp-config.php */ 95 __( 'Need more help? <a href="%1$s">Read the support article on %2$s</a>.' ), 96 __( 'https://wordpress.org/support/article/editing-wp-config-php/' ), 97 '<code>wp-config.php</code>' 98 ) . '</p>'; 99 $die .= '<p>' . sprintf( 100 /* translators: %s: wp-config.php */ 101 __( "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." ), 102 '<code>wp-config.php</code>' 103 ) . '</p>'; 104 $die .= '<p><a href="' . $path . '" class="button button-large">' . __( 'Create a Configuration File' ) . '</a></p>'; 105 106 wp_die( $die, __( 'WordPress › Error' ) ); 107 }
title
Description
Body
title
Description
Body
title
Description
Body
title
Body
Generated: Sat Dec 21 01:00:02 2024 | Cross-referenced by PHPXref 0.7.1 |