WPML
상태
미해결
주제 태그
Bug

문제 개요

글에 용어를 할당하면 특정 용어가 할당된 글의 누적 개수가 WordPress에 저장됩니다.

일부 글에서 용어를 제거하면 개수가 줄어듭니다. 용어를 동기화하도록 설정한 경우 번역된 글에서 번역된 용어가 제거되지만, 개수는 줄어들지 않습니다.

임시 해결 방법

플러그인이나 테마의 functions.php 파일을 통해 다음 코드 스니펫을 추가하면 번역의 용어 개수를 강제로 다시 계산할 수 있습니다:

add_action( 'deleted_term_relationships', function($object_id, $tt_ids, $taxonomy){

    $trids = array();
    $translated_tt_ids = array();

    foreach ($tt_ids as $tt_id) {
        $trids[] = apply_filters( 'wpml_element_trid', NULL, $tt_id, 'tax_'.$taxonomy );
    }

    foreach ($trids as $trid) {
        $translations = apply_filters( 'wpml_get_element_translations', NULL, $trid, 'tax_'.$taxonomy );
        foreach ($translations as $lang => $translation) {
            $translated_tt_ids[] = $translation->element_id;
        }
    }    

    $translated_tt_ids = array_diff( $translated_tt_ids, $tt_ids );

    if ( count( $translated_tt_ids ) ) {
        wp_update_term_count( $translated_tt_ids, $taxonomy );
    }

}, 11, 3);

알려진 모든 문제 →