Created
July 30, 2015 17:05
-
-
Save nickrroberts/5b85b2676c9d9af0d3d4 to your computer and use it in GitHub Desktop.
Environment-Dependent Config
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 | |
| /** | |
| * The base configurations of the WordPress. | |
| * | |
| * This file is a custom version of the wp-config file to help | |
| * with setting it up for multiple environments. Inspired by | |
| * Leevi Grahams ExpressionEngine Config Bootstrap | |
| * (http://ee-garage.com/nsm-config-bootstrap) | |
| * | |
| * @package WordPress | |
| * @author Nick Roberts @nickrroberts, Abban Dunne @abbandunne | |
| * | |
| */ | |
| // Define Environments - may be a string or array of options for an environment | |
| $environments = array( | |
| 'development' => '.dev', | |
| ); | |
| // Get Server name | |
| $server_name = $_SERVER['SERVER_NAME']; | |
| foreach($environments AS $key => $env){ | |
| if(is_array($env)){ | |
| foreach ($env as $option){ | |
| if(stristr($server_name, $option)){ | |
| define('ENVIRONMENT', $key); | |
| break 2; | |
| } | |
| } | |
| } else { | |
| if(stristr($server_name, $env)){ | |
| define('ENVIRONMENT', $key); | |
| break; | |
| } | |
| } | |
| } | |
| // If no environment is set default to production | |
| if(!defined('ENVIRONMENT')) define('ENVIRONMENT', 'production'); | |
| // Define different DB connection details depending on environment | |
| switch(ENVIRONMENT){ | |
| case 'development': | |
| define('DB_NAME', 'hf'); | |
| define('DB_USER', 'root'); | |
| define('DB_PASSWORD', 'root'); | |
| define('DB_HOST', 'localhost'); | |
| define('WP_SITEURL', 'http://hf.dev'); | |
| define('WP_HOME', 'http://hf.dev'); | |
| break; | |
| case 'production': | |
| break; | |
| } | |
| $url = parse_url(getenv('DATABASE_URL') ? getenv('DATABASE_URL') : getenv('CLEARDB_DATABASE_URL')); | |
| if(!defined('DB_NAME')) | |
| define('DB_NAME', trim($url['path'], '/')); | |
| if(!defined('DB_USER')) | |
| define('DB_USER', $url['user']); | |
| if(!defined('DB_PASSWORD')) | |
| define('DB_PASSWORD', $url['pass']); | |
| if(!defined('DB_HOST')) | |
| define('DB_HOST', $url['host']); | |
| if(!defined('DB_CHARSET')) | |
| define('DB_CHARSET', 'utf8'); | |
| if(!defined('DB_COLLATE')) | |
| define('DB_COLLATE', ''); | |
| /**#@+ | |
| * Authentication Unique Keys and Salts. | |
| * | |
| * Change these to different unique phrases! | |
| * You can generate these using the {@link https://api.wordpress.org/secret-key/1.1/salt/ WordPress.org secret-key service} | |
| * You can change these at any point in time to invalidate all existing cookies. This will force all users to have to log in again. | |
| * | |
| * @since 2.6.0 | |
| */ | |
| define('AUTH_KEY', getenv('AUTH_KEY')); | |
| define('SECURE_AUTH_KEY', getenv('SECURE_AUTH_KEY')); | |
| define('LOGGED_IN_KEY', getenv('LOGGED_IN_KEY')); | |
| define('NONCE_KEY', getenv('NONCE_KEY')); | |
| define('AUTH_SALT', getenv('AUTH_SALT')); | |
| define('SECURE_AUTH_SALT', getenv('SECURE_AUTH_SALT')); | |
| define('LOGGED_IN_SALT', getenv('LOGGED_IN_SALT')); | |
| define('NONCE_SALT', getenv('NONCE_SALT')); | |
| /**#@-*/ | |
| /** | |
| * WordPress Database Table prefix. | |
| * | |
| * You can have multiple installations in one database if you give each a unique | |
| * prefix. Only numbers, letters, and underscores please! | |
| */ | |
| $table_prefix = 'm5w_'; | |
| /** | |
| * For developers: WordPress debugging mode. | |
| * | |
| * Change this to true to enable the display of notices during development. | |
| * It is strongly recommended that plugin and theme developers use WP_DEBUG | |
| * in their development environments. | |
| */ | |
| define('WP_DEBUG', false); | |
| /* That's all, stop editing! Happy blogging. */ | |
| /** Absolute path to the WordPress directory. */ | |
| if ( !defined('ABSPATH') ) | |
| define('ABSPATH', dirname(__FILE__) . '/'); | |
| /** Sets up WordPress vars and included files. */ | |
| require_once(ABSPATH . 'wp-settings.php'); |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment