Что касается запроса, который замедляет мой сайт WordPress - PullRequest
1 голос
/ 15 марта 2019

У меня есть сайт с 100k + постами, и я пытаюсь использовать этот запрос:

SELECT SQL_CALC_FOUND_ROWS wp_posts.ID FROM wp_posts WHERE 1=1 AND wp_posts.post_type = 'post' AND (wp_posts.post_status = 'publish' OR wp_posts.post_status = 'private') ORDER BY wp_posts.post_date DESC LIMIT 0, 5

Пройдя поиск довольно долго, я понял, что это запрос на нумерацию страниц. Запрос занимает слишком много времени и неэффективен.

Кто-нибудь знает решение этой проблемы?

P.S. Я уже искал старые ответы, но они не дают никакого решения.

Ответы [ 2 ]

0 голосов
/ 15 марта 2019

В WordPress вы можете использовать WP_Query для получения найденных сообщений

$obj_name = new WP_Query($args);
$num = $obj_name->post_count; 
0 голосов
/ 15 марта 2019

Да, SQL_CALC_FOUND_ROWS занимает больше времени, чем два запроса. Пожалуйста, проверьте эту ссылку:

Какой самый быстрый? ВЫБРАТЬ SQL_CALC_FOUND_ROWS ОТ table или ВЫБРАТЬ СЧЕТ (*)

Многие пользователи или разработчики подтвердили, вы можете читать комментарии пользователей.

Попробуйте использовать оператор SELECT COUNT(*), чтобы найти количество записей.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...