WordPress管理员可轻松管理配置,而无需编写任何代码。 然后,这些基本配置设置将存储在数据库内部的wp-options
表中 。 但是,WordPress还有一个单独的配置文件 ,称为wp-config.php
,可用于进一步的自定义 。
Wp-config是安装自托管WordPress网站时用于保存 自定义托管数据 (数据库名称,数据库主机等)的文件。 您还可以向该文件添加其他配置选项 ,使用它们可以启用或禁用诸如调试,缓存,多站点,SSL登录,自动更新等功能。
![wp-config前端](https://i-blog.csdnimg.cn/blog_migrate/bc2fa3fd552ee1a60e67e2dd690c1404.png)
本地化和编辑wp-config
当您下载WordPress时, wp-config.php
文件尚未出现在安装文件夹中。 但是,有一个文件名为wp-config-sample.php
,您需要将其复制并重命名为wp-config.php
。 然后,您需要将基本连接数据 (数据库名称,数据库用户名,数据库密码,主机名,安全密钥)添加到此文件。
如果您的托管服务提供商使用Softaculous自动安装程序 (大多数情况下这样做),则该过程将自动进行 ,当通过以下方式连接服务器时,您会在根文件夹中找到wp-config.php
和wp-config-sample.php
文件。 FTP。
![wp-config.php](https://i-blog.csdnimg.cn/blog_migrate/f5d139180b5d1fb1e8446dfb4d8c462f.png)
请注意, 设置顺序很重要 ,因此请勿重新排列。 编辑wp-config文件时,请始终使用代码编辑器,例如Sublime Text,Atom,Notepad ++,Visual Studio Code或TextMate。 文字处理器(Microsoft Office,Google Docs,LibreOffice等)将使您的文件混乱, 从不使用它们来编辑代码文件。
如果两种配置中都存在相同类型的配置(例如,本地URL),则保存到wp-config中的设置将覆盖数据库 。
代码片段的放置位置
在本文中,您可以找到20个代码段 ,可用于自定义wp-config.php
文件。
默认情况下,大多数这些配置选项在wp-config中都不存在 。 如果要使用它们,则需要将它们添加到<?php
标记和代码注释的开始下方 ,但要在MySQL设置上方 。
![片段的位置](https://i-blog.csdnimg.cn/blog_migrate/1977e2fd939e172bdd4579efdbb08bcf.png)
1.打开WP调试器
您可以在wp-config文件中打开和关闭WordPress调试器。 默认情况下 ,以下第一个代码段确实存在于wp-config中(在数据库配置下方),但其值设置为false
。 要打开调试器,请将其值更改为true
。
第二段代码打开了前端调试器 , 该调试器使您可以调试CSS和JavaScript脚本。 仅在从未投入生产的开发站点上使用调试器。
# Turns on PHP debugger
define( 'WP_DEBUG', true );
# Turns on CSS and JavaScript debugger
define( 'SCRIPT_DEBUG', true );
2.更改数据库表前缀
WordPress默认使用wp_
表前缀。 如果您想要一个更安全的数据库,则可以选择一个更复杂的表前缀 。
默认情况下,wp-config文件中也存在此配置选项,您只需要将$table_prefix
变量的值更改为更安全的值即可。
仅当您具有全新安装或在开发站点上时才更改表前缀,因为在生产站点上这样做很冒险。
# Creates secure table prefix for database tables
# Only numbers, letters, underscores
$table_prefix = 'a81kJt_';
3.更改WordPress URL
您可以在WordPress管理员中的Settings > General
菜单下Settings > General
WordPress和家庭URL 。 但是,您也可以在wp-config文件中配置这些URL。
在wp-config文件中定义WP_SITEURL
和WP_HOME
常量具有两个优点:
- 如果由于某种原因而无法访问管理区域 , 可以挽救生命
- 它可以减少网站加载时的数据库调用次数 (因为wp-config会覆盖数据库中保存的选项)
WP_SITEURL
指定用户可以访问您的网站的URL,而WP_HOME
定义WP安装的根目录 。 如果您将WordPress安装到根文件夹中(这是默认选项),则它们的值相同 。
# Specifies site URL
define('WP_SITEURL', 'http://www.yourwebsite.com');
# Specifies home URL (the root of the WP install)
define('WP_HOME', 'http://www.yourwebsite.com/wordpress');
4.一定时间后清空垃圾桶
您可以使WordPress在一定数量的日期后自动清空垃圾箱 。 该常数的最小值是0,在这种情况下,您将禁用垃圾回收功能 。
# Empties trash after 7 days
define( 'EMPTY_TRASH_DAYS', 7 );
5.启用WordPress缓存
您可以使用以下代码行启用WordPress的内置缓存功能 。 大多数缓存插件,例如W3 Total Cache和WP Super Cache ,都会自动将此片段添加到wp-config文件中。
# Enables WP cache
define( 'WP_CACHE', true );
6.启用WordPress多站点
通过将WP_ALLOW_MULTISITE
常量添加到wp-config文件中,可以启用WordPress的多站点功能 ,该功能允许您创建WP网站的网络 。
# Turns on WordPress Multisite
define( 'WP_ALLOW_MULTISITE', true );
7.重定向不存在的子域和子文件夹
有时,访问者会在URL栏中键入不存在的子域或子文件夹。 您可以在NOBLOGREDIRECT
常量的帮助下将这些用户重定向到您域中的另一个页面 ,例如重定向到主页。
# Redirects non-existing subdomains and subfolders to homepage
define( 'NOBLOGREDIRECT', 'http://www.yourwebsite.com' );
8.管理帖子修订
WordPress具有内置的版本控制系统 ,这意味着它可以保存您创建的所有后期修订 。 经常编辑的帖子可以有多达25-30个修订版本,一段时间后可能会占用大量数据库空间。
使用WP_POST_REVISIONS
常量,可以最大限度地增加后期修订的数量或完全禁用该功能 。
# Completely disables post revisions
define( 'WP_POST_REVISIONS', false );
# Allows maximum 5 post revisions
define( 'WP_POST_REVISIONS', 5 );
9.启用内置数据库优化
WordPress具有内置的数据库优化功能,您可以通过将以下行添加到wp-config文件中来打开它。
在本文中,我详细介绍了该工具的工作方式。 需要注意的最重要的一点是, 任何人 (即使是未登录的访问者)都可以使用数据库优化屏幕。 仅在要运行优化工具的时间内启用该功能,然后别忘了禁用它。
# Turns on database optimization feature
define( 'WP_ALLOW_REPAIR', true );
10.禁用自动更新
WordPress默认运行次要版本和翻译文件的 自动后台更新 。
您可以根据以下规则通过设置AUTOMATIC_UPDATER_DISABLED
(对于所有更新)和WP_AUTO_UPDATE_CORE
(对于核心更新)常量的值来启用和禁用此功能 :
# Disables all automatic updates
define( 'AUTOMATIC_UPDATER_DISABLED', true );
# Disables all core updates
define( 'WP_AUTO_UPDATE_CORE', false );
# Enables all core updates, including minor and major releases
define( 'WP_AUTO_UPDATE_CORE', true );
# Enables core updates only for minor releases (default)
define( 'WP_AUTO_UPDATE_CORE', 'minor' );
11.增加PHP内存限制
有时,您可能希望增加托管服务提供商已分配给站点PHP内存限制 ,尤其是当您收到可怕的“已用完xxxxxx字节的内存大小”消息时。 为此,将WP_MEMORY_LIMIT
用于网站 ,将WP_MAX_MEMORY_LIMIT
用于管理区域 。
请注意,某些主机不允许手动增加内存限制,在这种情况下,请与他们联系并请他们为您执行此操作。
# Sets memory limit for the website
define( 'WP_MEMORY_LIMIT', '96M' );
# Sets memory limit for the admin area
define( 'WP_MAX_MEMORY_LIMIT', '128M' );
12.强制SSL登录
为了提高网站的安全性,您可以强制用户每次通过SSL登录 。 FORCE_SSL_ADMIN
常量使用户登录和管理会话都必须使用SSL。
请注意,WordPress 4.0中已弃用了以前有效的FORCE_SSL_LOGIN
常量,因此现在您必须始终使用FORCE_SSL_ADMIN
。
# Forces SSL login
define( 'FORCE_SSL_ADMIN', true );
13.禁用插件和主题编辑/更新
管理员可以在WordPress管理区域中编辑插件和主题文件 。 如果使用DISALLOW_FILE_EDIT
常量禁用插件和主题编辑器,则可以使站点更安全。 因此,如果您的网站被黑客入侵,黑客将无法访问您的插件和主题文件。
您还可以使用DISALLOW_FILE_MODS
禁用插件和主题更新功能 。 这样,管理员将无法在管理区域中更新插件和主题。
# Disables the plugin and theme editor
define( 'DISALLOW_FILE_EDIT', true );
# Disables the plugin & theme editor PLUS the plugin & theme update
define( 'DISALLOW_FILE_MODS', true );
14.删除图像编辑
每当您编辑图像时,WordPress 都会以不同的分辨率保存它 。 但是,如果您不想使用较早的图像集,则可以通过将IMAGE_EDIT_OVERWRITE
常量的值设置为true
来删除它们 。
因此,当您编辑图像时,较早的图像文件将被新的图像文件覆盖 ,并且只有最后一组将被保存在wp-content
文件夹中。
# Cleans up image edits
define( 'IMAGE_EDIT_OVERWRITE', true );
15.禁用未过滤HTML
尽管低级用户(订阅者,贡献者,作者) 无法在WordPress中发布未经过滤HTML ,但允许编辑者和管理员这样做。
通过将以下代码行添加到wp-config文件中,可以防止高级用户发布未经过滤HTML来提高安全性。
# Disables unfiltered HTML for admins and editors
define( 'DISALLOW_UNFILTERED_HTML', true );
翻译自: https://www.hongkiat.com/blog/wpconfig-snippets-configure-wordpress/