WordPress recuperando metadatos para todos los tipos de publicaciones personalizadas en la vista de lista

9

Tengo un problema en WordPress donde PHP está muriendo. Aumenté la memoria, pero el proceso PHP salta al 100% de uso de la CPU y luego muere y Apache arroja un error 500.

He intentado que Apache registre algo, o PHP / MySQL para registrar un error, pero no se registra nada más que un error general 500.

El problema 500 está en la página de la lista, por ejemplo:

/wp-admin/edit.php?post_type=artist

Actualmente tenemos más de 1200 entradas de artistas en WordPress, si agrego una fecha como esta:

/wp-admin/edit.php?post_type=artist&orderby=date

¡Entonces la lista se carga bien, incluso rápido! Me senté y miré el registro de consultas de MySQL y parece que WordPress está cargando los metadatos para cada publicación (los 1200) para producir la lista de 10 más o menos. Solo para una de las consultas, eso devuelve 92000 filas. Estoy usando campos personalizados avanzados y una plantilla con su propio marco, por lo que cada publicación tiene una buena cantidad de metadatos adjuntos. Estoy pensando que estos son demasiados datos para que PHP los procese y estoy llegando a un límite aquí. Es probable que las 1200 publicaciones se dupliquen fácilmente durante el próximo año.

¿Cómo puedo forzar la carga de la página inicial para agregar la clasificación de fechas o solucionar el problema al cargar todos esos metadatos?

Paul Cullen
fuente
¿Has intentado deshabilitar ACF y otros complementos? Creo que una vez tuve un problema similar y creo que el culpable aquí no es WP en sí, sino con ACF. por ejemplo, ACF agrega metadatos a las revisiones y luego carga todo eso también. Asegúrese de cuál es la fuente de este problema, ya que ayudará a otras personas a ayudarlo.
kraftner
Hola @kraftner he desactivado ACF y no ha hecho ninguna diferencia.
Paul Cullen
¿Cuánta memoria está usando en wp-config (WP_MAX_MEMORY_LIMIT)? ¿Cuál es su valor PHP.INI para memory_limit? Intenta elevarlos al máximo. Además, echaría un vistazo a su archivo de configuración de mysql.
Emanuel Rocha Costa
He elevado PHP y WP_MAX_MEMORY_LIMIT a 512 temporalmente sin ningún efecto. Mi archivo de configuración de MySQL es: default-storage-engine=MyISAM innodb_file_per_table=1 max_allowed_packet=268435456 open_files_limit=10000 query_cache_size=64M log_slow_queries = 1 log-slow-queries=/var/log/mysql.slow.log log-error=/var/log/mysqld.log general_log_file = /var/log/mysql_general.log
Paul Cullen
1
¿Es jerárquico el tipo de mensaje personalizado "artista" (como páginas)? .. si es así, este podría ser el culpable ya que todas las publicaciones se consultarán en el panel de administración. Si su aplicación lo permite, puede intentar cambiar la jerarquía jerárquica a falsa para el CPT "artista" y ver si eso alivia los problemas de memoria
locomo

Respuestas:

1

Intente cambiar jerárquico: falso en su definición de CPT (si su aplicación lo permite).

Cuando los CPT se configuran en jerárquico: verdadero, todas las publicaciones se consultarán en el panel de administración, lo que puede causar problemas de memoria.

locomo
fuente
0

El problema era que el CPT estaba configurado en jerárquico, cambiando esto a jerárquico: falso en funciones.php resolvió el problema.

Paul Cullen
fuente
1
Acepte su propia respuesta para que esta pregunta pueda cerrarse.
cjbj