Публикую 2 обработки по обмену данными из 1С с сайтом/магазином WordPress/Woocommerce. В них показаны принципы позволяющие публиковать/изменять/удалять/просматривать посты/страницы/товары/фотографии (в связке с товаром/страницей) на сайте/магазине WordPress/Woocommerce, получать ответы от сайта/магазина.
- ОбменССайтом_RestAPI_БезКомментариев — моя первая рабочая обработка сделанная в декабре 2024, связанная с темой REST API WordPress/Woocommerce. "Голый" код, без комментариев. Разработана под конфигурацию "Альфа-Авто", для "ассов" 1С готовых разбираться в "замусоренном" коде. Присутствует дополнительный код, связанный с обменом непосредственно для "Альфа-Авто" и сайтом, может подчерпнете что-то полезное. Сделана "я его слепила, из того, что было", вопросы, запросы, просьбы о комментариях и т.д и т.п. не поддерживаются.
- OsiW_1C_WordPress_RestAPI_Client_InfoStart_FullHelp — потомок обработки из п.1, "вылизанная", оптимизированная, с минимально необходимым кодом для обмена с сайтом/магазином WordPress/Woocommerce, со встроенной справкой по использованию, комментариями к коду. Привязки к какой-то конфигурации нет, подойдет для любой которая использует обычные формы. Сделана под стандарты REST API WordPress: Маршруты (Routes), Конечные точки (Endpoints), Запросы (Requests), Ответы (Responses). В случае необходимости готов написать статью (несколько статей) с подробным описанием работы (может вы только начинаете работать с REST API и вам не всё понятно :), пишите в комментах).
Данные обработки предназначены в первую очередь для программистов 1С, тем кому интересна тема REST API, обменом с сайтом.
Используя и модифицируя обработки под свои "хотелки", вы сможете творить практически все, что вам нужно для публикации/редактирования страниц/товаров сайта/магазина. С помощью кода этих обработок, приложив свои знания, навыки, желания, и небольшие усилия можно легко и просто опубликовать пост/страницу/товар на сайте прямо из 1С без специфических знаний PHP и иных языков, используя только знания в программировании 1С*.
Демонстрационное видео публикации товара: посмотреть.
Тестировалось на моем сайте: перейти.
Версия WordPress : 5.2
MySQL Версия : 5.7.23
PHP Версия : 7.2.14
Обработка тестировалась:
Конфигурации: Альфа-Авто: Автосалон+Автосервис+Автозапчасти, редакция 5.1 (5.1.10.09)
Платформа: 1С:Предприятие 8.3 (8.3.13.1644)
Важное замечание.
Конфигурация должна быть в режиме совместимости не ниже 8.3.6
*Данные обработки подпадают по действие Пользовательского соглашения (и в особенности п.6.1)
Здравая критика приветствуется.
С удовольствием выслушаю предложения и пожелания.
Голосую за статью.
P.S. Прошу прошения — по ошибке нажал на «-«
Чем она от прошлых отличается ?
(2)Добавлен обмен с магазином, оптимизирован код.
Здравствуйте, было бы просто замечательно. Скачивал Вашу обработкуhttp://infostart.ru/public/902801/ , и ее не смог проверить так как не получилось настроить Rest API со стороны Woocommerce. В настройки зашел галку поставил, токен получил, при обращении к сайту обработкой ответ 404… Цикл статей был бы великим вложением с Вашей стороны в популяризацию отличного Woocommerca среди 1Сников.
//П.С данную обработку хотелось бы скачать, но боязно что в случае как сhttp://infostart.ru/public/902801/ настроить не получится.
(4)
Та обработка давным давно устарела, и морально и физически, т.к. всё изменилось, сейчас генерить токен не надо, логины-пароли юзеров WC не нужны, значительно упростилось, в связи этим код 1С уменьшился.
Напишу, только не знаю, с чего начать, подкинете план, буду признателен.
Спасибо за проявленный интерес.
У своего клиента внедрили платную обработку для обмена с вукомрцем.
Решение работает, но они сделали целую подсистему, чтобы продублировать функционал вукомерца и подобных систем.
Ваше решение я так понимаю реализовало доступ к АПИ вукомерца.
Статья была бы очень кстати, которая покажет базовые примеры работы с АПИ и опишет в понятиях 1С работу с вукомерц.
В идеале описание всех методов АПИ и сущностей вукомерца, которые можно заполнить данными 1С.
Валерий, спасибо за разработку. Посмотрел ее, есть вопрос. В этой разработке вы авторизуетесь с помощью токена JVT. Возможно подскажете, можно ли использовать для авторизации логин и секретный ключ вукомерса и как этого добиться? в их инструкции есть раздел Authentication over HTTPS, там они вроде как подключаются через HTTP Basic Auth, но у меня никак не получается, может есть какая-то тонкость. Хотел несколько способов авторизации использовать, по желанию пользователя.
(7)
Можно, пробовал этот метод очень давно, с год наверное, уже не помню как. Но этот способ очень замороченный, сложный, требовавший (на тот момент) вмешательства в работу сайта, правки htaccess, в общем плюнул. Описаний и примеров каких-либо толковых не нашел. Может сейчас что-то изменилось, не в курсе.
(7)
Зачем?
Искал, пробовал много способов, все замороченные и сложные, и как правило надо вмешиваться в работу сайта, см. выше. В том числе, значительно усложняли код 1С.
(8) ясно. я думал что так может кому-то удобней будет. но видимо нет. спасибо
А как картинкы крепятса до товару ? и как оны отсилаютса с товаром на сайт ?
Как прикрепить к товару не одну картинку а несколько ? Можно и без отображения просто штоб в номенклатуре были прикреплены к одному товару ? Вот есть код но он прикрепляет только одну картинку. как из него зделать так штоб можно было прикрепить не одну а хотябы 5 или 10 ?
&НаКлиенте Процедура ПрикрепитьФайл(Команда) // ОбъектТекущий = РеквизитФормыВЗначение(“Объект”); Режим = РежимДиалогаВыбораФайла.Открытие; ДиалогОткрытияФайла = Новый ДиалогВыбораФайла(Режим); ДиалогОткрытияФайла.ПолноеИмяФайла = “”; ДиалогОткрытияФайла.Расширение = “”; ДиалогОткрытияФайла.МножественныйВыбор = Ложь; // ДиалогОткрытияФайла.ВыбранныеФайлы = “”; ДиалогОткрытияФайла.Заголовок = “Выберите файлы”; Если ДиалогОткрытияФайла.Выбрать() Тогда ПутьКФайлу = ДиалогОткрытияФайла.ПолноеИмяФайла; // Получение двоичные данные файла //ПутьКФайлу = ДиалогОткрытияФайла.Расширение; ДвоичныеДанные = Новый ДвоичныеДанные(ПутьКФайлу); // Имя = Новый ДвоичныеДанные(ПутьКФайлу); //Разширение = Новый ДвоичныеДанные(ПутьКФайлу); // Передача двоичных данные на сервер ПрикрепитьФайлНаСервере(ДвоичныеДанные); Иначе Текст = “ru = “”Файл(ы) не выбран!””; en = “”File(s) not selected!”””; Предупреждение(НСтр(Текст)); КонецЕсли; КонецПроцедуры &НаСервере Процедура ПрикрепитьФайлНаСервере(ДвоичныеДанные) // Трансформируем объект формы в справочник-объект ОбъектТекущий = РеквизитФормыВЗначение(“Объект”); // Присваиваем новое значение реквизиту “Данные” //РегистрыСведений.СопоставлениеДанных. = Новый ХранилищеЗначения(ДвоичныеДанные); ОбъектТекущий.Картинка = Новый ХранилищеЗначения(ДвоичныеДанные); //ОбъектТекущий.КартинкаИмя = Новый ХранилищеЗначения(Имя); //ОбъектТекущий.КартинкаРазширение = Новый ХранилищеЗначения(Разширение); //ОбъектТекущий.Данные = Новый ХранилищеЗначения(ДвоичныеДанные); //ОбъектТекущий.РегистрыСведений.СопоставлениеДанных.Данные = Новый ХранилищеЗначения(ДвоичныеДанные); // Сохраняем изменения ОбъектТекущий.Записать(); // Данные = РегистрыСведений.СопоставлениеДанных.Данные; КонецПроцедуры
(13)
Зачем вы изобретаете велосипед?
Давно всё изобретено, используйте штатные механизмы конфигураций, УТ например.
Вы где взяли этот код?
Ну а как их добавить в свою розработку? И откуда взять ету УТ ? Еслы купить целый пакет ради Добавленние фалов т оето как то не совсем то што мне нужно, по сколько я не буду ее юзать. Может кто срисовать в общих чертах у кого она есть как такео реализовать?
В той конфигурации што у меня есть там обычние формы а мне надо управляемые поетому и пишу сюда.