Как ускорить Woocommerce
Wordpress,  Лайфхаки,  Разработка сайтов

Как ускорить Woocommerce?

Woocommerce – это самый популярный плагин для создания онлайн-магазина на WordPress. Для того, чтобы ускорить Woocommerce вы должны понимать, что объем товара и шаблоны бывают разные, следовательно плагины по ускорению WordPress могут не помочь. Одной из причиной медленной работы данного плагина  может быть его компонент “wc-ajax=get_refreshed_fragments”. Выявить его медленную работу можно любым нормальным сервисом по проверке скорости сайта, например через Gmetrix. При загрузке страницы данный компонент может загружаться до 10-ти секунд, и если учитывать, что у вас помимо плагина Woocommerce есть другие плагины, то ваша сайт может загружаться очень долго.

Как ускорить Woocommerce?

Вкратце о wc-ajax=get_refreshed_fragments

Плагин Woocommerce  держит информацию о том, что вы добавили в корзину и при этом сохраняет эту информацию всё время пока вы переходите по другим страницам сайта. При этом когда вы соизволите всё таки посмотреть что вы добавили в корзину и нажимаете на иконку корзины –  плагин через Ajax без перезагрузки страницы вам отображает вам всё, что вы собрались купить.

Примерно такой код вы сможете увидеть на каждой странице:

Но нужна ли эта функция там где нет товаров? Решать вам. Вызов скрипта Ajax заметно задерживает скорость страницы потребляя большие ресурсы сервера. Следующие решения приостановит работу скрипта на тех страницах, где данный скрипт необязателен.

Плагин “Disable Cart Fragments”

Disable Cart Fragments является одним из самых простых решений для отключения компонента  “wc-ajax=get_refreshed_fragments”. В данном плагине нет настроек и он отключит фрагментацию абсолютно на всех страницах вашего сайта. Для того, чтобы отключить фрагментацию только на определенных страницах – зайдите в файл wp-config.php и вставьте следующий код:

где ID – идентификатор страницы или записи. Далее для корректной работы корзины зайдите в WooCommerce>Настройки>Товары>Основное и поставьте галочку напротив Перенаправить в корзину после успешного добавления

wc-ajax=get_refreshed_fragments

Отключаем фрагментацию корзины на главной странице

Внимание! Данный пункт лучше доверить профессиональному разработчику!  Если вы не уверены, то лучше не делайте того, что может сломать ваш сайт.

Данный код отключит фрагментацию только на главной статической странице. Для этого переходим Внешний вид>Редактор и находим файл function.php, в который вставляем следующий код:

Ну и после отключения не забываем включить Перенаправить в корзину после успешного добавления.

Отключаем фрагментацию на главной странице и записях

Следующий код отключить фрагментацию не только на главной странице, но и в записях:

Отключение стилей и скриптов WooCommerce на страницах

Чтобы ускорить WordPress – желательно отключить стили и скрипты Woocommerce на страницах, которые не относятся к страницам магазина. Если вы думаете, что это необязательно, то поверьте, если ваш шаблон и без того очень объемный, то со стилями и скриптами от WooCommerce ваш сайт будет ну ооочень долго грузится. За решение данной проблемы не благодарите 😉

P.S. Не забываем поставить галочку напротив Перенаправить в корзину после успешного добавления.

Бонус

Бонусом является отключение WordPress Heartbeat API – данный компонент отвечает за мониторинг динамически обновляемого контента. Если говорить вкратце, то виджеты, которые отвечают за вывод статистики в админке по продажам и другому так же нагружают ваш сервер, так как данный компонент использует Ajax для вывода статистики. Одним из способов отключения является следующий код:

Если вы хотите подробнее узнать как отключить Heartbeat API, то рекомендую ознакомиться с данной статьей.

Как ускорить Woocommerce?
5 (100%) 2 votes