• В логе медленных запросов увидел это:
    # Query_time: 12.333304 Lock_time: 0.000189 Rows_sent: 20 Rows_examined: 45575
    SET timestamp=1372855664;
    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’) AND wp_posts.post_title LIKE ‘%’ ORDER BY wp_posts.post_date DESC LIMIT 60, 20;

    Тоесть сама пагинация где то на 2000 старниц, и когда ходишь по ней, долго обрабатывается запрос. С таким количество записей так и должно работать или же все таки это, что-то в настройках?
    Спасибо

Просмотр 3 ответов — с 1 по 3 (всего 3)
  • Думаю, тормозит из-за post_title LIKE '%'. Не помню я, чтобы WP делал такие запросы, стало быть, это либо тема, либо плагин.

    В файле functions.php для формировании пагинации у меня такой код:

    function wp_corenavi() {
           global $wp_query, $wp_rewrite;
             $pages = '';
             $max = $wp_query->max_num_pages;
               if (!$current = get_query_var('paged')) $current = 1;
               $a['base'] = str_replace(999999999, '%#%', get_pagenum_link(999999999));
                 $a['total'] = $max;
                 $a['current'] = $current;
    
               $total = 1; //1 - выводить текст "Страница N из N", 0 - не выводить
               $a['mid_size'] = 3; //сколько ссылок показывать слева и справа от текущей
                 $a['end_size'] = 1; //сколько ссылок показывать в начале и в конце
                 $a['prev_text'] = '«'; //текст ссылки "Предыдущая страница"
                   $a['next_text'] = '»'; //текст ссылки "Следующая страница"
    
                   if ($max > 1) echo '<div class="navigation">';
                     if ($total == 1 && $max > 1) $pages = '<span class="pages">Страница ' . $current . ' из ' . $max . '</span>'."\r\n";
                     echo $pages . paginate_links($a);
                   if ($max > 1) echo '</div>';
     }

    На англоязычном фрруме рекомендуют поставить кеширующий плагин. Но я думаю это не вариант. Может быть еще у кого нибудь были подобоные проблемы?

Просмотр 3 ответов — с 1 по 3 (всего 3)
  • Тема «Долго работает пагинация на 40 000+ записей» закрыта для новых ответов.