Отключение heartbeat
Когда вы установили сайт WordPress установите Code Snippets, нажмите добавить спипет, назовите его к примеру оптимизация heartbeat, добавьте код
add_filter( 'heartbeat_settings', 'custom_heartbeat_settings' );
function custom_heartbeat_settings( $settings ) {
$settings['interval'] = 300; // задайте интервал в секундах
return $settings;
}
Это заставит heartbeat запускаться раз в 300 секунд, по мне отключать его полностью не стоит, это несет проблемы и ошибки.
Подключение CloudFlare
Перейдите по ссылке и зарегистрируйте аккаунт, добавьте ваш сайт, и поменяйте свои NS домена, на выданные вам CF. Примерно часов через 6 а может и раньше, вы получите письмо что сайт подключен. После этого проведите оптимизацию(она там почти автоматическая) в панели CF.
Установите плагин Super Page Cache for Cloudflare, получите ключ от CF, в плагине введите свою электронную почту указанную при регистрации CF и тот самый ключ.
Настройте брадмауэр WAF, например ограничьте запросы с разных стран, оставив к примеру Россию, добавьте в исключение известных ботов. Например будет так
(ip.geoip.country ne "RU" and not cf.client.bot)
Выставьте капчу, чтобы люди в случае чего могли попадать на ваш сайт из других стран. Правил можно создать много посмотрите здесь , а так же есть много мануалов в сети.
Добавление директив в htaccess и wp-config
Добавляем код в htaccess, переходим в управление файлами на вашем хостинге, и в корневой папке сайта находим файл, если его там нет, а так бывает, создайте его .htaccess , обязательно с точкой в начале. Добавьте в него следующий код
php_value upload_max_filesize 100M #Максимальный размер загружаемого файла(если у вас CF то на бесплатном плане больше 100 мб, добавить не выйдет)
php_value post_max_size 100M #Максимальный размер загружаемого файла на пост
php_value memory_limit 256M #Лимит оперативной памяти для выполнения скриптов
php_value max_execution_time 300 #Максимальное время для выполнения скриптов
Там же в корневой папке находим wp-config, и добавляем туда несколько полезных директив. Почти в самый низ там где директива define(‘WP_DEBUG’, false);
define('AUTOSAVE_INTERVAL', 300); // seconds #Автосохранение 5 минут(отличается от heartbeat)
define('WP_POST_REVISIONS', 3); #Количество сохраненных копий
define('DISABLE_WP_CRON', true); #Отключаем cron.
Добавляем cron на сервер(хостинг), выберите время например раз в час, и добавьте код, замените домен на свой.
wget -qO- https://quantumtransition.angellive.ru/wp-cron.php &> /dev/null
Всё. После этого ваш сайт станет на 90% меньше потреблять ресурсы хостинга и станет безопаснее.