- Statut
- Résolu
- Signalé pour
- WPML SEO 2.2.2
- Résolu dans
- WPML SEO 2.2.3
- Extension/thème associé
- Rank Math SEO
- Étiquettes de sujet
- Compatibility
Aperçu de l’anomalie
Lorsque vous utilisez RankMath SEO ou Yoast SEO avec notre module complémentaire WPML SEO, vous pouvez rencontrer des valeurs hreflang incorrectes dans le sitemap XML. Au lieu d’utiliser les valeurs hreflang définies dans les paramètres de langue de WPML, le sitemap XML reprend le code de langue (par ex. nz, au) plutôt que le code complet attendu (par ex. en-nz, en-au).
Solution de contournement
Veuillez vous assurer d’avoir une sauvegarde complète de votre site avant de continuer.
- Ouvrez le fichier …/wp-content/plugins/wp-seo-multilingual/classes/Shared/Sitemap/BaseAlternateLangHooks.php.
- Recherchez la ligne 180.
- Remplacez :
private function getAlternateLinks( $alternateLangs ) { $buildAlternateLink = function ( $url, $lang ) { return '<xhtml:link rel="alternate" hreflang="' . esc_attr( $lang ) . '" href="' . esc_url( $url ) . '" />'; };
- Par :
private function getAlternateLinks( $alternateLangs ) { $buildAlternateLink = function ( $url, $lang ) { $languages = apply_filters( 'wpml_active_languages', null, [] ); $hreflang = isset( $languages[ $lang ]['tag'] ) ? $languages[ $lang ]['tag'] : $lang; return '<xhtml:link rel="alternate" hreflang="' . esc_attr( $hreflang ) . '" href="' . esc_url( $url ) . '" />'; };