WPML
ステータス
解決済み
報告対象
WPML SEO 2.2.0
解決されたバージョン
WPML SEO 2.2.2
関連するプラグイン/テーマ
Yoast SEO
トピックタグ
Compatibility

問題の概要

Yoast SEOWPML SEOを併用すると、非表示言語の投稿がサイトマップインデックスから正しく除外されているにもかかわらず、非表示言語のhreflangタグが代替言語の参照としてサイトマップのソースコードに引き続き表示されるという問題が発生する場合があります。

回避策

続行する前に、必ずサイトの完全なバックアップを作成してください。


  • …/wp-content/plugins/wp-seo-multilingual/classes/Shared/Sitemap/BaseAlternateLangHooks.phpファイルを開きます。

  • 59行目から始まる関数addAlternateLangDataを探します。

  • 以下の行のに:
    list( $elements, $getPermalink, $isIndexable ) = $this->getEntryHelpers( $type, $obj );
            


  • 以下のコードブロックを挿入します:
    // 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] );
            }
        }
    }
            

すべての既知の問題 →