WordPress環境ごとにデータベース情報などを切り分ける
本体の機能としてありそうだけど、肥大化すると消えそうだし痒いところはコード・プラグイン書いてーなスタンスなのかな?
とりあえず wp-configにかいておく。
define('ENV_PRODUCTION','env_production');
define('ENV_STAGING','env_staging');
define('ENV_PREVIEW','env_preview');
define('ENV_LOCAL','env_local');
switch (isset($_SERVER['SERVER_NAME']) ? $_SERVER['SERVER_NAME'] : '') {
case 'example.com':
define('ENV',ENV_PRODUCTION);
define('DB_NAME', 'xxx');
define('DB_USER', 'xxx');
define('DB_PASSWORD', 'xxx');
define('DB_HOST', 'xxx');
break;
case 'staging.example.com':
define('ENV',ENV_STAGING);
define('DB_NAME', 'xxx');
define('DB_USER', 'xxx');
define('DB_PASSWORD', 'xxx');
define('DB_HOST', 'xxx');
break;
case 'preview.example.com':
define('ENV',ENV_STAGING);
define('DB_NAME', 'xxx');
define('DB_USER', 'xxx');
define('DB_PASSWORD', 'xxx');
define('DB_HOST', 'xxx');
break;
default:
define('ENV',ENV_LOCAL);
define('DB_NAME', 'example');
define('DB_USER', 'root');
define('DB_PASSWORD', 'root');
define('DB_HOST', 'localhost');
break;
}
コメントを残す