wp-config.php 是WordPress一个最基本也是最重要的配置文件,你可以在这个文件中配置数据库信息,网站语言等等。今天介绍几个你可能不知道的 wp-config.php 设置选项。
WP_DEFAULT_THEME 设置默认主题
默认情况下,全新安装的 WordPress 默认都会使用自带的最新主题作为默认主题。如果你希望选择其他主题作为默认主题,那你通过定义 WP_DEFAULT_THEME 常量来实现。比如我要定义默认主题为 wpdx 主题,可以使用:
1 | define( 'WP_DEFAULT_THEME', 'wpdx' ); // wpdx 为主题的文件夹名称 |
define( 'WP_DEFAULT_THEME', 'wpdx' ); // wpdx 为主题的文件夹名称
比较特殊的是,你可以直接在 wp-config-sample.php 这个样例文件中添加,而不是 wp-config.php (全新的WordPress安装包是没有 wp-config.php 的),这是因为 WordPress 可以自动检测 wp-config-sample.php 的预设选项是否有修改和补充(数据库信息除外),然后直接应用到新安装的 WordPress 副本中(也就是自动将设置复制到生成的 wp-config.php 中)。
AUTOMATIC_UPDATER_DISABLED 禁用自动更新
WordPress 3.7+ 新增了后台自动更新功能,如果你需要禁用,可以使用下面的代码:
1 | define( 'AUTOMATIC_UPDATER_DISABLED', true ); |
define( 'AUTOMATIC_UPDATER_DISABLED', true );
更详细的设置,可以查看 WordPress 3.7+ 配置后台自动更新
MEDIA_TRASH 启用媒体库的回收站
你是否很懊悔一不小心删除了媒体库的某个文件?其实,你可以启用媒体库的回收站,这样就不用担心勿删文件了:
1 | define( 'MEDIA_TRASH', true ); |
define( 'MEDIA_TRASH', true );
当然了,你也可以设置定期清空回收站:
1 | define( 'EMPTY_TRASH_DAYS', 30 ); // 30 天 |
define( 'EMPTY_TRASH_DAYS', 30 ); // 30 天
要注意一下,这个定期清空回收站,是包括 文章、页面、媒体附件、评论 等的回收站哦!不要设置为 0 天,否则相当于直接彻底删除啦!!
CORE_UPGRADE_SKIP_NEW_BUNDLED 更新时跳过 wp-content 目录
WordPress 主版本更新时,会更新 wp-content 目录下的新主题,如果你一直使用自己的主题,不需要更新WP自带的主题,那你可以使用下面的代码,让 WordPress 更新时跳过 wp-content 目录,这样还可以减少更新所花费的时间哦:
1 | define( 'CORE_UPGRADE_SKIP_NEW_BUNDLED', true ); |
define( 'CORE_UPGRADE_SKIP_NEW_BUNDLED', true );
ALLOW_UNFILTERED_UPLOADS 不限制管理员上传的文件类型
出于安全考虑,WordPress默认只允许上传 图片、文档、音频和视频文件(查看更多),如果你是软件开发者,想上传其他类型的文件,但是又不想每次都使用 FTP 上传,那你可以使用下面的代码,不限制管理员上传的文件类型:
1 | define( 'ALLOW_UNFILTERED_UPLOADS', true ); |
define( 'ALLOW_UNFILTERED_UPLOADS', true );
这样,除了管理员角色以外,其他用户还是受限制的。
在多语言网站中动态设置 WPLANG
如果你有一个多语言的网站,需要设置后台和主题的语言,你可以使用一些小窍门来检测用户浏览器的语言,然后使用这个来定义语言常量 WPLANG。
首先,我们要创建一个 wp-lang.php 文件,然后添加下面的代码到里面,最后上传到 和 wp-config.php 相同的目录中:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 | <?php // 启动会话 session_start(); // 如果链接 url 中有 "lang" 参数... if( isset( $_GET[ 'lang' ] ) ) { // ...根据这个url的参数来设置 WPLANG 会话变量... $_SESSION[ 'WPLANG' ] = $_GET[ 'lang' ]; // ...然后使用 WPLANG 会话变量定义 WPLANG 常量 define( 'WPLANG', $_SESSION[ 'WPLANG' ] ); // 如果链接 url 中没有 "lang" 参数... } else { // 如果 WPLANG 会话变量已经设置... if( isset( $_SESSION[ 'WPLANG' ] ) ) { // ...使用 WPLANG 会话变量定义 WPLANG 常量 define( 'WPLANG', $_SESSION[ 'WPLANG' ] ); // 如果 WPLANG 会话变量没有设置... } else { // 设置 WPLANG 常量为你自己的默认语言(或者留空,如果不需要的话) define( 'WPLANG', 'zh_CN' ); } } ?> |
<?php // 启动会话 session_start(); // 如果链接 url 中有 "lang" 参数... if( isset( $_GET[ 'lang' ] ) ) { // ...根据这个url的参数来设置 WPLANG 会话变量... $_SESSION[ 'WPLANG' ] = $_GET[ 'lang' ]; // ...然后使用 WPLANG 会话变量定义 WPLANG 常量 define( 'WPLANG', $_SESSION[ 'WPLANG' ] ); // 如果链接 url 中没有 "lang" 参数... } else { // 如果 WPLANG 会话变量已经设置... if( isset( $_SESSION[ 'WPLANG' ] ) ) { // ...使用 WPLANG 会话变量定义 WPLANG 常量 define( 'WPLANG', $_SESSION[ 'WPLANG' ] ); // 如果 WPLANG 会话变量没有设置... } else { // 设置 WPLANG 常量为你自己的默认语言(或者留空,如果不需要的话) define( 'WPLANG', 'zh_CN' ); } } ?>
然后在 wp-config.php 中,使用下面的代码来替换定义 WPLANG 的那句代码:
1 | require_once( dirname( __FILE__ ) . '/wp-lang.php' ); |
require_once( dirname( __FILE__ ) . '/wp-lang.php' );
这样,你的用户就可以通过点击带有参数 lang=zh_CN 的按钮来切换后台和主题的语言啦!
WPCOM_API_KEY 定义WordPress.com API Key
如果你使用了某个插件,需要定义 WordPress.com API Key(比如 Jetpack 或 Akismet),并且有很多网站要维护,如果每次安装插件都需要输入 WordPress.com API Key ,这将很恼人也很浪费时间。那么你可以使用下面的代码直接定义 WordPress.com API Key:
1 | define( 'WPCOM_API_KEY', '你的WordPress.com API key' ); |
define( 'WPCOM_API_KEY', '你的WordPress.com API key' );
参考资料:http://code.tutsplus.com/articles/new-wp-config-tweaks-you-probably-dont-know--wp-35396
更多关于 wp-config.php 的配置,请阅读 wp-config.php 文档
本文你可能不知道的几个 wp-config.php 常量设置到此结束。为了成材,松树从不向四季如春的温室外献殷勤。小编再次感谢大家对我们的支持!