Поиск работает медленно ИЛИ плагин замедляет загрузку страницы
Многие дешёвые хостинг-компании предоставляют услуги на слабом оборудовании. Из-за этого поиск товаров может быть медленным. Можно сделать следующее:
- Используйте плагины кэширования, например этот
- Отключите опции ‘dynamic recount‘ в фильтре и ‘hide empty terms‘
- Используйте Autoptimize
- Добавьте больше памяти вашему сайту WordPress
- Используйте PHP 8.x.x
- Также на вкладке Advanced → Options попробуйте активировать ‘Cache dynamic recount number for each item in filter‘ ИЛИ ‘Cache terms‘, если в вашей форме поиска много терминов
- На вкладке Advanced → Options включите ‘Optimize price filter‘, чтобы снизить нагрузку на сервер
- Добавьте индексы базы данных для повышения производительности запросов (выполните в phpMyAdmin):
ALTER TABLE wp_postmeta ADD INDEX woof_meta_key_value (meta_key(191), meta_value(20)); ALTER TABLE wp_posts ADD INDEX woof_type_status (post_type(20), post_status(20));Примечание: замените
wp_на ваш реальный префикс таблиц, если он отличается. - Также можно полностью скрыть форму поиска и показывать её по требованию. В виджете установите ‘Yes‘ для ‘Hide search form by default and show one button instead‘, в шорткоде [woof] используйте атрибут ‘start_filtering_btn‘
+ Можно использовать ссылки на страницы и маски (например: product-category), на которых должна инициализироваться функциональность WOOF: вкладка Advanced → Init plugin on the next site pages only — это предотвратит инициализацию функциональности плагина на всех страницах сайта
Также читайте:
- woof_counter_method
- woof_use_wp_cache
- Performance Optimization: Lazy-Load Slideout for Large Category Hierarchies
Должен сказать, это довольно неплохая поддержка 🙂
Также, возможно, я нашёл кое-что, что вам понравится: я уже писал вам ранее о медленных запросах плагина. Запросы плагина всё ещё огромны, но я понимаю, что это особенность WordPress (вариаций WooCommerce). Тем не менее я нашёл решение, чтобы избежать долгого времени загрузки: настройка MySQL с помощью этой штуки: http://mysqltuner.com/
Время загрузки сократилось с 15 сек. до 4/5 сек. Всё ещё не быстро, но намного лучше, чем раньше. Следующий шаг — обновление PHP, так как у меня сейчас 5.3.
В общем: если люди жалуются, что woof всё тормозит, попробуйте подсказать им про mysqltuner. Для меня это сильно изменило ситуацию.
Ещё раз спасибо!
Bart