WPML
상태
해결됨
보고된 제품
WPML Multilingual CMS 4.5.8
해결된 버전
4.5.9

문제 개요

WordPress 데이터베이스에 wp_가 아닌 다른 접두사를 사용하는 경우, wp_terms 테이블이 존재하지 않는다는 오류가 표시될 수 있습니다.

Table ‘wp.wp_terms’ doesn’t exist for query…

임시 해결 방법

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

  1. /plugins/sitepress-multilingual-cms/classes/query-filtering/class-wpml-term-display-as-translated-adjust-count.php 파일을 여세요.
  2. 80번째 줄을 찾으세요.
  3. 이 쿼리에서 84, 85, 90, 91, 93번째 줄의 wp_를 사용 중인 데이터베이스 접두사로 변경하세요.
     $prefix = $this->wpdb->prefix;
    $originalTermCount = (int) $this->wpdb->get_var(
       $this->wpdb->prepare( "
            SELECT
            (
                SELECT term_taxonomy.count
                FROM ".$prefix."term_taxonomy term_taxonomy
                INNER JOIN ".$prefix."icl_translations translations
                    ON translations.element_id = term_taxonomy.term_taxonomy_id
                WHERE translations.trid = icl_t.trid
                AND translations.language_code = %s
            ) as `originalCount`
            FROM ".$prefix."terms AS t
            INNER JOIN ".$prefix."term_taxonomy AS tt
                ON t.term_id = tt.term_id
            LEFT JOIN ".$prefix."icl_translations icl_t
                ON icl_t.element_id = tt.term_taxonomy_id
            WHERE t.term_id = %d
            ",
            $this->sitepress->get_default_language(),
            $term->term_id
        )
    );

알려진 모든 문제 →