Задать вопрос
  • Макросы для использования на вкладке "SEO" формы редактирование элементов и разделов инфоблока?

    @lenchik_boldireva
    Веб-разработчик
    Это не решить макросом на вкладке SEO. Нужно будет отследить в карточке товара выбранный пользователем размер, после чего модифицировать TITLE в component_epilog.php.
    По ссылке из официальной документации приведён конкретный пример модификации свойств, вам нужно будет из result_modifier.php передать массив $arResult["OFFERS"].
    https://dev.1c-bitrix.ru/learning/course/index.php...
    В общем логика такова:
    1) В шаблоне на вкладке SEO оставляете только название товара (Ковер {=this.Name})
    2) В component_epilog.php (если нет, то создать его). При загрузке страницы у вас может быть либо в url в get параметре ID нужного ТП, либо первый из массива offers. По этому ID находите значение размера предложения.
    3) Если значение из п.2 найдено, то получаем текущее значение TITLE, добавляем к нему найденный размер и делаем $APPLICATION->SetPageProperty("TITLE", $found_var);

    Это то значение, которое собственно будет попадать в индекс поисковых систем. А вот касательно динамического изменения при переключении ТП, то это просто делается через jquery или js
    Ответ написан
    Комментировать
  • Простой компонент внутри простого компонента Битрикс?

    @lenchik_boldireva
    Веб-разработчик
    Это ничего не нарушает, взять тех же лидеров маркетплейса Аспро, у них простые компоненты добавлены в код других простых. Проблемы с кешированием действительно есть, но их можно решить простой конструкцией, привожу пример кода вызова компонента внутри другого:
    "USE_PRICE_COUNT" => "Y",
        		"USE_PRODUCT_QUANTITY" => "N"
        	),
            $component
        );?>


    Вот этот $component решает проблему кеширования.
    Отключать кеш родительского компонента - вот всем костылям костыль, и нарушение методологии Битрикс...
    Ответ написан
    1 комментарий
  • Как добавить время доставки в компонент оформления заказа?

    @lenchik_boldireva
    Веб-разработчик
    Я создавала отдельно свойство "Дата доставки" типа Дата, а также свойство типа Список "Время доставки", где были перечислены интервалы для доставки. Если нужно конкретное время, то можно воспользоваться свойством типа строка, на которое "навесить" любую библиотеку маски (maskedinput, например). На поле с датой я навесила библиотеку AirDatepicker, у неё много настроек, в том числе позволяющих заблокировать выбор прошедших дат
    Ответ написан
    Комментировать