WPML
Status
Resolvido pelo autor
Resolvido em
BetterDocs Pro v3.0.1
Plugin/tema relacionado
BetterDocs
Tags de tópico
Compatibility

Visão geral do problema

Se você estiver usando o plugin BetterDocs Pro, notará que o slug da base de conhecimento não é traduzido corretamente na página de categoria. Ao alternar entre idiomas, o slug dos termos da base de conhecimento não reflete a mudança de idioma, resultando em URLs inconsistentes na página de categoria.

Solução alternativa

Por favor, certifique-se de ter um backup completo do seu site antes de prosseguir.


  • Abra o arquivo …/wp-content/plugins/betterdocs-pro/includes/Traits/MKB.php.

  • Procure a linha 21.

  • Altere:
    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;
    }

  • Para:
    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;
    }

Todos os problemas conhecidos →