- Statut
- Résolu
- Résolu dans
- WP Rocket lastest version
Aperçu de l’anomalie
La fonction rocket_clean_domain prend un paramètre : $lang
Elle est normalement appelée sans paramètres, mais il y a un cas où le mauvais paramètre est envoyé :
wp-rocket/inc/common/purge.php ligne 22
add_action( 'update_option_theme_mods_' . get_option( 'stylesheet' ), 'rocket_clean_domain' ); // When location of a menu is updated
Ce filtre envoie le paramètre incorrect à rocket_clean_domain (un tableau au lieu d’une chaîne de texte).
Solution de contournement
Dans le répertoire de votre thème, suivez ce chemin et ouvrez ce fichier (wp-rocket/inc/functions/files.php).
Recherchez le code ci-dessous :
function rocket_clean_domain( $lang = '' ) {
$urls = ( ! $lang || is_object( $lang ) ) ? get_rocket_i18n_uri() : get_rocket_i18n_home_url( $lang );
Une solution consisterait à ajouter is_array() à cette condition, voir le code ci-dessous :
function rocket_clean_domain( $lang = '' ) {
$urls = ( ! $lang || is_object( $lang ) || is_array( $lang ) ) ? get_rocket_i18n_uri() : get_rocket_i18n_home_url( $lang );
De cette façon, nous n’enverrons pas le tableau comme paramètre et tout fonctionnera comme prévu.