WPML
상태
개발자가 해결함
해결된 버전
BetterDocs Pro v3.0.1
관련 플러그인/테마
BetterDocs
주제 태그
Compatibility

문제 개요

BetterDocs Pro 플러그인을 사용하는 경우 카테고리 페이지에서 지식베이스 슬러그가 제대로 번역되지 않는 것을 확인할 수 있습니다. 언어를 전환할 때 지식베이스 용어의 슬러그가 언어 변경을 반영하지 않아 카테고리 페이지의 URL이 일관되지 않게 됩니다.

임시 해결 방법

진행하기 전에 사이트의 전체 백업을 완료했는지 확인하세요.


  • …/wp-content/plugins/betterdocs-pro/includes/Traits/MKB.php 파일을 여세요.

  • 21번째 줄을 찾으세요.

  • 다음 코드를:
    public function kb_terms( $term, $taxonomy ) {
        $current_term = get_term_by( 'slug', $term->slug, $taxonomy, OBJECT );
        $_term_attr   = get_term_meta( $current_term->term_id, 'doc_category_knowledge_base', true );
    
        if ( ! empty( $_term_attr ) ) {
            $_term_attr = array_values( array_filter($_term_attr, function( $item ){
                return ! empty( $item );
            }) );
        }
    
        return $_term_attr;
    }

  • 다음과 같이 변경하세요:
    public function kb_terms( $term, $taxonomy ) {
        $current_term = get_term_by( 'slug', $term->slug, $taxonomy, OBJECT );
        $_term_attr   = get_term_meta( $current_term->term_id, 'doc_category_knowledge_base', true );
        
        // WPML Workaround for compsupp-6478
        if ( class_exists('Sitepress') ) {
            $_term_attr   = get_term_meta( $term->term_id, 'doc_category_knowledge_base', true );
        }
        
        if ( ! empty( $_term_attr ) ) {
            $_term_attr = array_values( array_filter($_term_attr, function( $item ){
                return ! empty( $item );
            }) );
        }
    
        return $_term_attr;
    }

알려진 모든 문제 →