WordPress 在 wp-includes/default-constants 定义了 WordPress 常用常量的默认值可以在 wp-config.php 如果是预定义,这里会判断 wp-config.php 定义后,不设置默认值。
wp_initial_constants() 函数
1. 定义了这个和文件大小的常量,不用算了,直接用就行了:
define( 'KB_IN_BYTES', 1024 );define( 'MB_IN_BYTES', 1024 * KB_IN_BYTES );define( 'GB_IN_BYTES', 1024 * MB_IN_BYTES );define( 'TB_IN_BYTES', 1024 * GB_IN_BYTES );
2. 定义与时间相关的常量,不要忘记,直接使用:
define( 'MINUTE_IN_SECONDS', 60 );define( 'HOUR_IN_SECONDS', 60 * MINUTE_IN_SECONDS );define( 'DAY_IN_SECONDS', 24 * HOUR_IN_SECONDS );define( 'WEEK_IN_SECONDS', 7 * DAY_IN_SECONDS );define( 'MONTH_IN_SECONDS', 30 * DAY_IN_SECONDS );define( 'YEAR_IN_SECONDS', 365 * DAY_IN_SECONDS );
3. 定义了 WP_CONTENT_DIR 如果是最常用的常量 wp-config.php 直接定义为:
define( 'WP_CONTENT_DIR', ABSPATH . 'wp-content' );
所以这其实是可以说的 wp-config.php 中将 wp-content 目录设置为任何目录,伪装,让人不知道你用的是什么 WordPress。
4. 若全局变量 $blog_id 没有设置,设置为 1.
5. 定义了 WP_MEMORY_LIMIT 和 WP_MAX_MEMORY_LIMIT 这两个 WordPress 操作时允许的内存。
这两个有点复杂,WordPress 首先wp-config.php 如果没有定义,检查当前是否有定义 PHP 如果没有,系统是否支持在运行过程中修改脚本所需的内存? PHP 如果可以的话,默认设置,WP_MEMORY_LIMIT 多站点设置为 64M,单站设置为 40M。WP_MAX_MEMORY_LIMIT 设置为 256M。
6. 然后WP_DEBUG, WP_DEBUG_DISPLAY, WP_DEBUG_LOG, WP_CACHE, SCRIPT_DEBUG, MEDIA_TRASH, SHORTINIT 如果没有定义,默认定义为 false。
这些变量是什么?简单来说:
WP_DEBUG:是否开启 PHP debug 功能。
WP_DEBUG_DISPLAY:PHP 是否直接显示错误的脚本。
WP_DEBUG_LOG:PHP 错误的脚本是否存储在文件中(wp-content/debug.log)。
WP_CACHE:是否开启 WordPress 默认文件缓存。
SCRIPT_DEBUG:WordPress 加载的 JS 脚本都是 min 如果要进行版本 JS 脚本 debug 如果打开这个常量,它将被加载 min 版本,便于 debug。
MEDIA_TRASH:后台媒体是否有垃圾箱,设置为 true,图片等媒体不会直接删除,而是会进入垃圾箱。
SHORTINIT:用于最小化加载 WordPress。
7. 最后定义 WP_FEATURE_BETTER_PASSWORDS 默认为: true,也就是说,系统会建议用户密码强度更好。
wp_plugin_directory_constants() 函数
WP_CONTENT_URL, WP_PLUGIN_DIR, WP_PLUGIN_URL, PLUGINDIR, WPMU_PLUGIN_DIR, WPMU_PLUGIN_URL, MUPLUGINDIR 这些插件和多站点 mu 默认插件目录和地址,当然在 wp-config.php 将这些目录和地址设置为其他,伪装,让人不知道你用的是什么 WordPress。
wp_cookie_constants() 函数
定义 cookie 一般来说,我们不会改变相关变量的默认值,所以这里有一个详细的解释。
wp_ssl_constants() 函数
它定义了 加密地址是否常用于后台?FORCE_SSL_ADMIN 和 登录页面是否使用加密地址常量FORCE_SSL_LOGIN 默认都为 false,可以在 wp-config.php 中修改。
wp_functionality_constants() 函数
定义自动保存常量 AUTOSAVE_INTERVAL 为 60 秒,垃圾箱常量自动清空 EMPTY_TRASH_DAYS 为 30 天,文章是否开始修改功能常量 WP_POST_REVISIONS 为 false,定期工作时间最长 WP_CRON_LOCK_TIMEOUT 为 60 秒。
wp_templating_constants() 函数
定义模板目录的常量 TEMPLATEPATH,样式文件目录中的常量 STYLESHEETPATH 当然,这个值不能在wp-config.php 中修改设置,你只需要去用。
最后:系统默认主题常量 WP_DEFAULT_THEME。