Заметка про то, какие действия предпринять для оптимизации сайта на WordPress. Т.е. то, что нужен нормальный хостинг, оптимизировать картинки и настраивать файл .htaccess — это понятно и отдельная тема. Разберем где и что заменить, чтобы уменьшить количество запросов к базе данных, к серверу. Например, в шаблонах есть конструкции которые выводят автоматизированно тот или иной элемент через какую-то функцию, а можно заменить уже готовым html.
Оптимизация WordPress
1. Чтобы сократить количество загружаемых ненужных языковых настроек в WordPress только до нужных, В корне сайта, в файле wp-config.php меняем строку
1
2
3
4
5
6
7
8
9
|
define (‘WPLANG’, ‘ru_RU’);
НА
if (strpos($_SERVER[‘REQUEST_URI’], ‘wp-admin’)) define (‘WPLANG’, ‘ru_RU’); else define (‘WPLANG’, ‘ru_RU_lite’);
|
2. В теме WordPress’а нужно найти код который выводит файл стилей (style.css). В папке темы находим файл header.php и меняем строку
1
2
3
4
5
6
7
8
9
|
<link rel=“stylesheet” href=“<?php bloginfo(‘stylesheet_url’); ?>“ type=“text/css” media=“screen” />
НА
<link media=“screen” type=“text/css” href=“http://адрессайт.ru/wp-content/themes/названиетемы/style.css” rel=“stylesheet”>
|
3. Меняем код пингбэков:
1
2
3
4
5
6
7
8
9
|
<link rel=“pingback” href=“<?php bloginfo(‘pingback_url’); ?>“ />
НА
<link href=“http://вашсайт.ru/xmlrpc.php” rel=“pingback”/>
|
4. Замена кода RSS-ленты:
1
2
3
4
5
6
7
8
9
|
<link rel=“alternate” type=“application/rss+xml” title=“<?php bloginfo(‘name’); ?> RSS Feed” href=“<?php bloginfo(‘rss2_url’); ?>“ />
НА
<link href=“http://вашсайт.ru/feed” title=“Название вашего сайта RSS Feed” type=“application/rss+xml” rel=“alternate”/>
|
5. В некоторых шаблонах тем внизу в футере выводится название сайта, тем самым создавая лишние запросы к базе данных. Стоить заменить или может быть удалить если вам оно не нужно. Код:
1
2
3
4
5
6
7
8
9
|
<?php get_bloginfo(‘name’) ?>
НА
НАЗВАНИЕ ВАШЕГО САЙТА
|
6. Если на сайте не используются комментарии, то не нужно использовать плагины, а просто удалить код:
1
2
3
4
5
|
<?php comments_template(); ?>
|
7. В header находится много разных запросов. Чаще всего отвечает за вывод файл header.php.
1
2
3
4
5
6
7
8
9
|
<meta http-equiv=“Content-Type” content=“<?php bloginfo(‘html_type’); ?>; charset=<?php bloginfo(‘charset’); ?>“ />
На
<meta http-equiv=“Content-Type” content=“text/html; charset=UTF-8” />
|
7.1 Удалить код вывода версии WordPress:
1
2
3
4
5
|
<meta name=“generator” content=“WordPress <?php bloginfo(‘version’); ?>“ />
|
7.2 Заменить строку с путем к фавикону:
1
2
3
4
5
|
<link rel=“shortcut icon” type=“image/ico” href=“<?php bloginfo(‘template_directory’); ?>/favicon.ico” />
|
7.3 В шапке сайта можно заменить два кода вывода названия и описания сайта:
1
2
3
4
5
6
|
<?php bloginfo(‘name’); ?>
<?php bloginfo(‘description’); ?>
|
8. В файле footer.php можно найти код вывода инфы о защищённых правах и заменить:
1
2
3
4
5
6
7
8
9
|
<p class=“alignleft”>© <?php echo date(“Y”); ?> <?php bloginfo(‘name’); ?> Все права защищены <br />
НА пример
<div class=“description”>© WpCraft.ru, 2018-2020 | Все права защищены</div>
|
! Как узнать чем заменять код? Открываем htmlкод страницы сайта в браузере (в контекстном меню ПКМ выбрать что-то типа «Посмотреть исходный код страницы») и там смотреть, что выводит тот или иной код. Чтобы искать было легче можно использовать поиск по странице в браузере (нажать Ctrl + F).
9. Если используется Яндекс.Метрика, то стоит отключить в настройках счетчика Вебвизор, т.к. он сильно может замедлять загрузку сайта.
8. Проверьте и удалите ненужные плагины, даже деактивированные.
9. Не все плагины нужно держать активированными. Например, Плагин по оптимизации БД или плагин измерения нагрузки плагинов P3, нужно деактивировать и активировать только на время использования.
10. Рекомендую поставить плагин кэширования LiteSpeed Cache. В настройках «Page Optimization» => вкладка «Media Setting» включить ленивую загрузку изображений Lazy Load Images (т.е. изображения подгружаются по мере прокрутки экрана).
11. Можно определить количество запросов на той или иной странице и потом смотреть что можно убрать из шаблона.