WordPress: solución al error ‘la tabla wp_termmeta no existe’

Tutorial WordPress

Revisando la página de un cliente hace poco encontré el registro de errores (error.log) lleno de un error que decía:

[08-Mar-2016 10:55:41 UTC] Error Table 'nombre_basededatos.wp_termmeta' doesn't exist de la base de datos de WordPress para la consulta SELECT term_id, meta_key, meta_value FROM wp_termmeta WHERE term_id IN (1) ORDER BY meta_id ASC realizada por require('wp-blog-header.php'), require_once('wp-includes/template-loader.php'), include('/themes/nombre-tema-hijo/category.php'), get_sidebar, locate_template, load_template, require_once('/themes/nombre-tema-padre/sidebar.php'), dynamic_sidebar, call_user_func_array, WP_Widget->display_callback, WP_Widget_Categories->widget, wp_list_categories, walk_category_tree, call_user_func_array, Walker->walk, Walker->display_element, call_user_func_array, Walker_Category->start_el, get_terms, update_termmeta_cache, update_meta_cache

Nunca antes había visto este error, tampoco tengo idea de como se originó, se trata de un sitio muy antiguo que ha ido actualizándose. Pero bueno, lo que importa es que en la base de datos no existe una tabla requerida por diversas funciones, como el widget de categorías y por lo tanto, es necesario crearla.

Crear la tabla wp_termmeta

Creando la tabla con esta consulta sql desde phpMyAdmin, se solucionó el problema.

CREATE TABLE IF NOT EXISTS `wp_termmeta` (
`meta_id` bigint(20) unsigned NOT NULL AUTO_INCREMENT,
`term_id` bigint(20) unsigned NOT NULL DEFAULT '0',
`meta_key` varchar(255) DEFAULT NULL,
`meta_value` longtext,
PRIMARY KEY (`meta_id`),
KEY `term_id` (`term_id`),
KEY `meta_key` (`meta_key`(191))
) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ;

Gracias a takien por compartir su solución y su experiencia.

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *