Поговорим об оптимизации WordPress. Писано про это уже столько, что можно начать оптимизацию с базы, а закончить вебсервером. И поговорим потому, что несколько блогов, за последнее время, обратились за помощью. И не в том, что CMS последних версий стала плохо, а из-за того, что ряд есть сторонних причин, которые мешают системе или затормаживают ее.
Причина такой заторможенности как правило либо в плагинах, либо в теме, что встречается уже очень часто. Однажды была запись у меня о том, как можно оптимизировать тему WordPress, чтобы она заработала быстрее. Но это мелочи, которые лучше оставить на потом, на сладкое.
- Оптимизация начинается с базы данных. Нужно оптимизировать таблицы. Заходим в phpMyAdmin, выбираем нашу БД и далее:

Это поможет серверу БД более быстро работать с таблицами, что немного снизит нагрузку. В более ранних версиях phpMyAdmin может не быть пункта “Отметить требующие оптимизации”. Тогда просто выбираете все таблицы и делаете с отмеченными “Оптимизировать”.
- Избавляемся от всех не нужных плагинов и особенно от тех, которые не совместимы с данной версией CMS. Очень часто такие плагины не совсем корректно работают.
- Удаляем из темы 3 абсолютно не нужные вещи: версию движка и, если не планируете использовать Windows Live Writer, то и манифест. Добавляем 3 строчки кода в файл functions.php:
<?php remove_action(‘wp_head’, ‘wp_generator’); ?>
<?php remove_action(‘wp_head’, ‘wlwmanifest_link’); ?>
<?php remove_action(‘wp_head’, ‘rsd_link’); ?>
- Отключаем ревизии записей без плагина. Добавляем в файл wp-config.php следующую строку:
define('WP_POST_REVISIONS', false);
Для удаления существующих ревизий (если не умеете – лучше не лазить):
DELETE a,b,c
FROM wp_posts a
LEFT JOIN wp_term_relationships b ON (a.ID = b.object_id)
LEFT JOIN wp_postmeta c ON (a.ID = c.post_id)
WHERE a.post_type = ‘revision’
Продолжить чтение »