- ステータス
- 解決済み
- 報告対象
- WPML Multilingual CMS 4.5.8
- 解決されたバージョン
- 4.5.9
問題の概要
WordPressデータベースにwp_以外のプレフィックスを使用している場合、wp_termsテーブルが存在しないことを示すエラーが表示されることがあります。
Table ‘wp.wp_terms’ doesn’t exist for query…
回避策
続行する前に、サイトの完全なバックアップを作成してください。
- /plugins/sitepress-multilingual-cms/classes/query-filtering/class-wpml-term-display-as-translated-adjust-count.phpファイルを開きます。
- 80行目を探します。
- このクエリの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 ) );