Si tienes WooCommerce instalado y también plugins adicionales relacionados con tu tienda, es posible que tengas muchos registros de acciones y de logs, lo puedes comprobar revisando las tablas de tu base de datos.
Generalidades
Las acciones son eventos del cron únicos o repetitivos que programa WooCommerce para hacerlas en segundo plano, adicional a estos registros también guarda logs de todo las acciones que realiza.
Puedes ver un listado de las acciones que tienes desde el backend de WordPress en: WooCommerce > Estado > Acciones Programadas.
Comprobando tablas grandes en la base de datos
Desde el panel de control de tu cuenta de hosting debes tener el acceso a la aplicación PHPMyAdmin, desde allí, al seleccionar la base de datos de tu sitio podrás ver las tablas, y ordenar por tamaño, tal como se muestra en la siguiente imagen.
Borrar registros de tablas grandes wp_actionscheduler_actions y wp_actionscheduler_logs
Para eliminar los registros de estas tablas grandes usaremos consultas SQL, truncaremos las tablas para que la ejecución sea mucho más rápida.
SET SQL_MODE='ALLOW_INVALID_DATES';
CREATE TEMPORARY TABLE tmp_data_table SELECT * FROM wp_actionscheduler_actions where `status` = 'pending';
TRUNCATE TABLE wp_actionscheduler_actions;
INSERT wp_actionscheduler_actions SELECT * FROM tmp_data_table;
DROP TABLE tmp_data_table;
TRUNCATE TABLE wp_actionscheduler_logs;
En el código anterior:
- Primero cambiamos para que nos permita trabajar con fechas no válidas ya que por defecto son 0000-00-00 00:00:00
- Creamos una tabla temporal con los registros pendientes de la tabla de acciones
- Truncamos la tabla de acciones
- Insertamos los registros pendientes almacenados en la tabla temporal
- Borramos la tabla temporal
- Truncamos directamente la tabla de logs ya que en este caso no queremos conservar ningún registro
Cambiando el intervalo de limpieza de las acciones y logs
Por defecto se realiza una limpieza de estas tablas cada 30 días, sin embargo puedes cambiar el intervalo agregando el siguiente código para que la limpieza sea cada semana.
add_filter( 'action_scheduler_retention_period', function(){
return WEEK_IN_SECONDS;
} );
Conclusión
Como has podido comprobar, puedes fácilmente comprobar si tus tablas de acciones y logs de WooCommerce están aumentando y como hemos visto en este artículo puedes realizar una limpieza de las mismas a través de código.
¿Aún con dudas?, en el siguiente video se detallan los puntos anteriores.
La entrada Borrar tablas wp_actionscheduler_actions y wp_actionscheduler_logs es un artículo reciente del sitio DecodeCMS.
0 Commentaires