我使用phpfog.com进行托管,使用github.com进行问题跟踪等。我有两个遥控器设置,一个到phpfog.com,另一个到github。
在phpfog的后端管理中,您可以定义环境变量。我在那里这样做了,并希望在我的wp-config文件中使用它们。
下面是我使用的代码:
/** Hardened Salts for use on github.com, phpfog.com, etc.*/
$AUTH_KEY = getenv('AUTH_KEY');
$SECURE_AUTH_KEY = getenv('SECURE_AUTH_KEY');
$LOGGED_IN_KEY = getenv('LOGGED_IN_KEY');
$NONCE_KEY = getenv('NONCE_KEY');
$AUTH_SALT = getenv('AUTH_SALT');
$SECURE_AUTH_SALT = getenv('SECURE_AUTH_SALT');
$LOGGED_IN_SALT = getenv('LOGGED_IN_SALT');
$NONCE_SALT = getenv('NONCE_SALT');
define('AUTH_KEY', $AUTH_KEY);
define('SECURE_AUTH_KEY', $SECURE_AUTH_KEY);
define('LOGGED_IN_KEY', $LOGGED_IN_KEY);
define('NONCE_KEY', $NONCE_KEY);
define('AUTH_SALT', $AUTH_SALT);
define('SECURE_AUTH_SALT', $SECURE_AUTH_SALT);
define('LOGGED_IN_SALT', $LOGGED_IN_SALT);
define('NONCE_SALT', $NONCE_SALT);必须有一种更干净的方式来完成这个…
发布于 2012-02-16 04:41:15
您可以将其缩短两倍,将函数结果作为常量值传递,而无需中间变量:
define('AUTH_KEY', getenv('AUTH_KEY'));或者在循环中这样做:
$vars = array('AUTH_KEY', 'SECURE_AUTH_KEY', ...);
foreach ($vars as $var) {
define($var, getenv($var));
}发布于 2017-02-27 08:25:38
我更喜欢使用下面的方法:
<?php
//GET HOSTNAME INFO
$hostname = $_SERVER['SERVER_NAME'];
//VERIFY WHICH ENVIRONMENT THE APP IS RUNNING
switch ($hostname) {
case 'development.dev':
define('WP_ENV', 'development');
define('WP_DEBUG', true);
break;
case 'staging.mywebsite.com':
define('WP_ENV', 'staging');
define('WP_DEBUG', true);
break;
case 'www.mywebsite.com':
define('WP_ENV', 'production');
define('WP_DEBUG', false);
break;
default:
define('WP_ENV', 'production');
define('WP_DEBUG', false);
}
?>发布于 2021-04-05 00:25:32
来自WordPress 5.5.0的
WordPress为具有3个不同可能值的环境变量添加了一个新函数。
您可以使用wp_get_environment_type()函数来获取当前环境。
使用示例:
If(wp_get_environment_type() === 'development') {
// do something
} else {
// do something
}默认情况下,如果WP_ENVIRONMENT_TYPE为空或无效( development、staging和production除外),则返回production。
您可以通过wp-config.php文件定义development或staging环境。
define( 'WP_ENVIRONMENT_TYPE', 'development' );https://stackoverflow.com/questions/9300950
复制相似问题