Цены и скидки для SEO. Запись в свойства товаров
- Адаптивность: Нет
- Версия: 1.0.6
- Обновлено: 14.02.2020
- Опубликовано: 14.04.2017
- Поддержка Композита: Нет
- Подходящие редакции: «Малый бизнес», «Бизнес»
Модуль создаёт агент, который обходит товары выбранных каталогов, вычисляет для каждого товара цену со скидками, применяемыми в каталоге, и записывает это значение, а также другие полезные сведения, связанные со скидками - цену без скидки, процент скидки, список применённых скидок - в свойства товара.
В SEO-поля элементов инфоблоков можно, таким образом, сохранять информацию о ценах и скидках на товар из данных свойств.
Модуль работает аналогично модулю Долганина "Скидки и акции расширенные", однако тот модуль больше не поддерживается разработчиком и корректная работа в последних версиях каталога и магазина не гарантируется. Наш модуль уверенно работает с несколькими последними версиями Битрикса, в том числе с 17 версией каталога и магазина, с конвертированными скидками, также, использует, где это возможно, функционал D7, и отличается достаточно гибкими возможностями по настройке.
Для чего можно использовать модуль:
1) Продающие метатеги в SEO
С помощью модуля можно указывать в SEO-данных элементов каталога информацию не только о цене товара, но также и помещать туда актуальные цены с учётом скидок и даже размер скидки.
2) Каталог - раздел "распродажа"
Вы можете отобрать все товары со скидкой и выводить их на отдельной странице с помощью компонента "Каталог::Элементы раздела" (bitrix:catalog.section), указав соответствующий фильтр. Также, можно создать страницы для каждой отдельной акции. Код фильтра необходимо размещать перед кодом вызова компонента и указывать в параметрах компонента имя переменной, содержащей фильтр (по умолчанию - arrFilter).
Примеры задания фильтра для случая торговых предложений:
CIBlockElement::SubQuery('PROPERTY_CML2_LINK', array( 'IBLOCK_ID' => 3, //инфоблок торговых предложений 'PROPERTY_AFP_DISCOUNT_LIST' => 2 //ID скидки )) ); ?> |
CIBlockElement::SubQuery('PROPERTY_CML2_LINK', array( 'IBLOCK_ID' => 3, //инфоблок торговых предложений '>PROPERTY_AFP_DISCOUNT_VALUE' => 0 )) ); ?> |
Для простых товаров фильтр строится значительно проще, без использования подзапросов:
2 //ID скидки ); ?> |
PROPERTY_AFP_DISCOUNT_VALUE' => 0 ); ?> |
17, // инфоблок торговых предложений. "PROPERTY_AFP_DISCOUNT_LIST" => 2 //ID скидки ); $obSubQuery = CIBlockElement::SubQuery('PROPERTY_CML2_LINK', $arSubQuery); $arrFilter = array( array( "LOGIC" => "OR", array( "PROPERTY_AFP_DISCOUNT_LIST" => 2, //ID скидки ), array( "ID" => $obSubQuery, ), ), ); }?> |
17, // инфоблок торговых предложений. ">PROPERTY_AFP_DISCOUNT_VALUE" => 0 ); $obSubQuery = CIBlockElement::SubQuery('PROPERTY_CML2_LINK', $arSubQuery); $arrFilter = array( array( "LOGIC" => "OR", array( ">PROPERTY_AFP_DISCOUNT_VALUE" => 0, ), array( "ID" => $obSubQuery, ), ), ); }?> |
3) Каталог - честная сортировка по цене (для простых товаров)
Компонент каталога позволяет использовать для простых товаров сортировку по цене, но эта сортировка не учитывает скидки. Используя этот модуль, вы можете выводить товары, отсортированные по цене с учётом скидки.
4) Быстрый вывод цены в каталоге
Для разработчиков: может так оказаться, что страницы каталога на вашем сайте работают очень медленно, и даже после всей возможной оптимизации последнее оставшееся узкое место - это вычисление и вывод цены на детальной странице или на странице списка, особенно когда недоступно кэширование (например, при использовании фильтра). В таком случае, вы можете отключить вычисление цены в настройках компонента и вместо этого выводить в шаблоне компонента свойства, заполненные данным модулем.
5) Быстрый вывод цены для выгрузки на Яндекс.Маркет и другие площадки
Аналогично предыдущему пункту, если создание файла выгрузки происходит слишком долго, замедляет сайт или же даже не успевает завершиться вовремя, чтобы вернуть файл, можно модифицировать генерацию файла таким образом, чтобы цена бралась из свойств, а не вычислялась - это значительно менее ресурсоёмкий процесс.
В каких случаях модуль вам не поможет:
1) Цены вычисляются для группы пользователей [2] (то есть, "все пользователи"). Если для задания цен в магазине вы активно используете различные группы пользователей с привязкой различных типов цен или различными скидками, то данные, записываемые агентом в свойства товаров, не будут достоверны и вряд ли вам пригодятся.
2) Как правило, даже в случае многосайтовости на отдельных сайтах используются раздельные каталоги. Однако, если у вас многосайтовость, при этом товары из одного и того же каталога выводятся на нескольких разных сайтах, и к тому же, что важно, на этих сайтах по-разному задаётся цена (например, используются разные скидки), то модуль будет вычислять правильные цены только для одного из сайтов (и точно неизвестно, для какого именно), поскольку разные наборы свойств в товарах для этого случая не предусмотрены.
Прочие советы:
Агент оптимизирован для работы с большими каталогами, дополнительные возможности по ускорению работы включаются в настройках модуля. На больших каталогах агент может работать достаточно долго, от нескольких секунд, до нескольких минут, поэтому рекомендуем использовать для запуска агентов cron. Чтобы это сделать, можете воспользоваться нашим бесплатным модулем "Агенты на кроне".
Адаптивность | Нет |
Версия | 1.0.6 |
Обновлено | 14.02.2020 |
Опубликовано | 14.04.2017 |
Поддержка Композита | Нет |
Подходящие редакции | «Малый бизнес», «Бизнес» |
Совместимо с Сайты24 | Нет |
Установлено | 100 - 499 раз |
Рекомендуемые товары
Теги: Цены и скидки для SEO. Запись в свойства товаров, Свойства, фильтр, поиск, готовый сайт