WooCommerce - прекратить автоматическое добавление атрибутов продукта (тегов) в класс li на странице архива - PullRequest
0 голосов
/ 23 мая 2018

Наш веб-сайт WooCommerce работает медленнее, чем мне хотелось бы, и в процессе отладки я наткнулся на вопрос ...

WooCommerce автоматически добавляет атрибуты продукта в виде классов для продукта <li>тег на страницах архива категории - например, <li class="post-2000 product type-product status-publish has-post-thumbnail product_cat-categoryhere product_tag-taghere pa_one-attributehere pa_two-attributehere pa_three-attributehere instock sale featured shipping-taxable purchasable product-type-simple" id="prod-2000" data-id="2000">

Из-за большого количества атрибутов товара, которые мы используем, и количества товаров, которые мы показываем на каждой странице архива, это в целом составляетмножество дополнительных запросов MySQL на каждой странице загружают (поскольку WooCommerce должен выполнить 2 отдельных запроса к базе данных для каждого атрибута продукта) .

Итак, вопрос - кто-нибудь знает, как остановить Woo?добавление этих классов к каждому продукту на странице архива, чтобы * надеюсь ускорить загрузку моей страницы?

Заранее спасибо!

1 Ответ

0 голосов
/ 24 мая 2018

Мне удалось решить это самостоятельно.

Классы добавляются с помощью базовой функции WP post_class (), которая, в свою очередь, вызывает get_post_class ().

Начиная с WP 4.2.0эта последняя функция также включает в себя все пост-таксономии, поэтому это только недавняя проблема (ish).

Чтобы исправить это, я скопировал и post_class (), и get_post_class () в свои собственные функцииФайл .php, переименовал их и настроил так, чтобы он не запрашивал таксономии.Затем обновите файл шаблона WooCommerce, чтобы вызвать эту новую функцию, и вуаля.

Я приведу некоторые цифры и скоро прокомментирую улучшения производительности для справки других.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...