- Status
- Gelöst
- Gelöst in
- WP Rocket lastest version
Übersicht über das Problem
Die Funktion rocket_clean_domain erwartet einen Parameter: $lang
Sie wird normalerweise ohne Parameter aufgerufen, aber es gibt einen Fall, in dem der falsche Parameter übergeben wird:
wp-rocket/inc/common/purge.php Zeile 22
add_action( 'update_option_theme_mods_' . get_option( 'stylesheet' ), 'rocket_clean_domain' ); // When location of a menu is updated
Dieser Filter übergibt den falschen Parameter an rocket_clean_domain (ein Array anstelle eines Strings).
Problemumgehung
Folgen Sie in Ihrem Theme-Verzeichnis diesem Pfad und öffnen Sie diese Datei (wp-rocket/inc/functions/files.php).
Suchen Sie den folgenden Code:
function rocket_clean_domain( $lang = '' ) {
$urls = ( ! $lang || is_object( $lang ) ) ? get_rocket_i18n_uri() : get_rocket_i18n_home_url( $lang );
Eine Lösung wäre, is_array() zu dieser Bedingung hinzuzufügen, siehe den folgenden Code:
function rocket_clean_domain( $lang = '' ) {
$urls = ( ! $lang || is_object( $lang ) || is_array( $lang ) ) ? get_rocket_i18n_uri() : get_rocket_i18n_home_url( $lang );
Auf diese Weise senden wir das Array nicht als Parameter und alles funktioniert wie erwartet.