J'ai créé un type de publication personnalisé avec une taxonomie personnalisée. J'ai environ 1500 messages qui sont tous affectés à une sorte de terme de taxonomie ... certains étant affectés à plus de 200 termes.
J'ai remarqué qu'à partir du tableau de bord, il faut un temps extrêmement long pour afficher les types de publication personnalisés, la plupart du temps entraînant un délai d'expiration de la passerelle 504.
Interroger ces messages depuis le front-end est très bien et je n'ai aucun problème avec cela.
Je crois comprendre que lorsque le tableau de bord essaie d'afficher ces types de publication personnalisés, il essaie de récupérer toutes les informations affectées à chaque publication, avant qu'il ne montre tout.
J'ai cet ensemble d'installation WP pour pouvoir utiliser autant de mémoire que nécessaire (memory_limit = -1), comme je le faisais, certains ont dit qu'il pouvait être lié à la mémoire.
Y a-t-il quelque chose que je puisse faire pour augmenter les performances de cette requête ... peut-être ne pas charger toutes les relations de termes de taxonomie d'un article jusqu'à ce que vous éditiez l'article?
Erreurs après avoir augmenté WP_MEMORY_LIMIT
de 1 Go à 2 Go:
WordPress database error: [MySQL client ran out of memory]
SELECT t.*, tt.*, tr.object_id FROM wp_terms AS t INNER JOIN wp_term_taxonomy AS tt ON tt.term_id = t.term_id INNER JOIN wp_term_relationships AS tr ON tr.term_taxonomy_id = tt.term_taxonomy_id WHERE tt.taxonomy IN ('locations') AND tr.object_id IN
WordPress database error: [Lost connection to MySQL server during query]
SELECT post_id, meta_key, meta_value FROM wp_postmeta WHERE post_id IN
WordPress database error: [MySQL server has gone away]
SELECT DISTINCT YEAR( post_date ) AS year, MONTH( post_date ) AS month FROM wp_posts WHERE post_type = 'services' ORDER BY post_date DESC
la source
wp-admin/edit.php?post_type=services
?Réponses:
Les termes CPT et taxonomie sont créés via un plugin. J'ai pu réduire la requête en ajoutant ce qui suit à mon plugin:
À l'heure actuelle, j'ai plus de 700 messages liés à plus de 1500 termes de taxonomie et tout fonctionne très bien. Les messages apparaissent presque instantanément.
** Je n'ai pas écrit ce code. Une personne avec qui je travaille directement, qui ne fait pas partie de la communauté WordPress Answers, a fourni le code - peut-être que cela peut aider quelqu'un d'autre, ou que quelqu'un d'autre peut éventuellement l'étendre pour le rendre plus efficace. **
la source