WordPress ошибка wp_termmeta doesn’t exist
Смотрел логи ошибок вебсервера и заметил ошибку wp_termmeta doesn’t exist, т.е. таблица wp_termmeta не существует.
Решил, что хорошо бы исправить, чтобы лишний раз не писало об ошибке в файл, да и в целом должно быть правильно.
Не знаю была ли таблица раньше, что с ней случилось. Возможно она удалилась при чистке базы старым плагином оптимизации базы, может еще что стряслось. Однако визуально отличий раньше я не заметил, иначе бы восстановил из резервной копии, поэтому нужно разбираться.
Я посмотрел в базу данных блога — таблицы действительно не было. Погуглил и увидел что у людей тоже встречается эта ошибка, как правило она приходит при обновлении WordPress до версии 4.4.
Для чего таблица wp_termmeta?
wp_termmeta содержит дополнительные данные для элементов таксономии (с версии WordPress 4.4)
Если таблицы нет, то можно ее создать.
Это можно сделать в phpMyAdmin или например, в adminer, можно вручную описать столбцы их типы, размерность, а можно просто выполнить SQL код.
CREATE TABLE IF NOT EXISTS wp_termmeta ( meta_id BIGINT(20) UNSIGNED NOT NULL, term_id BIGINT(20) UNSIGNED NOT NULL DEFAULT '0', meta_key VARCHAR(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL, meta_value longtext COLLATE utf8mb4_unicode_ci ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci; |
У меня добавление выглядело вот так.
Применяем SQL код, таблица успешно создана, ошибок в логах больше нет.
Отлично.
Спасибо, помогли! Ну только я выполнил SQL код:
CREATE TABLE `wp_termmeta` (
`meta_id` bigint(20) unsigned NOT NULL AUTO_INCREMENT,
`term_id` bigint(20) unsigned NOT NULL DEFAULT ‘0’,
`meta_key` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
`meta_value` longtext COLLATE utf8mb4_unicode_ci,
PRIMARY KEY (`meta_id`),
KEY `term_id` (`term_id`),
KEY `meta_key` (`meta_key`(191))
) ENGINE=InnoDB AUTO_INCREMENT=3255 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
И если нету в базе таблицы wp_commentmeta тогда выполните SQL код:
CREATE TABLE wp_commentmeta (
meta_id bigint(20) unsigned NOT NULL auto_increment,
comment_id bigint(20) unsigned NOT NULL default ‘0’,
meta_key varchar(255) default NULL,
meta_value longtext,
PRIMARY KEY (meta_id),
KEY comment_id (comment_id),
KEY meta_key (meta_key)
)
Спасибо тебе добрый человек, тоже видел и всё руки не доходили убрать. Странно то, что на другом сайте такой ошибки почему-то нет.