WPML
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 ) . '" />';
        };
            

Toutes les anomalies connues →