- 状态
- 已解决
- 解决于
- WP Rocket lastest version
问题概述
函数 rocket_clean_domain 接受一个参数:$lang
它通常在不带参数的情况下被调用,但在一种情况下发送了错误的参数:
wp-rocket/inc/common/purge.php 第 22 行
add_action( 'update_option_theme_mods_' . get_option( 'stylesheet' ), 'rocket_clean_domain' ); // When location of a menu is updated
此过滤器向 rocket_clean_domain 发送了不正确的参数(是数组而不是字符串)。
临时解决方法
在您的主题目录中,按照此路径并打开此文件 (wp-rocket/inc/functions/files.php)。
找到以下代码:
function rocket_clean_domain( $lang = '' ) {
$urls = ( ! $lang || is_object( $lang ) ) ? get_rocket_i18n_uri() : get_rocket_i18n_home_url( $lang );
一种解决方法是向该条件添加 is_array(),请参见以下代码:
function rocket_clean_domain( $lang = '' ) {
$urls = ( ! $lang || is_object( $lang ) || is_array( $lang ) ) ? get_rocket_i18n_uri() : get_rocket_i18n_home_url( $lang );
这样就不会将数组作为参数发送,一切都将按预期运行。