author | ymh <ymh.work@gmail.com> |
Mon, 14 Oct 2019 17:39:30 +0200 | |
changeset 7 | cf61fcea0001 |
parent 5 | 5e2f62d02dcd |
child 9 | 177826044cd9 |
permissions | -rw-r--r-- |
0 | 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 */ |
|
7
cf61fcea0001
resynchronize code repo with production
ymh <ymh.work@gmail.com>
parents:
5
diff
changeset
|
20 |
if ( ! defined( 'ABSPATH' ) ) { |
cf61fcea0001
resynchronize code repo with production
ymh <ymh.work@gmail.com>
parents:
5
diff
changeset
|
21 |
define( 'ABSPATH', dirname( __FILE__ ) . '/' ); |
cf61fcea0001
resynchronize code repo with production
ymh <ymh.work@gmail.com>
parents:
5
diff
changeset
|
22 |
} |
0 | 23 |
|
24 |
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 ); |
|
25 |
||
5 | 26 |
/* |
27 |
* If wp-config.php exists in the WordPress root, or if it exists in the root and wp-settings.php |
|
28 |
* doesn't, load wp-config.php. The secondary check for wp-settings.php has the added benefit |
|
29 |
* of avoiding cases where the current directory is a nested installation, e.g. / is WordPress(a) |
|
30 |
* and /blog/ is WordPress(b). |
|
31 |
* |
|
32 |
* If neither set of conditions is true, initiate loading the setup process. |
|
33 |
*/ |
|
0 | 34 |
if ( file_exists( ABSPATH . 'wp-config.php') ) { |
35 |
||
36 |
/** The config file resides in ABSPATH */ |
|
37 |
require_once( ABSPATH . 'wp-config.php' ); |
|
38 |
||
7
cf61fcea0001
resynchronize code repo with production
ymh <ymh.work@gmail.com>
parents:
5
diff
changeset
|
39 |
} elseif ( @file_exists( dirname( ABSPATH ) . '/wp-config.php' ) && ! @file_exists( dirname( ABSPATH ) . '/wp-settings.php' ) ) { |
0 | 40 |
|
7
cf61fcea0001
resynchronize code repo with production
ymh <ymh.work@gmail.com>
parents:
5
diff
changeset
|
41 |
/** The config file resides one level above ABSPATH but is not part of another installation */ |
cf61fcea0001
resynchronize code repo with production
ymh <ymh.work@gmail.com>
parents:
5
diff
changeset
|
42 |
require_once( dirname( ABSPATH ) . '/wp-config.php' ); |
0 | 43 |
|
44 |
} else { |
|
45 |
||
46 |
// A config file doesn't exist |
|
47 |
||
48 |
define( 'WPINC', 'wp-includes' ); |
|
49 |
require_once( ABSPATH . WPINC . '/load.php' ); |
|
50 |
||
51 |
// Standardize $_SERVER variables across setups. |
|
52 |
wp_fix_server_vars(); |
|
53 |
||
54 |
require_once( ABSPATH . WPINC . '/functions.php' ); |
|
55 |
||
56 |
$path = wp_guess_url() . '/wp-admin/setup-config.php'; |
|
57 |
||
5 | 58 |
/* |
59 |
* We're going to redirect to setup-config.php. While this shouldn't result |
|
60 |
* in an infinite loop, that's a silly thing to assume, don't you think? If |
|
61 |
* we're traveling in circles, our last-ditch effort is "Need more help?" |
|
62 |
*/ |
|
63 |
if ( false === strpos( $_SERVER['REQUEST_URI'], 'setup-config' ) ) { |
|
64 |
header( 'Location: ' . $path ); |
|
65 |
exit; |
|
66 |
} |
|
67 |
||
68 |
define( 'WP_CONTENT_DIR', ABSPATH . 'wp-content' ); |
|
69 |
require_once( ABSPATH . WPINC . '/version.php' ); |
|
70 |
||
71 |
wp_check_php_mysql_versions(); |
|
72 |
wp_load_translations_early(); |
|
73 |
||
0 | 74 |
// Die with an error message |
7
cf61fcea0001
resynchronize code repo with production
ymh <ymh.work@gmail.com>
parents:
5
diff
changeset
|
75 |
$die = sprintf( |
cf61fcea0001
resynchronize code repo with production
ymh <ymh.work@gmail.com>
parents:
5
diff
changeset
|
76 |
/* translators: %s: wp-config.php */ |
cf61fcea0001
resynchronize code repo with production
ymh <ymh.work@gmail.com>
parents:
5
diff
changeset
|
77 |
__( "There doesn't seem to be a %s file. I need this before we can get started." ), |
cf61fcea0001
resynchronize code repo with production
ymh <ymh.work@gmail.com>
parents:
5
diff
changeset
|
78 |
'<code>wp-config.php</code>' |
cf61fcea0001
resynchronize code repo with production
ymh <ymh.work@gmail.com>
parents:
5
diff
changeset
|
79 |
) . '</p>'; |
cf61fcea0001
resynchronize code repo with production
ymh <ymh.work@gmail.com>
parents:
5
diff
changeset
|
80 |
$die .= '<p>' . sprintf( |
cf61fcea0001
resynchronize code repo with production
ymh <ymh.work@gmail.com>
parents:
5
diff
changeset
|
81 |
/* translators: %s: Codex URL */ |
cf61fcea0001
resynchronize code repo with production
ymh <ymh.work@gmail.com>
parents:
5
diff
changeset
|
82 |
__( "Need more help? <a href='%s'>We got it</a>." ), |
cf61fcea0001
resynchronize code repo with production
ymh <ymh.work@gmail.com>
parents:
5
diff
changeset
|
83 |
__( 'https://codex.wordpress.org/Editing_wp-config.php' ) |
cf61fcea0001
resynchronize code repo with production
ymh <ymh.work@gmail.com>
parents:
5
diff
changeset
|
84 |
) . '</p>'; |
cf61fcea0001
resynchronize code repo with production
ymh <ymh.work@gmail.com>
parents:
5
diff
changeset
|
85 |
$die .= '<p>' . sprintf( |
cf61fcea0001
resynchronize code repo with production
ymh <ymh.work@gmail.com>
parents:
5
diff
changeset
|
86 |
/* translators: %s: wp-config.php */ |
cf61fcea0001
resynchronize code repo with production
ymh <ymh.work@gmail.com>
parents:
5
diff
changeset
|
87 |
__( "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." ), |
cf61fcea0001
resynchronize code repo with production
ymh <ymh.work@gmail.com>
parents:
5
diff
changeset
|
88 |
'<code>wp-config.php</code>' |
cf61fcea0001
resynchronize code repo with production
ymh <ymh.work@gmail.com>
parents:
5
diff
changeset
|
89 |
) . '</p>'; |
0 | 90 |
$die .= '<p><a href="' . $path . '" class="button button-large">' . __( "Create a Configuration File" ) . '</a>'; |
91 |
||
92 |
wp_die( $die, __( 'WordPress › Error' ) ); |
|
93 |
} |