問題の概要
特定のケースでは、Yoastのパンくずリストのカテゴリーが誤った言語にリンクされる場合があります。たとえば、WPML言語言語 URL 形式でデフォルト言語にディレクトリを使用するオプションを有効にし、/%category%/%postname%/のようなパーマリンク構造を使用している場合などです。
回避策
この問題はWPML SEO 2.1.0で修正されました。 更新するとサイト上の問題は解決するため、この回避策が必要になるのは、まだ更新できない場合のみです。
作業を進める前に、サイトの完全なバックアップを作成してください。
- wp-content/plugins/wp-seo-multilingual\classes/Presentation/Hooks.phpファイルを開きます。
- 次のスニペット:を次のように置き換えます:
private static function getTermLink( $term, $fallback ) { return Maybe::fromNullable( get_term_link( $term ) ) ->filter( pipe( Logic::not(), 'is_wp_error' ) ) ->getOrElse( $fallback ); }private static function getTermLink( $term, $fallback ) { return Maybe::fromNullable( get_term_link( $term ) ) ->filter( pipe( 'is_wp_error', Logic::not() ) ) ->getOrElse( $fallback ); }