Если Ваш WordPress сайт открывается небыстро, не спешите ускорять его разными плагинами или усиленно кешировать. Прежде чем заняться этим стоит проверить, действительно ли тормозит именно движок. Ведь причины могут быть и другие.
Нередко задержки при работе WordPress наблюдаются из-за проблем с интернет-каналом у пользователя или на сервере, а также по причине медленной загрузки сторонних скриптов и картинок.
Скорость работы MySQL
Для начала узнаем количество и общее время выполнения всех запросов к базе данных MySQL.
Включаем SAVEQUERIES, добавив в самом начале конфигурационного файла wp-config.php следующую строку:define('SAVEQUERIES', true);
Это позволяет сохранить все запросы к базе данных и подробную информацию о них в массив $wpdb->queries
Затем выведем внизу на каждой странице сайта информацию о количестве и времени всех MySQL запросов.
Для этого в файле темы footer.php, в самом конце, добавим следующий код:
<?php
foreach ($wpdb->queries as $item) { $sql_query_time += $item[1]; }
print "\n<!-- SQL query : ".get_num_queries()." | SQL time : ".round($sql_query_time,2)." sec. -->";
?>
Теперь в HTML-коде каждой страницы внизу будет доступна информация о количестве и времени запросов к базе данных.
Следует сказать, что сразу после установки WordPress на страницах выполняется до 30 MySQL запросов общей длительностью от 0.01 до 0.05 секунд.
Это вполне адекватные цифры, при которых нет особого смысла заниматься оптимизацией. В противном случае нужна настройка MySQL.
Скорость работы WordPress
Для получения общего времени работы WordPress воспользуемся функцией timer_stop(), которая возвращает время, прошедшее до момента ее вызова.
Добавим функцию в самый конец файла footer.php<?php
print "\n<!-- Total time : ".timer_stop(0, 2)." sec. -->";
?>
Проделав подобное на новоустановленном WordPress мы можем наблюдать, что при первых обращениях к страницам время может составлять до 1 секунды, но все дальнейшие запросы выполняются в разы быстрее. Это нормальная ситуация.
Поэтому если при постоянных последующих обращениях к страницам время, затраченное на их генерацию, не превышает 0,05-0,07 секунд, с оптимизацией WordPress можно повременить.
Если же показатели превышают эти значения, следует задуматься о кешировании и использовании CDN.