Каталог решений

Покупка продления купона

Продолжительность:
Общая сумма:
0 руб.
Ваш запрос успешно отправлен!
Условия использования
Продлить
Продолжить покупки

TS Умный экспорт

Модуль выгружает товары и торговые предложения в xml-файл по заданному шаблону.Путь до xml-файла указывается  в личном кабинете того сервиса, с которым вы работаете, Яндекс.Маркет, Гугл.Товары,  он автоматически его загружает, обрабатывает и публикует товары, с вашей стороны требуется только своевременное обновление xml-файла на сайте.Поддерживается три сервиса: 1) Яндекс.Маркет- Упрощенный тип описания (simple)- Произвольный тип описания (vendor.model)- Яндекс.Вебмастер понимает xml-файл, могут быть предупреждения по тегам, просто игнорируйте их, это не ошибки.2) Google Merchant Center- Обновление онлайн-ассортимента (Online)- Фид товаров (Products)3) Яндекс.Дзен Демо экспорта Яндекс.Маркетview-source:https://tuning-soft.ru/bitrix/catalog_export/api_export_1.xmlДемо экспорта Google Merchant Centerview-source:https://tuning-soft.ru/bitrix/catalog_export/api_export_2.xmlФайл экспорта для Гугла в браузере не открывается, смотрите исходный код страницы view-sourceДемо экспорта Яндекс.Дзен в формате RSS 2.0https://tuning-soft.ru/bitrix/catalog_export/api_export_3.xml[TS Умный экспорт] Новинки версии 2.0https://tuning-soft.ru/articles/bitrix-modules/ts-smart-export-new-in-version-2-0.html

Скриншоты
Описание

Технические данные

Опубликовано:
11.07.2017
Обновлено:
18.04.2018
Версия:
2.4.0
Установлено:
100 - 499 раз
Подходящие редакции:
«Первый сайт», «Старт», «Стандарт», «Малый бизнес», «Эксперт», «Бизнес»
Адаптивность:
Да
Поддержка Композита:
Да

Описание

Модуль выгружает товары и торговые предложения в xml-файл по заданному шаблону.

Путь до xml-файла указывается  в личном кабинете того сервиса, с которым вы работаете, Яндекс.Маркет, Гугл.Товары,  он автоматически его загружает, обрабатывает и публикует товары, с вашей стороны требуется только своевременное обновление xml-файла на сайте.

Поддерживается три сервиса:

1) Яндекс.Маркет

- Упрощенный тип описания (simple)
- Произвольный тип описания (vendor.model)
- Яндекс.Вебмастер понимает xml-файл, могут быть предупреждения по тегам, просто игнорируйте их, это не ошибки.

2) Google Merchant Center
- Обновление онлайн-ассортимента (Online)
- Фид товаров (Products)

3) Яндекс.Дзен

Демо экспорта Яндекс.Маркет
view-source:https://tuning-soft.ru/bitrix/catalog_export/api_export_1.xml

Демо экспорта Google Merchant Center
view-source:https://tuning-soft.ru/bitrix/catalog_export/api_export_2.xml

Файл экспорта для Гугла в браузере не открывается, смотрите исходный код страницы view-source

Демо экспорта Яндекс.Дзен в формате RSS 2.0
https://tuning-soft.ru/bitrix/catalog_export/api_export_3.xml

[TS Умный экспорт] Новинки версии 2.0
https://tuning-soft.ru/articles/bitrix-modules/ts-smart-export-new-in-version-2-0.html
Отзывы (1)

Обсуждения (68)
1 - 5 из 68
Что нового
2.4.2 (18.04.2018) Исправлены пути картинок в облачных хранилищах.
2.4.1 (18.04.2018) (beta) В профилях Гугла удален атрибут encoding кодировки файла
2.4.0 (10.04.2018) В профили Яндекс.Маркет добавлен элемент group_id для группировки offer по общему идентификатору элемента из свойства привязки CML2_LINK.
Значение идентификатора group_id для подстановки есть в конструкторе поля, в категории настроек: Товар - GROUP_ID
https://s.mail.ru/Fsq1/Ug3nuiH9Y
2.3.3 (10.04.2018) Исправлен метод получения свойств инфоблока.
Добавлена поддержка связанных элементов, справочников и др. пользовательских свойств инфоблока.
2.3.2 (19.03.2018) Немного уменьшен расход памяти, в следующем обновлении постараемся еще уменьшить.
2.3.1 (19.03.2018) ИСПРАВЛЕНО
  • При прямом запуске профиля с ID=X активность не учитывается, можно тяжелые профили запускать отдельно от остальных неактивными.
  • Убран тестовый memory_limit в экспорте, обращайте внимание на наличие ограничений memory_limit в файле dbconn.php
2.3.0 (14.03.2018) ДОБАВЛЕНО
  • Новый, экспериментальный профиль Яндекс.Дзен
  • Класс для работы с профилем Api\Export\Ya\Dzen
  • Публичные методы класса, обработчики полей:
    Api\Export\Ya\Dzen::getGuid
    Api\Export\Ya\Dzen::getPreviewText
    Api\Export\Ya\Dzen::getDetailText
  • Все настройки профиля заданы по умолчанию, достаточно их открыть и сохранить
  • Новая опция для поля: Формат даты для полей типа Дата
    Данной опцией можно конвертировать дату элемента в заданный вами формат.
    Например, для Яндекс.Дзен или RSS 2.0 требуется формат: D, d M Y H:i:s O
    В выгрузке этот формат выглядит так: <pubDate>Sun, 08 May 2016 10:38:07 +0300</pubDate>
Обратите внимание!
У всех сайтов оформление контента разное, на валидность в Яндекс.Дзен формат пока не проверялся, только на валидность RSS 2.0, если вам текущие методы не подходят, копируйте их, переписывайте под нужды сайта и контента.
2.2.0 (13.03.2018) ДОБАВЛЕНО
  • Доработан фильтр условий отбора элементов
  • В селектор полей элемента добавлены все поля таблицы элемента
2.1.4 (26.02.2018) Исправлена проблема с UTM-метками, когда в конце url подставлялся ?=
2.1.3 (26.02.2018) ИСПРАВЛЕНО
  • В списке логических значений in_stock/out_of_stock заменены подчеркивания на пробелы
ДОБАВЛЕНО
  • В списке логических значений добавлено in stock/preorder
2.1.2 (22.02.2018) Исправлены ошибки на младших редакциях без магазина
2.1.1 (21.02.2018) Обновлен Фид товаров (Google Products), исправлена проблема с неизвестными символами в тегах.Внимание! Чтобы избавиться от некорректных тегов, которые уже сохранены в профиле в базе, нужно открыть и пересохранить профиль, при открытии все неизвестные теги удалятся, а при сохранении обновятся в базе.
2.1.0 (20.02.2018) ДОБАВЛЕНО
  • Возможность в кастомном поле <param> задать значение атрибута unit="", как вручную в настройках поля, так и автоматически из описания свойства элемента
  • В список логических значений добавлен еще один вариант yes/no для Google
ИСПРАВЛЕНО
  • В списке логических значений in_stock/out_of_stock заменены пробелы на подчеркивания
2.0.0 (19.02.2018) Внимание! Новая версия модуля, конструктор полей OFFER полностью переделан.
Чтобы не потерять/забыть текущие настройки, перед установкой обновлений откройте профили экспорта в одной вкладке или браузере, после обновляйте модуль и заново все настраивайте уже в другой вкладке или браузере, сравнивая старые настройки с новыми в разных вкладках/браузерах.ДОБАВЛЕНО
  • Цены нового интернет магазина
  • Настройка - Габариты (Д/Ш/В)
  • Настройка - Метки UTM
  • Доп. фильтр торговых предложений
  • Переработанный конфигуратор полей, теперь каждому тегу можно задавать несколько полей/свойств, для элемента и торговых предложений
  • Добавлены цвета тегам для наглядности различия: красный - обязательный, синий - не обязательный, серый - кастомное поле
  • Новые дополнительные опции:
    1) Использовать в значении поля готовый текст
    2) Заменить значение поля (1|Y|>0|true|Да) на логическое
    3) Доп. условия для логического значения поля
    4) Доп. условия для логического значения поля ТП
ИЗМЕНЕНО
  • Изменены счетчики, сумма Элементов и Предложений может отличатся от Всего выгружено, т.к. товары без цен из экспорта исключаются.
    1) Всего выгружено - счетчик всех элементов попавших в прайс-лист
    2) Элементов - всего элементов, попавших в запрос к базе
    3) Предложений - всего предложений, попавших в запрос к базе
1.1.9 (03.02.2018) Исправлены ошибки
1.1.8 (17.12.2017) Фикс обновлений
1.1.7 (17.12.2017) В опцию поля профиля "Обработать значение функцией" добавлена возможность использовать свой класс и статический метод обработчик значения, пример: SomeClass::someStaticMethodКласс можно определить например в init.php, методы принимают два параметра $value,$arField:
$value - значение поля (строка)
$arField - настройки поля (массив)
Т.к. значение передается не по ссылке его обязательно нужно вернуть в конце вашего обработчика:
return $value;
1.1.5 (13.12.2017) Обновил название модуля в меню
1.1.4 (13.12.2017) Если у ТП нет фото, подставится фото товара
1.1.3 (12.12.2017) Исправлена ошибка каталожного поля AVAILABLE, в прайс записывалось неверное значение Y
1.1.2 (12.12.2017) Добавлена перезапись max_execution_time ядра сайта в файле крона
1.1.1 (12.12.2017) ИСПРАВЛЕНО
  • Проблемы на младших редакция без интернет-магазина.
  • Возможность указать срок доставки в формате диапазона (например, 0-2 дня, 1-2, дня и т.д.)
  • В настройках полей входящих в <offer> заблокированы некоторые возможности на редакциях без магазина.
1.1.0 (14.07.2017) [+] Добавлена возможность подключать пользовательский обработчик доставок профиля в файле delivery.php
Файл необходимо создать в одной из папок, на ваш выбор:
/local/php_interface/include/api.export/delivery.php
/bitrix/php_interface/include/api.export/delivery.php

Скачать пример обработчика можно здесь:
https://tuning-soft.ru/upload/marketplace/delivery.zip
1.0.1 (14.07.2017) [x] Если указана функция обработчик значения поля, то встроенная обработка поля функцией htmlspecialcharsbx() отключится, в вашей функции будут доступны исходные данные поля или свойства
Установка
ТРЕБОВАНИЯ
- Битрикс 17+
- PHP 5.5+
- Планировщик задач Cron на сервере
- Подходящие редакции: «Первый сайт», «Старт», «Стандарт», «Малый бизнес», «Эксперт», «Бизнес»    

Поддерживается два типа товара: 1) TYPE_PRODUCT - Простой товар
2) TYPE_SKU - Товар с торговыми предложениями

УСТАНОВКА И НАСТРОЙКА
- Установка модуля обычная по кнопке "Попробовать".
- После установки перейдите в раздел Сервисы->TS Умный экспорт товаров в торговые порталы->Профили
- Нажмите зеленую кнопку "Добавить", профиль должен заполниться минимальными настройками по умолчанию, для тестирования вам достаточно будет задать: Активность, Цену, Валюту, Инфоблок.
Тип описания предложения (фида) и Поля также заполняются автоматически на минимальные, по умолчанию будет "Упрощенный тип описания (simple)"
- Далее нажимайте "Сохранить" и в списке профилей должен появиться новый, созданный вами профиль выгрузки.
- Далее остается настроить планировщик задач Cron на выполнение файла:
/bitrix/modules/api.export/tools/cron.php
Настраивается задача на сервере или хостинге, время запуска вам нужно подбирать свое, например, каждый час, каждый день, в определенное время и т.д.


Это все настройки, после запуска файла экспорта cron.php в папке
/bitrix/catalog_export
будут создаваться файлы экспорта
api_export_X.xml
где X - это айди (идентификатор) профиля.

Узнать http-путь до файла экспорта можно в настройках профиля на первой вкладке 1) Профиль
https://monosnap.com/file/Jxd3Tf0FryD2bsmpo0eiOpeykkTOZw.png

Там же будет записываться лог экспорта по каждому профилю, последние 30 файлов
/bitrix/catalog_export/api_export_log

НАСТРОЙКА ВКРАТЦЕ
1) Создать профиль выгрузки
На каждый портал нужно создавать отдельный профиль и у каждого портала будут разные типы описаний предложений, это тоже всё разные профили.
2) Только один раз нужно настроить планировщик задач Cron на выполнение файла, который в цикле поочередно запускает профили с учетом сортировки и активности, и только активные, далее вы будете работать только с профилями, все остальное будет делать сервер или хостинг запуская этот файл.


Примеры настроек планировщика задач Cron каждый час


Open Server
https://monosnap.com/file/SgME0GHwGhq1YjgZ7leemAkf0EaC3D.png

Время: 0 * * * *
Выполнить:
%progdir%\modules\php\%phpdriver%\php-win.exe -c %progdir%\modules\php\%phpdriver%\php.ini -q -f %sitedir%\tuning-soft.os\bitrix\modules\api.export\tools\cron.php


ПУ VESTA
https://monosnap.com/file/LsMYjygacqCrVNyTKVfxcxfATjohTZ.png

Время: 0 * * * *  
Команда
/usr/bin/php -f ~/web/tuning-soft.os/public_html/bitrix/modules/api.export/tools/cron.php

ПУ ISP Manager на хостинге REG.RU
https://monosnap.com/file/lFRD0xieTbKg7lxFDqk3qJATbaP5WL.png

Период: Каждый час
Команда
/opt/php/5.6-bx-optimized/bin/php -c /var/www/u0999099/data/php-bin/php.ini -f /var/www/u0999099/data/www/tuning-soft.os/bitrix/modules/api.export/tools/cron.php
5.6-bx-optimized - это версия php на хостинге, если у вас другая версия, например 7.1, то везде вместо 5.6-bx-optimized пишите 7.1
u0999099  - Логин к панели управления хостингом

Чтобы не приходили всякие системные сообщения или ошибки после выполнения команд, можно:
а) либо поставить вот такую галку, как в панели ISP
не посылать отчёт по e-mail
б) либо дописать в конце команды через пробел вот это
 > /dev/null 2>&1

ISP 5 наглядный пример
https://s.mail.ru/12pq/d8nZbuPGj


ИНФОРМАЦИЯ
Пока профиль выполняется, повторно он не запустится
Например, вы настроили экспорт на каждый час, через час крон заново запускает экспорт, а один какой-то профиль еще не закончил свою работу, тогда скрипт пропустит это профиль и пойдет выполнять другие.

В конструкторе полей <offer> можно использовать любые функции обработчики
В модуле есть возможность применять различные функции обработчики значений поля <offer>, встроенные в модуль, ваши собственные функции в init.php, встроенные в Битрикс и встроенные в php функции для работы со строками.

Доступные в модуле функции с префиксом fn_functionName:
fn_htmlspecialchars - пока не могу вспомнить зачем она, пробуйте лучше эту htmlspecialchars
fn_htmlToText - Конвертирует html в текст обрезая описание до 3000 символов, подойдет для форматирования описаний товаров.
fn_htmlToCDATA - Обернет html в тег <![CDATA[ обрезая описание до 3000 символов, это используется на Яндекс.Маркете, подойдет для форматирования описаний товаров.

Задаются в полях функции таким образом, просто пишется название функции
https://monosnap.com/file/InsucgmBuOPb5gxWTsutGp05oejc3D.png

Далее модуль ищет функцию сначала в своем классе, если ее там нет, проверяет существование ее вообще, есть нашел, то запускает таким образом:
$value = call_user_func_array($userFunc, array($value));
$userFunc - это сама функция, например: htmlspecialcharsbx
$value - это строковое значение поля, первый аргумент функции

Если не задана функция обработчик, то модуль по умолчанию обработает значение поля Битрикс функцией htmlspecialcharsbx()


Функции для обработки строк и текста в Битрикс
https://dev.1c-bitrix.ru/api_help/main/functions/string/index.php

Функции для обработки строк и текста в PHP
http://php.net/manual/ru/ref.strings.php

Возможно стоит сделать одну функцию обработчик по умолчанию, проверять ее существование, например, определенную вами в init.php где вы сами в зависимости от названия поля по условиям будете форматировать значения как захочется, если не определена, то применить свою с обработкой htmlspecialcharsbx, еще многое предстоит подумать и обкатать, если что, пишите.

Торговые предложения (характеристики) товара выгружаются как отдельные товары с уникальным айди.
Сам товар из экспорта удаляется, но объединяются свойства товара и ТП.
Например, у товара есть свойство "Производитель" с кодом "VENDOR", а у торговых предложений этого свойства нет, модуль объединит свойства товара со свойствами ТП таким образом
$arOffer['PROPERTIES'] = array_merge($arIitem['PROPERTIES'], $arOffer['PROPERTIES']);
В этом случае значение свойства товара VENDOR заданное в настройках полей профиля, также будет выгружаться с торговым предложением, значение будет браться у товара общее для всех ТП.
А вот если у ТП будет такое свойство, то оно заменит свойство родительского товара, т.е. в этом случае уже будет выгружаться свойство ТП.


В логах много полезной информации по экспорту
Пример: /bitrix/catalog_export/api_export_log
Профиль:    2
Процесс:   17964
Выделено памяти:   512M
Начало выгрузки:   25.06.2017 13:51:02
Шаг: 1 Элементов: 500 Память: 24 МБ  Время, сек:    8.91
Шаг: 2 Элементов: 500 Память: 33 МБ  Время, сек:    16.15
Шаг: 3 Элементов: 500 Память: 40 МБ  Время, сек:    22.62
Шаг: 4 Элементов: 500 Память: 47 МБ  Время, сек:    30.44
Шаг: 5 Элементов: 500 Память: 53 МБ  Время, сек:    37.05
Шаг: 6 Элементов: 500 Память: 57 МБ  Время, сек:    44.05
Шаг: 7 Элементов: 500 Память: 61 МБ  Время, сек:    51.16
Шаг: 8 Элементов: 500 Память: 64 МБ  Время, сек:    57.65
Шаг: 9 Элементов: 500 Память: 68 МБ  Время, сек:    64.37
Шаг: 10    Элементов: 500 Память: 72 МБ  Время, сек:    70.76
Шаг: 11    Элементов: 500 Память: 76 МБ  Время, сек:    77.18
Шаг: 12    Элементов: 500 Память: 81 МБ  Время, сек:    83.92
Шаг: 13    Элементов: 500 Память: 85 МБ  Время, сек:    90.87
Шаг: 14    Элементов: 500 Память: 89 МБ  Время, сек:    97.54
Шаг: 15    Элементов: 500 Память: 94 МБ  Время, сек:    104.40
Шаг: 16    Элементов: 500 Память: 98 МБ  Время, сек:    111.11
Шаг: 17    Элементов: 500 Память: 102 МБ Время, сек:    118.33
Шаг: 18    Элементов: 500 Память: 106 МБ Время, сек:    124.94
Шаг: 19    Элементов: 500 Память: 110 МБ Время, сек:    131.82
Шаг: 20    Элементов: 500 Память: 115 МБ Время, сек:    138.53
Шаг: 21    Элементов: 500 Память: 118 МБ Время, сек:    145.29
Шаг: 22    Элементов: 500 Память: 122 МБ Время, сек:    152.05
Шаг: 23    Элементов: 500 Память: 125 МБ Время, сек:    158.17
Шаг: 24    Элементов: 500 Память: 129 МБ Время, сек:    164.45
Шаг: 25    Элементов: 500 Память: 133 МБ Время, сек:    170.83
Шаг: 26    Элементов: 500 Память: 137 МБ Время, сек:    177.13
Шаг: 27    Элементов: 500 Память: 142 МБ Время, сек:    182.91
Шаг: 28    Элементов: 500 Память: 146 МБ Время, сек:    189.20
Шаг: 29    Элементов: 500 Память: 150 МБ Время, сек:    195.26
Шаг: 30    Элементов: 500 Память: 154 МБ Время, сек:    201.47
Шаг: 31    Элементов: 500 Память: 157 МБ Время, сек:    207.11
Шаг: 32    Элементов: 500 Память: 161 МБ Время, сек:    213.41
Шаг: 33    Элементов: 500 Память: 165 МБ Время, сек:    219.47
Шаг: 34    Элементов: 500 Память: 168 МБ Время, сек:    225.18
Шаг: 35    Элементов: 500 Память: 171 МБ Время, сек:    231.22
Шаг: 36    Элементов: 500 Память: 173 МБ Время, сек:    237.40
Шаг: 37    Элементов: 16  Память: 173 МБ Время, сек:    237.66
Конец выгрузки:    25.06.2017 13:54:59
Обновлено всего:   18016
Время выполнения, сек: 237.68
Использовано памяти:   168 МБ

Актуальная документация к модулю на моем сайте
Поддержка
Уважаемые клиенты!
Индивидуальную помощь с установками, настройками, поиском проблем на сайте, консультациями и т.д. по любым решениям я больше не оказываю, ни платно, ни бесплатно, у меня нет таких ресурсов, чтобы каждого индивидуально обслуживать каждый день с утра до вечера и круглый год.
А также производить какие-либо работы на вашем сайте, вносить изменения в его код и т.д. я не обязан, кто вам делал сайт, тот и должен с ним работать, искать проблемы, решать их, а также хостеры, сисадмины и .т.д., никак ни Антон из Новосибирска.

Подробнее читайте здесь.

Консультации по решениям на маркетплейс закрыты

На моем сайте есть документация, статьи, блог, идеи, там можно найти ответы на ваши вопросы, а также есть поиск Google.
Портал идей
https://tuning-soft.ru/idea/

Статьи

https://tuning-soft.ru/articles/

Блог

https://tuning-soft.ru/blog/

История
https://tuning-soft.ru/history/

Документация
https://tuning-soft.ru/docs/

Очень полезно узнать, как правильно подключать jQuery
https://tuning-soft.ru/articles/bitrix/1c-bitriks-kak-pravilno-podklyuchat-jquery.html

Лицензионное соглашение

Другие решения разработчика

Рекомендуем

Решение добавлено в корзину

Перейдите в корзину и оформите заказ или продолжите покупки
Перейти в корзину
Продолжить покупки