angelovcom.net

Unnamed repository; edit this file 'description' to name the repository.
Log | Files | Refs

wp-load.php (3900B)


      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: %s: Documentation URL. */
     95 		__( "Need more help? <a href='%s'>We got it</a>." ),
     96 		__( 'https://wordpress.org/support/article/editing-wp-config-php/' )
     97 	) . '</p>';
     98 	$die .= '<p>' . sprintf(
     99 		/* translators: %s: wp-config.php */
    100 		__( "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." ),
    101 		'<code>wp-config.php</code>'
    102 	) . '</p>';
    103 	$die .= '<p><a href="' . $path . '" class="button button-large">' . __( 'Create a Configuration File' ) . '</a></p>';
    104 
    105 	wp_die( $die, __( 'WordPress &rsaquo; Error' ) );
    106 }