WPML
상태
해결됨
유형
버그
보고 대상
WPML SEO 2.1.0
해결된 버전
2.2.0
관련 플러그인/테마
Rank Math SEO
주제 태그
Compatibility

문제 개요

URL 형식으로 언어당 개별 도메인 을 사용하는 경우, 사이트맵에는 언어별 카테고리나 제품 카테고리가 표시되지 않습니다. 대신 모든 언어의 콘텐츠를 표시합니다.

임시 해결 방법

진행하기 전에 사이트를 전체 백업하세요:


  1. 테마의 functions.php 파일에 다음 코드를 추가하세요:
    /* 
    * WPML Workaround for compsupp-6571
    */
    add_filter('rank_math/sitemap/entry', 'wpml_compsupp6571_remove_sitemap_entry_from_different_domain', 10, 3);
    
    function wpml_compsupp6571_remove_sitemap_entry_from_different_domain ( $url, $type, $object ) {
    
    	if (! class_exists('SitePress') || apply_filters( 'wpml_setting', false, 'language_negotiation_type' ) != 2 ) {
    		return $url;
    	}	
    
    	$current_language = apply_filters( 'wpml_current_language', NULL );
    
    	if ($type == 'post') {		
    		$post_language_details = apply_filters( 'wpml_post_language_details', NULL, $object->ID ) ;
    		
    		if ( isset($post_language_details['language_code']) && $post_language_details['language_code'] != $current_language) {
    			return false;
    		}		
    	}
    		
    	elseif ($type == 'term') {
    		$args = array('element_id' => $object->term_taxonomy_id, 'element_type' => $object->taxonomy );
    		$term_language_details = apply_filters( 'wpml_element_language_details', NULL, $args  ) ;
    		
    		if (isset($term_language_details->language_code) && $term_language_details->language_code != $current_language) {
    			return false;
    		}		
    	}
    
    	return $url;
    }


  2. Rank Math → 사이트맵 설정으로 이동하세요.

  3. 사이트맵당 링크 옵션을 수정하고 변경 사항을 저장하세요.

  4. 설정 → 고유주소 로 이동하여 저장하세요. 그러면 고유주소가 다시 생성됩니다.

  5. 사이트맵을 확인하세요. 각 도메인에는 현재 언어와 관련된 콘텐츠만 표시되어야 합니다.

모든 알려진 문제