- Statut
- Résolu
- Signalé pour
- WPML SEO 2.2.0
- Résolu dans
- WPML SEO 2.2.2
- Extension/thème associé
- Yoast SEO
- Étiquettes de sujet
- Compatibility
Aperçu de l’anomalie
Lorsque vous utilisez Yoast SEO avec WPML SEO, vous pouvez rencontrer un problème où les balises hreflang pour les langues masquées apparaissent toujours dans le code source du sitemap XML comme références de langue alternative, même si les articles dans les langues masquées sont correctement exclus de l’index du sitemap XML.
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 fonction
addAlternateLangDatacommençant à la ligne 59. - Après cette ligne :
list( $elements, $getPermalink, $isIndexable ) = $this->getEntryHelpers( $type, $obj );
- Insérez le bloc de code suivant :
// WPML Workaround for wpmlwpseo-350 - Exclude hidden language posts global $sitepress; $hidden_languages = $sitepress->get_setting( 'hidden_languages', [] ); if ( $elements && !empty($hidden_languages) ) { foreach( $elements as $lang => $element) { if ( in_array( $lang, $hidden_languages ) ){ unset( $elements[$lang] ); } } }