- Trạng thái
- Đã giải quyết
- Được báo cáo cho
- WPML SEO 2.2.0
- Đã giải quyết trong
- WPML SEO 2.2.2
- Plugin/giao diện liên quan
- Yoast SEO
- Thẻ chủ đề
- Compatibility
Tổng quan về lỗi
Khi sử dụng Yoast SEO với WPML SEO, bạn có thể gặp phải sự cố trong đó các thẻ hreflang của các ngôn ngữ bị ẩn vẫn xuất hiện trong mã nguồn của sitemap dưới dạng tham chiếu ngôn ngữ thay thế, mặc dù các bài viết bằng các ngôn ngữ bị ẩn đã được loại trừ chính xác khỏi chỉ mục sitemap.
Giải pháp tạm thời
Vui lòng đảm bảo có một bản sao lưu toàn bộ trang web trước khi tiếp tục.
- Mở tệp …/wp-content/plugins/wp-seo-multilingual/classes/Shared/Sitemap/BaseAlternateLangHooks.php.
- Tìm hàm
addAlternateLangDatabắt đầu ở dòng 59. - Sau dòng này:
list( $elements, $getPermalink, $isIndexable ) = $this->getEntryHelpers( $type, $obj );
- Chèn khối mã sau:
// 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] ); } } }