GithubHelp home page GithubHelp logo

sgtpep / woocommerce-1c Goto Github PK

View Code? Open in Web Editor NEW
70.0 19.0 41.0 1.29 MB

Provides data exchange between the WooCommerce plugin for WordPress and the business application "1C:Enterprise 8. Trade Management" (and compatible ones).

Home Page: https://wordpress.org/plugins/woocommerce-and-1centerprise-data-exchange/

License: GNU General Public License v3.0

PHP 99.58% Shell 0.42%
wordpress woocommerce woocommerce-plugin wordpress-plugin 1c-enterprise commerceml data-exchange

woocommerce-1c's Introduction

=== WooCommerce and 1C:Enterprise/1С:Предприятие Data Exchange ===
Contributors: sgtpep
Donate link: https://money.yandex.ru/embed/donate.xml?account=410011766586472&quickpay=donate&payment-type-choice=on&default-sum=1000&targets=%D0%9F%D0%BB%D0%B0%D0%B3%D0%B8%D0%BD+%22%D0%9E%D0%B1%D0%BC%D0%B5%D0%BD+%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D0%BC+%D0%BC%D0%B5%D0%B6%D0%B4%D1%83+WooCommerce+%D0%B8+1%D0%A1%3A%D0%9F%D1%80%D0%B5%D0%B4%D0%BF%D1%80%D0%B8%D1%8F%D1%82%D0%B8%D0%B5%D0%BC%22&target-visibility=on&project-name=&project-site=https%3A%2F%2Fwordpress.org%2Fplugins%2Fwoocommerce-and-1centerprise-data-exchange%2F&button-text=05&fio=on&mail=on&successURL=
License: GPLv3
License URI: http://www.gnu.org/licenses/gpl-3.0.html
Tags: 1c, 1c-enterprise, commerceml, integration, e-commerce, ecommerce, commerce, shop, cart, woothemes, woocommerce
Requires at least: 3.8
Tested up to: 5.4
Stable tag: 0.9.20

Provides data exchange between WooCommerce plugin and business application "1C:Enterprise 8. Trade Management" (and compatible ones).

== Description ==

= In Russian =

Предоставляет обмен данными между плагином для электронной коммерции WooCommerce и приложением для бизнеса "1C:Предприятие 8. Управление торговлей" (и совместимыми).

> Для достижения корректной работы плагина могут потребоваться базовые навыки администрирования веб-серверов (просмотр логов, изменение настроек php и веб-серверов и др.) А настройка плагина осуществляется добавлением констант в `wp-config.php` (посмотреть доступные можно командой: `grep -r "define('WC1C_"`) и функций [фильтров и действий](https://codex.wordpress.org/Plugin_API) в `functions.php` в папке активной темы (посмотреть доступные можно командой: `grep -r "do_action\|apply_filters"`).

Особенности:

* Выгрузка товаров: группы (категории), свойства и значения, список товаров и вариантов, изображения, свойства, реквизиты, цены, остатки товаров.
* Обмен заказами: двусторонний обмен информацией о заказах на сайте и в приложении.
* Полная и частичная синхронизация.
* Экономичное использование оперативной памяти сервера.
* Поддержка передачи данных в сжатом виде.
* Транзакционность и строгая проверка на ошибки: данные обновляются в БД только в случае успешного обмена.

Пожалуйста, перед использованием плагина прочитайте следующее:

* [инструкцию по установке](./installation/)
* [часто задаваемые вопросы](./faq/)

Поддержать разработку и автора можно взносом через [банковскую карту или Яндекс.Деньги](https://money.yandex.ru/embed/donate.xml?account=410011766586472&quickpay=donate&payment-type-choice=on&default-sum=1000&targets=%D0%9F%D0%BB%D0%B0%D0%B3%D0%B8%D0%BD+%22%D0%9E%D0%B1%D0%BC%D0%B5%D0%BD+%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D0%BC+%D0%BC%D0%B5%D0%B6%D0%B4%D1%83+WooCommerce+%D0%B8+1%D0%A1%3A%D0%9F%D1%80%D0%B5%D0%B4%D0%BF%D1%80%D0%B8%D1%8F%D1%82%D0%B8%D0%B5%D0%BC%22&target-visibility=on&project-name=&project-site=https%3A%2F%2Fwordpress.org%2Fplugins%2Fwoocommerce-and-1centerprise-data-exchange%2F&button-text=05&fio=on&mail=on&successURL=).

Соавторы: Максим Дубовик [@lufton](https://github.com/lufton), [@chrme](https://github.com/chrme), [@shsl](https://github.com/shsl), Арсений Дугин [@sklazer](https://github.com/sklazer), Геннадий Ковшенин [@soulseekah](https://github.com/soulseekah), Vladyslav [@qwave](https://github.com/qwave), Александр Воробьев [@Alex01d](https://github.com/Alex01d).

= In English =

Provides data exchange between eCommerce plugin WooCommerce and business application "1C:Enterprise 8. Trade Management".

Features:

* Product exchange: group (categories), attributes and values, product list and product variations, images, properties, requisites, prices, remains for products.
* Order exchange: two way exchange of order information between website and application.
* Partial and full syncronization.
* Effective usage of RAM on server.
* Support for compressed data exchange.
* Transactions and strict error checking: DB updates on successfull data exchange only.

Please, read the following before using this plugin:

* [installation instructions](./installation/)
* [frequently asked questions](./faq/)

Contributors: Maksim Dubovik [@lufton](https://github.com/lufton), [@chrme](https://github.com/chrme), [@shsl](https://github.com/shsl), Arseny Dugin [@sklazer](https://github.com/sklazer), Gennady Kovshenin [@soulseekah](https://github.com/soulseekah), Vladyslav [@qwave](https://github.com/qwave), Alexander Vorobyev [@Alex01d](https://github.com/Alex01d).

= License =

"WooCommerce and 1C:Enterprise Data Exchange" is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 2 of the License, or
any later version.
 
"WooCommerce and 1C:Enterprise Data Exchange" is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
 
You should have received a copy of the GNU General Public License
along with "WooCommerce and 1C:Enterprise Data Exchange". If not, see http://www.gnu.org/licenses/gpl-3.0.html.

== Installation ==

Необходимо учесть, что для обмена большими объемами данных может понадобиться произвести дополнительную настройку веб-сервера. На недорогих shared-хостингах часто такой возможности нет, а настроены они под крайне консервативный режим работы. Поэтому рекомендуется использовать VPS/VDS-хостинги. Например, от [DigitalOcean](https://www.digitalocean.com/?refcode=4f1711dd3d2c) (реферальная ссылка, регистрирующийся получает $10 на счет).

Главное требование для работы плагина с большими выгрузками, отсекающее возможность использования большой части shared-хостингов, – это возможность неограниченного времени исполнения PHP-скриптов, т.к. для первой полной выгрузки может понадобиться больше времени, чем разрешено на сервере.

= Настройка =

Вначале вам необходимо установить и активировать плагин WooCommerce, т.к. этот плагин зависит от него. Для этого зайдите в панель управления WordPress, выберите "Плагины" → "Добавить новый". В поисковом поле введите название плагина (или часть) и кликните "Искать плагины". Установите найденный плагин, кликнув "Установить сейчас".

В 1С в качестве адреса в настройках обмена с сайтом необходимо один из адресов вида:

* http://example.com/?wc1c=exchange
* или http://example.com/wc1c/exchange/, если на сайте включены постоянные ссылки ("Настройки" → "Постоянные ссылки")

где example.com – доменное имя сайта интернет-магазина.

В качестве имени пользователя и пароля в 1С следует указать действующие на сайте имя и пароль активного пользователя с ролью "Shop Manager" или Администратор.

Весь процесс настройки 1С:Предприятия для обмена данными с сайтом хорошо описан в инструкции к одному из коммерческих движков интернет-магазина: http://www.cs-cart.ru/docs/4.1.x/rus_build_pack/1c/instruction/index.html#id3, которой можно следовать до раздела "Настройки в интернет-магазине".

Обратите внимание, что если вы собираетесь учитывать остатки товаров в магазине, необходимо включитб управление запасами в WooCommerce: "Настройки" → "Товары" → "Запасы" → "Включить управление запасами".

= Технические рекомендации =

Рекомендуется изменить тип хранилища всех таблиц базы данных сайта на InnoDB. Это добавит транзакционность в процесс обмена данными: изменения в базе данных сайта будут применяться только в случае успешного завершения процесса обмена.

Выполнение PHP на сервере необходимо настроить так, чтобы не было лимитов на время исполнения скриптов плагина. В случае использования связки Apache + mod_php (рекомендуется как наиболее простая связка) при дефолтных настройках лимита не будет. В случае использования FastCGI и/или nginx может потребоваться дополнительная их настройка для снятия лимитов на время исполнения (например, изменение FcgidConnectTimeout для mod_fcgid; request_terminate_timeout, fastcgi_read_timeout для nginx).

1С закачивает на сервер выгрузку с помощью POST-запроса. Возможно, понадобится увеличить лимит объема данных, отправляемых по POST. В php.ini за это отвечает значение post_max_size. В случае использования FastCGI и/или nginx может понадобится увеличить этот лимит также в их настройках (например, FcgidMaxRequestLen для mod_fcgid; client_max_body_size, send_timeout для nginx).

Если PHP выполняется в режиме FastCGI, а 1С при проверке соединения с сервером просит проверить имя пользователя и пароль, хотя они указаны верно, то необходимо в файл .htaccess после строки `RewriteEngine On` вставить строку `RewriteRule . - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]`, а также попробовать оба варианта адреса обмена (полный и короткий). Необходимо учесть, что изменения в .htaccess перезатираются при сохранении настроек постоянных ссылок и некоторых плагинов из админки WordPress.

Пример конфига пула для PHP7-FPM:
```
php_admin_value[post_max_size]=1000M
php_admin_value[upload_max_filesize]=1000M
php_admin_value[request_terminate_timeout]=0
php_admin_value[max_execution_time]=9000000s
php_admin_value[memory_limit]=512M
```

Пример конфига nginx:
```
server {
client_max_body_size 1000m;
# ... etc configs
location ~ \.php$ {
# ... etc configs
fastcgi_read_timeout 60000s;
}
```

== Frequently Asked Questions ==

= Предоставляете ли вы поддержку? =

Данный плагин является свободной некоммерческой разработкой и не приносит автору прямой прибыли. Полноценная поддержка же пользователей стоит времени и денег. Поэтому не стоит ожидать оказания бесплатной поддержки на уровне коммерческих продуктов. Предполагается, что пользователь, как минимум, самостоятельно попробует разобраться с установкой и настройкой продуктов 1С, WooCommerce и данного плагина, используя имеющуюся документацию к плагину и информацию в интернете. С автором можно связаться через [форму обратной связи](http://danil.iamsync.com/) в случае, если:

* возникли определенные непреодолимые трудности в процессе установки или настройки плагина;
* в процессе обмена данными возникают ошибки;
* не устраивает текущий алгоритм обмена данными плагина, и есть представление, что и как должно работать иначе.

= Почему не работает авторизация даже после добавления рекомендуемой строки в .htaccess? =

Если вы используете Windows, то необходимо установить утилиту cURL. В OS X и Linux она, как правило, уже присутствует в системе. Необходимо в терминале выполнить команду:
`curl -D - -u "логин:пароль" "http://адрес-обмена?type=catalog&mode=checkauth"`
Замените `логин`, `пароль`, `адрес-обмена` на соответствующие значения. В выводе команды будет содержаться сообщение об ошибке от сервера.

= Как удалить с сайта все данные, созданные в процессе обмена? =

Если вы используете [WP-CLI](http://wp-cli.org/), то можно из директории плагина выполнить команду `wp eval-file ./clean.php`. Также можно, будучи авторизованным в WordPress, перейти по адресу http://example.com/?wc1c=clean или http://example.com/wc1c/clean (где exchange.com – домен сайта) и нажать на появившуюся кнопку.

= Как вручную воспроизвести импорт товаров? =

После обмена с 1С плагин сохраняет полученные файлы импорта (до следующего обмена) в директории `wp-content/uploads/woocommerce-1c/catalog` в файлах вида `import.xml` (информация о группах, свойствах и товарах) и `offers.xml` (информация о ценах и вариантах предложений). Для отладки в процессе интеграции плагина полезно иметь возможность вручную повторить импорт из этих файлов. Для этого в браузере можно последовательно перейти по следующим адресам, будучи авторизованным как администратор или менеджер магазина:

* `<адрес обмена>?type=catalog&mode=import&filename=import.xml`
* `<адрес обмена>?type=catalog&mode=import&filename=offers.xml`

Имена XML-файлов, возможно, придется заменить на актуальные из директории `wp-content/uploads/woocommerce-1c/catalog`.

= Как осуществляется обмен заказами? =

1. 1С запрашивает с сайта заказы, которые еще не запрашивались им ранее, и создает по ним несогласованные и непроведенные заказы у себя.
2. Если в 1С есть заказы, ранее полученные с сайта, но неполученные на предыдущем этапе, то 1С передает их на сайт.
3. Плагин сайта ищет для каждого заказа соответствующий заказ у себя и либо создает новый заказ, либо обновляет имеющийся.
4. Плагин сайта совершает следующие изменения в заказе:
  * Если заказ был помечен к удалению в 1С, то – помещает соответствующий на сайте заказ в корзину, иначе – восстанавливает.
  * Если у заказа в 1С был выставлен статус отличный от "Не согласован", то у заказа на сайте выставляется статус "В обработке".
  * Если заказ в 1С проведен, то у заказа на сайте выставляется статус "Выполнен".
  * Иначе – оставляет у заказа на сайте статус по умолчанию "На удержании".

= Где можно найти исходники плагина? =

Исходники размещаются в предоставляемом WordPress.org [svn-репозитории](../developers/). Также имеется [git-зеркало](https://github.com/sgtpep/woocommerce-1c).

= Как работать с репозиторием через git-svn? =

Инициализация:

* `git clone [email protected]:sgtpep/woocommerce-1c.git`
* `cd ./woocommerce-1c`
* `git svn init https://plugins.svn.wordpress.org/woocommerce-and-1centerprise-data-exchange/trunk/`
* `git update-ref refs/remotes/git-svn master`
* `git svn rebase --log-window-size=100000`

Коммит:

* `git commit`
* `git svn dcommit`
* `git push`

== Screenshots ==

1. Список выгруженных из 1С в WooCommerce товаров с колонкой идентификатора позиции номенклатуры в 1С.
2. Карточка товара WooCommerce с выгруженными из 1С наименованием, описанием для сайта, присоединенными изображениями, артикулом и ценой.
3. Варианты настраиваемого товара, сформированные из нескольких предложений одного товара в 1С.
4. Пример отображения выгруженного настраиваемого товара на сайте с выпадающими списками доступных опций.
5. Свойства товара, сформированные из значений свойств и реквизитов товара в 1С.
6. Дерево категорий товаров с колонкой идентификатора группы номенклатуры в 1С.
7. Общие свойства товаров WooCommerce, сформированные по выгруженным из 1С свойствам и значениям свойств товаров, с колонкой идентификатора.

== Changelog ==

= 0.9.17 =

- Максим Дубовик [@lufton](https://github.com/lufton) исправил использование использование устаревших геттеров и `OUTOFSTOCK_STATUS`.

= 0.9.18 =

- Максим Дубовик [@lufton](https://github.com/lufton) исправил синхронизацию статусов заказов.
- [@Lomerill](https://github.com/Lomerill) исправил передачу ID контрагента.
- Максим Дубовик [@lufton](https://github.com/lufton) добавил возможность переопределять slug опций с помощью константы `WC1C_USE_GUID_AS_PROPERTY_OPTION_SLUG`.
- Максим Дубовик [@lufton](https://github.com/lufton) реализовал очистку файлов, остающихся после обмена (orders-*.xml, import_fileas и т.д.)
- Максим Дубовик [@lufton](https://github.com/lufton) добавил возможность сопоставлять атрибуты по заголовку с помощью констант `WC1C_MATCH_PROPERTIES_BY_TITLE` и `WC1C_MATCH_PROPERTY_OPTIONS_BY_TITLE`.
- Максим Дубовик [@lufton](https://github.com/lufton) добавил возможность сопоставлять категории по заголовку с помощью константы `WC1C_MATCH_CATEGORIES_BY_TITLE`.
- Максим Дубовик [@lufton](https://github.com/lufton) исправил отображение символа UAH.
- Максим Дубовик [@lufton](https://github.com/lufton) ускорил импорт товаров, удалив дублирующий код.
- Максим Дубовик [@lufton](https://github.com/lufton) добавил возможность сопоставлять номенклатуру с товарами в WooCommerce по артикулу с помощью константы `WC1C_MATCH_BY_SKU`.
- Максим Дубовик [@lufton](https://github.com/lufton) добавил возможность отключать управление остатками с помощью константы `WC1C_MANAGE_STOCK`.
- Арсений Дугин [@sklazer](https://github.com/sklazer) исправил ошибку "Failed open archive %s with error code 19" при обмене данными с архивом большого размера.
- [@Lomerill](https://github.com/Lomerill) добавил поддержку чтения статуса товара из элемента `Товар.Статус`.

= 0.9.5 =

- Максим Дубовик [@lufton](https://github.com/lufton) добавил возможность обновлять постоянную ссылку продукта при каждом импорте.
- [@krakazyabra](https://github.com/krakazyabra) заменил устаревшую функцию `update_woocommerce_term_meta` на `update_term_meta`.
- Максим Дубовик [@lufton](https://github.com/lufton) добавил возможность переопределять/расширять реквизиты заказов через фильтр 'wc1c_query_order_requisites' и исправил формирование имен контрагентов и получение цен.
- Vladyslav [@qwave](https://github.com/qwave) исправил ошибку при получении статусов заказов.

= 0.9 =

Максим Дубовик [@lufton](https://github.com/lufton) исправил передачу следующих вещей: контакты клиентов, дополнительные типы цен, габариты товаров и добавил возможность переопределять статус "нет в наличии" с помощью константы `WC1C_OUTOFSTOCK_STATUS`.

= 0.8 =

Исправлена проблема со статусом невыполненого заказа для WooCommerce новее 3.x, когда включено управление запасами (спасибо, [@chrme](https://github.com/chrme)). Исправлено некорректное использование Rewrite API, негативно влиявшее на производительность (спасибо, Геннадий Ковшенин [@soulseekah](https://github.com/soulseekah).

= 0.7 =

Добавлена в API возможность переопределения очистки категорий. Добавлена в API возможность определять, является ли обмен полным или частичным. Отключена очистка мета-данных при удалении плагина. 

= 0.6 =

Добавлена ссылка для сбора пожертований. Добавлено сохранение заданных пользователем из WooCommerce изображений товаров, для которых отсутствуют изображения в 1С. Добавлена возможность очистки всех данных магазина (см. FAQ). Добавлена в API возможность переопределения передаваемых в 1С заказов.

= 0.5 =

Добавлена в API возможность предотвращения перезаписи заголовка, краткого описания, полного описания и галереи продукта при каждом последующем обмене. Изменена логика обмена заказами.

= 0.4 =

Добавлено приведение наименований реквизитов к человекочитаемому виду. Добавлена поддержка импорта из поля 1С "Файл описания для сайта". Значение поля 1С "Текстовое описание" помещается в "Краткое описание товара" WooCommerce.

= 0.3 =

Добавлена поддержка распаковки архивов средствами системы. Добавлена возможность указания прямого адреса скрипта без необходимости включения постоянных ссылок. Значение поля 1С "Наименование для печати" используется для заголовка товара вместо значения поля "Рабочее название".

= 0.2 =

Добавлено базовое API с помощью фильтров и действий.

= 0.1 =

Первая версия.

woocommerce-1c's People

Contributors

alex01d avatar chrme avatar krakazyabra avatar lomerill avatar lufton avatar qwave avatar sgtpep avatar shsl avatar soulseekah avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

woocommerce-1c's Issues

WP Error: missing_parent: Родительского элемента не существует.

Ошибка при попытке импортировать каталог с товарами.

WP Error: missing_parent: Родительского элемента не существует. WP Error: missing_parent: Родительского элемента не существует.

#0 wc1c_error(WP Error: missing_parent: Родительского элемента не существует., WP Error) called at [/home/c63605/inavto.na4u.ru/www/wp-content/plugins/woocommerce-and-1centerprise-data-exchange/exchange.php:177]
#1 wc1c_wp_error(WP_Error Object ([errors] => Array ([missing_parent] => Array ([0] => Родительского элемента не существует.)),[error_data] => Array (),[��additional_data] => Array ())) called at [/home/c63605/inavto.na4u.ru/www/wp-content/plugins/woocommerce-and-1centerprise-data-exchange/exchange.php:181]
#2 wc1c_check_wp_error(WP_Error Object ([errors] => Array ([missing_parent] => Array ([0] => Родительского элемента не существует.)),[error_data] => Array (),[�
�additional_data] => Array ())) called at [/home/c63605/inavto.na4u.ru/www/wp-content/plugins/woocommerce-and-1centerprise-data-exchange/exchange/import.php:356]
#3 wc1c_replace_term(, a64374bd-a553-11e5-80fc-005056c00008, e3ea70cc-334e-11e9-9033-3085a9952866, UAZ (6), product_cat, 145) called at [/home/c63605/inavto.na4u.ru/www/wp-content/plugins/woocommerce-and-1centerprise-data-exchange/exchange/import.php:387]
#4 wc1c_replace_group(, Array ([ИдРодителя] => e3ea70cc-334e-11e9-9033-3085a9952866,[Ид] => a64374bd-a553-11e5-80fc-005056c00008,[Наименование] => UAZ), 145, Array ([0] => Array ([ИдРодителя] => ,[Ид] => e3ea70cc-334e-11e9-9033-3085a9952866,[Наименование] => -ОРИГИНАЛЬНЫЕ КАТАЛОГИ,[Группы] => 1),[1] => Array ([ИдРодителя] => e3ea70cc-334e-11e9-9033-3085a9952866,[Ид] => a64374bd-a553-11e5-80fc-005056c00008,[Наименование] => UAZ))) called at [/home/c63605/inavto.na4u.ru/www/wp-content/plugins/woocommerce-and-1centerprise-data-exchange/exchange/import.php:33]
#5 wc1c_import_start_element_handler(, Array ([0] => КоммерческаяИнформация,[1] => Классификатор,[2] => Группы,[3] => Группа,[4] => Группы,[5] => Группа,[6] => Группы), 6, Группы, Array ()) called at [/home/c63605/inavto.na4u.ru/www/wp-content/plugins/woocommerce-and-1centerprise-data-exchange/exchange.php:368]
#6 wc1c_xml_start_element_handler(Resource id #462, Группы, Array ())
#7 xml_parse(Resource id #462, �уппа>
<Группа>
<Ид>ee8fc8d4-2b78-11e9-9033-3085a9952866</Ид>
<Наименование>ЩЕТКИ, СКРЕБКИ</Наименование>
</Группа>
<Группа>
<Ид>c186855b-ade8-11e9-900a-3085a9952866</Ид>
<Наименование>MEGAPOWER</Наименование>
</Группа>
</Группы>
</Группа>
<Группа>
<Ид>e3ea70cc-334e-11e9-9033-3085a9952866</Ид>
<Наименование>-ОРИГИНАЛЬНЫЕ КАТАЛОГИ</Наименование>
<Группы>
<Группа>
<Ид>a64374bd-a553-11e5-80fc-005056c00008</Ид>
<Наименование>UAZ</Наименование>
<Группы>
<Группа>
<Ид>e25c2695-ec91-11e8-9ce3-3085a9952866</Ид>
<Наименование>PATRIOT</Наименование>
<Группы>
<Группа>
<Ид>f9f25dd4-7d4e-11e9-8fef-3085a9952866</Ид>
<Наименование>Двигатель 405/406/409</Наименование>
</Группа>
<Группа>
<Ид>f9f25dd5-7d4e-11e9-8fef-3085a9952866</Ид>
<Наименование>Двигатель -514</Наименование>
</Группа>
</Группы>
</Группа>
<Группа>
<Ид>06a09f3d-0bab-11e7-b4bf-005056c00008</Ид>
<Наименование>УАЗ -БУХАНКА---451, 452, 3741, 3909</Наименование>
<Группы>
<Группа>
<Ид>9bde76aa-bc4c-11ea-8093-3085a9952866</Ид>
<Наименование>Передний мост</Наименование>
</Группа>
<Группа>
<Ид>87b35d3d-ad58-11e9-900a-3085a9952866</Ид>
<Наименование>ТРАНСМИССИЯ</Наименование>
</Группа>
</Группы>
</Группа>
</Группы>
</Группа>
<Группа>
<Ид>292ab45d-6a34-11e2-8232-005056c00008</Ид>
<Наименование>BYD</Наименование>
</Группа>
<Группа>
<Ид>7cb0db8e-baf5-11e1-825d-005056c00008</Ид>
<Наименование>BMW</Наименование>
<Группы>
<Группа>
<Ид>2198665a-eae3-11ea-95ca-3085a9952866</Ид>
<Наименование>3-серия</Наименование>
<Группы>
<Группа>
<Ид>f6e7b44e-381a-11e9-9033-3085a9952866</Ид>
<Наименование>3-серия E46 1998-2005</Наименование>
<Группы>
<Группа>
<Ид>a47e36f8-3f0b-11e9-9033-3085a9952866</Ид>
<Наименование>Система охлаждения</Наименование>
</Группа>
</Группы>
</Группа>
</Группы>
</Группа>
<Группа>
<Ид>21986662-eae3-11ea-95ca-3085a9952866</Ид>
<Наименование>X3</Наименование>
<Группы>
<Группа>
<Ид>13410de9-382d-11e9-9033-3085a9952866</Ид>
<Наименование>X3 F25 2010-2017</Наименование>
</Группа>
</Группы>
</Группа>
<Группа>
<Ид>21986664-eae3-11ea-95ca-3085a9952866</Ид>
<Наименование>X5</Наименование>
<Группы>
<Группа>
<Ид>13410dee-382d-11e9-9033-3085a9952866</Ид>
<Наименование>X5 E70 2007-2013</Наименование>
</Группа>
<Группа>
<Ид>13410ded-382d-11e9-9033-3085a9952866</Ид>
<Наименование>X5 E53 2000-2007</Наименование>
, ) called at [/home/c63605/inavto.na4u.ru/www/wp-content/plugins/woocommerce-and-1centerprise-data-exchange/exchange.php:406]
#8 wc1c_xml_parse(Resource id #460) called at [/home/c63605/inavto.na4u.ru/www/wp-content/plugins/woocommerce-and-1centerprise-data-exchange/exchange.php:456]
#9 wc1c_mode_import(catalog, import.xml) called at [/home/c63605/inavto.na4u.ru/www/wp-content/plugins/woocommerce-and-1centerprise-data-exchange/exchange.php:516]
#10 wc1c_exchange() called at [/home/c63605/inavto.na4u.ru/www/wp-content/plugins/woocommerce-and-1centerprise-data-exchange/exchange.php:541]
#11 wc1c_template_redirect() called at [/home/c63605/inavto.na4u.ru/www/wp-includes/class-wp-hook.php:307]
#12 WP_Hook->apply_filters(, Array ([0] => )) called at [/home/c63605/inavto.na4u.ru/www/wp-includes/class-wp-hook.php:331]
#13 WP_Hook->do_action(Array ([0] => )) called at [/home/c63605/inavto.na4u.ru/www/wp-includes/plugin.php:476]
#14 do_action(template_redirect) called at [/home/c63605/inavto.na4u.ru/www/wp-includes/template-loader.php:13]
#15 require_once(/home/c63605/inavto.na4u.ru/www/wp-includes/template-loader.php) called at [/home/c63605/inavto.na4u.ru/www/wp-blog-header.php:19]
#16 require(/home/c63605/inavto.na4u.ru/www/wp-blog-header.php) called at [/home/c63605/inavto.na4u.ru/www/index.php:17]

Обновили WP и плагин , перестало работать.

Request URI: http://inavto.na4u.ru/wc1c/exchange/?type=catalog&mode=import&filename=import.xml
Server API: cgi-fcgi
Memory limit: 256M
Maximum POST size: 128M
PHP version: 7.4.30
WordPress version: 6.0.2
Plugin version: 0.9.4r2247033

caution: filename not matched

Сперва были такие ошибки. Как я понял, он не может разарахивировать так как не установлен модуль zip.

.../www-root/data/www/сайт/wp-content/uploads/woocommerce-1c/catalog/v8_2FF7_128.zip or: /var/www/php-bin-isp-php73/www-root/php
[Tue Feb 28 09:19:30.554248 2023] [cgi:error] [pid 1667] [client ] AH01215: /var/www/www-root/data/www/сайт/wp-content/uploads/woocommerce-1c/catalog/v8_2FF7_128.zip.zip, and cannot find /var/www/www-root/data/www/сайт/wp-content/uploads/woocommerce-1c/catalog/v8_2FF7_128.zip.ZIP, period.: /var/www/php-bin-isp-php73/www-root/php
[Tue Feb 28 09:19:37.381216 2023] [cgi:error] [pid 1688] [client ] AH01215: [/var/www/www-root/data/www/сайт/wp-content/uploads/woocommerce-1c/catalog/v8_2FF7_128.zip]: /var/www/php-bin-isp-php73/www-root/php
[Tue Feb 28 09:19:37.381345 2023] [cgi:error] [pid 1688] [client ] AH01215: End-of-central-directory signature not found. Either this file is not: /var/www/php-bin-isp-php73/www-root/php
[Tue Feb 28 09:19:37.381397 2023] [cgi:error] [pid 1688] [client ] AH01215: a zipfile, or it constitutes one disk of a multi-part archive. In the: /var/www/php-bin-isp-php73/www-root/php
[Tue Feb 28 09:19:37.381458 2023] [cgi:error] [pid 1688] [client ] AH01215: latter case the central directory and zipfile comment will be found on: /var/www/php-bin-isp-php73/www-root/php
[Tue Feb 28 09:19:37.381488 2023] [cgi:error] [pid 1688] [client ] AH01215: the last disk(s) of this archive.: /var/www/php-bin-isp-php73/www-root/php
[Tue Feb 28 09:19:37.381601 2023] [cgi:error] [pid 1688] [client ] AH01215: unzip: cannot find zipfile directory in one of /var/www/www-root/data/www/сайт/wp-content/uploads/woocommerce-1c/catalog/v8_2FF7_128.zip or: /var/www/php-bin-isp-php73/www-root/php

[Tue Feb 28 09:19:37.382159 2023] [cgi:error] [pid 1688] [client ] AH01215: /var/www/www-root/data/www/сайт/wp-content/uploads/woocommerce-1c/catalog/v8_2FF7_128.zip.zip, and cannot find /var/www/www-root/data/www/сайт/wp-content/uploads/woocommerce-1c/catalog/v8_2FF7_128.zip.ZIP, period.:

Установили модуль zip

Ошибки поменялись:

F40F_261.zip: /var/www/php-bin-isp-php73/www-root/php
[Fri Mar 03 14:23:28.586537 2023] [cgi:error] [pid 13048] [client ] AH01215: caution: filename not matched: /var/www/www-root/data/www/сайт/wp-content/uploads/woocommerce-1c/catalog/v8_F40F_262.zip: /var/www/php-bin-isp-php73/www-root/php
[Fri Mar 03 14:23:28.586631 2023] [cgi:error] [pid 13048] [client ] AH01215: caution: filename not matched: /var/www/www-root/data/www/сайт/wp-content/uploads/woocommerce-1c/catalog/v8_F40F_263.zip: /var/www/php-bin-isp-php73/www-root/php
[Fri Mar 03 14:23:28.586726 2023] [cgi:error] [pid 13048] [client ] AH01215: caution: filename not matched: /var/www/www-root/data/www/сайт/wp-content/uploads/woocommerce-1c/catalog/v8_F40F_264.zip: /var/www/php-bin-isp-php73/www-root/php
[Fri Mar 03 14:23:28.586820 2023] [cgi:error] [pid 13048] [client ] AH01215: caution: filename not matched: /var/www/www-root/data/www/сайт/wp-content/uploads/woocommerce-1c/catalog/v8_F40F_265.zip: /var/www/php-bin-isp-php73/www-root/php
[Fri Mar 03 14:23:28.586904 2023] [cgi:error] [pid 13048] [client ] AH01215: caution: filename not matched: /var/www/www-root/data/www/сайт/wp-content/uploads/woocommerce-1c/catalog/v8_F40F_266.zip: /var/www/php-bin-isp-php73/www-root/php
[Fri Mar 03 14:23:28.586986 2023] [cgi:error] [pid 13048] [client ] AH01215: caution: filename not matched: /var/www/www-root/data/www/сайт/wp-content/uploads/woocommerce-1c/catalog/v8_F40F_267.zip: /var/www/php-bin-isp-php73/www-root/php
[Fri Mar 03 14:23:28.587068 2023] [cgi:error] [pid 13048] [client ] AH01215: caution: filename not matched: /var/www/www-root/data/www/сайт/wp-content/uploads/woocommerce-1c/catalog/v8_F40F_268.zip: /var/www/php-bin-isp-php73/www-root/php

подскажите, что нужно настроить на сервере, чтобы скрипт заработал?

Проблема с выгрузкой

УНФ 1.5.16.132 WC 3.5.5 WP5.1, плагин - последняя версия.
Проблема появилась уже давно. При обновлении остатков появляется статус "нет в наличии", даже если остатки имеются. Лечится снятием галочки "Управлять остатками" Товар Вариативный.
Перестал работать обмен заказами (Ошибка поле объекта(ИД) не обнаружено). Все работало в 2017 году. Помогите решить проблему хотя бы со статусом товара.
Сегодня пробовал обновиться до последней конфигурации 1С, после это вообще все перестало работать, даже выгрузка. Откатил обратно.

Одинаковый ИД для контрагента

Могу ошибаться, но похоже на то, что заказы уходят только с 2-мя ИД - wc1c#user#1 (это любой заказ), и wc1c#user#0 (это вот кстати вдруг случился глюк, когда плагин стал порождать по 5 пустых заказов от "Гость" каждые 5 минут, как раз как идёт синхронизация).

ИД для разных заказчиков должны быть разными (постоянные для зарегистрированных), и какой-то для незарегистрированных, - иначе на стороне 1С всё валится от одного Контрагента.
Думаю, даже имеет смысл в качестве ИД использовать email пользователя. Тогда можно в 1С заранее назначить соответствующие внешние коды тем пользователям, которые являлись контрагентами до регистрации на сайте и избежать дублирования.

Удаляются товары

Здравствуйте! Выгружаю группу товаров например “футболки” далее хочу выгрузить “джинсы ” но футболки перемещаются в корзину. Нельзя ли так сделать чтобы данные не удалялись? И чтобы модуль просто проверял и если такого товара нет, то только тогда создавал.
Заранее спасибо.

При обмене затирается полное описание товара

Доброго дня, при обмене слетает полное описание установленное на сайте, не в курсе как лечить ?
догадываюсь что из 1с можно это полное описание кинуть на сайт, но не могу понять в каком теге фала import.xml это можно сделать, заранее благодарю за помощь.

mod_fcgid: stderr: Error: No authentication credentials.

По окончанию выгрузки 1С выдает такой отчет:

Выгружено товаров: 1 151
Выгружено картинок: 2 743
Выгружено файлов: 0
Выгружено предложений: 1 150
Произошла ошибка на стороне сервера. Получен неизвестный статус импорта.
Обмен не выполнен
Ответ сервера:
string(26) "Классификатор"
string(4) "Ид"
string(24) "Наименование"
string(16) "Владелец"
string(4) "Ид"
string(24) "Наименование"
string(36) "ПолноеНаименование"
string(12) "Группы"
string(12) "Группа"
string(4) "Ид"
string(24) "Наименование"
string(12) "Группы"
string(12) "Группа"
string(4) "Ид"
......
Выгрузка товаров завершена с ошибками!!!

В логах сервера ошибка "mod_fcgid: stderr: Error: No authentication credentials." возникающая несколько раз в последних минуты 3 перед завершением процесса импорта.

вп стоит на vps сервере Ubuntu16.04.1 с php 7.0.30.

Также, периодически, возникает проблема с куками при входе в админку http://take.ms/6of08 , а после перезагрузки страницы - авторизуется нормально. Думаю как-то переплетается с ошибокй fcgi указанной выше..
Кроме того в вп не работает крон и петлевой запрос.

В htaccess добавлена строчка RewriteRule . - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]

грешу на настройки сервера, но что конкретно может быть не так - не представляю..

Размер, как глобальный атрибут

УНФ - перенастроил характеристики в 1С по фэн-шуй. Стали корректно выгружаться вариативные товары, НО. Если раньше мне приходилось руками на сайте назначать созданные мною глобальные атрибуты к выгруженным вариациям, то теперь этот процесс автоматизирован, при этом атрибут "размер" стал не глобальным.
Все что размещено в свойствах номенклатуры в 1С выгружается в глобальные атрибуты, а характеристики -НЕТ.
Не могу в связи с этим разместиться корректно на Яндекс-маркет.
Очень нужна помощь!!!

Ошибка c1c_error(PHP Unknown Error: Undefined offset exchange/import.php on line 136

PHP Unknown Error: Undefined offset: 3 in public_html/wp-content/plugins/woocommerce-and-1centerprise-data-exchange/exchange/import.php on line 136.

#0 wc1c_error(PHP Unknown Error: Undefined offset: 3 in public_html/wp-content/plugins/woocommerce-and-1centerprise-data-exchange/exchange/import.php on line 136., PHP Unknown Error) called at [public_html/wp-content/plugins/woocommerce-and-1centerprise-data-exchange/exchange.php:142]
#1 wc1c_strict_error_handler(8, Undefined offset: 3, public_html/wp-content/plugins/woocommerce-and-1centerprise-data-exchange/exchange/import.php, 136, Array ([is_full] => 1,[names] => Array ([0] => КоммерческаяИнформация,[1] => Каталог,[2] => Товары,[3] => Товар,[4] => ЗначенияРеквизитов,[5] => ЗначениеРеквизита,[6] => Значение),[depth] => 6,[name] => Значение,[data] => import_files/9a/9a11efec-b55c-11e6-8113-d43d7eeceb89_9a11efee-b55c-11e6-8113-d43d7eeceb89.jpeg#[Elizavecca] ,[wc1c_groups] => Array (),[wc1c_group_depth] => -1,[wc1c_property] => Array ([Ид] => 83959b81-a695-45d1-b6df-938c86ecab97,[Наименование] => Основной поставщик,[ТипЗначений] => Справочник,[ВариантыЗначений] => Array (),[ДляТоваров] => true),[wc1c_product] => Array ([ХарактеристикиТовара] => Array (),[ЗначенияСвойств] => Array ([0] => Array ([Ид] => 83959b81-a695-45d1-b6df-938c86ecab97,[Значение] => Array ([0] => ))),[ЗначенияРеквизитов] => Array ([18446744073709551615] => Array ([Значение] => Array ([0] => )),[0] => Array (),[1] => Array ([Наименование] => ОписаниеФайла),[2] => Array ([Значение] => Array ([0] => ))),[Ид] => 9a11efec-b55c-11e6-8113-d43d7eeceb89,[Штрихкод] => 8809339903523,[Артикул] => 903523,[Наименование] => [Elizavecca] Маска д/сухих и поврежденный волос КОЛЛАГЕНОВАЯ Collagen Ceramide Coating Protein,100мл,[БазоваяЕдиница] => шт,[Группы] => Array ([0] => 29416c33-54d8-11e7-80c5-94de8014c4e0),[ЗначениеРеквизита] =>

,[Картинка] => Array ([0] => import_files/9a/9a11efec-b55c-11e6-8113-d43d7eeceb89_9a11efee-b55c-11e6-8113-d43d7eeceb89.jpeg)),[i] => 3)) called at [public_html/wp-content/plugins/woocommerce-and-1centerprise-data-exchange/exchange/import.php:136]
#2 wc1c_import_character_data_handler(1, Array ([0] => КоммерческаяИнформация,[1] => Каталог,[2] => Товары,[3] => Товар,[4] => ЗначенияРеквизитов,[5] => ЗначениеРеквизита,[6] => Значение), 6, Значение, import_files/9a/9a11efec-b55c-11e6-8113-d43d7eeceb89_9a11efee-b55c-11e6-8113-d43d7eeceb89.jpeg#[Elizavecca] ) called at [public_html/wp-content/plugins/woocommerce-and-1centerprise-data-exchange/exchange.php:375]
#3 wc1c_xml_character_data_handler(Resource id #180, import_files/9a/9a11efec-b55c-11e6-8113-d43d7eeceb89_9a11efee-b55c-11e6-8113-d43d7eeceb89.jpeg#[Elizavecca] )
#4 xml_parse(Resource id #180, �ниеВФорматеHTMLНаименование>
<Значение>Маска для волос торговой марки Elizavecca
Milky Piggy Collagen Ceramide Coating Protein Treatment
В составе коллаген, комплекс керамидов, соевый белок, аллантоин, растительные экстракты и протеины пшеницы. Подходит для окрашеных, поврежденных термообработкой волос. Уникальный состав маски обеспечивает питание и увлажнение. Обволакивает структуру волоса, защищая от вредного внешнего воздействия. Применение: После использования шампуня, просушить волосы полотенцем. Нанести небольшое количество маски и распределить по всей длине. Смыть через 5 минут . Для более сильного эффекта можно держать маску до 20 минут. Состав: Water, Cetyl Alcohol, Stearyl Alcohol, Amodimethicone, Cetrimonium Chloride, Trideceth-12, Behentrimonium Chloride, Glycerin , Cyclopentasiloxane , Dimethicone , Silk Amino Acids, Ceramide 3, Tocopheryl Acetate, Hydrolyzed Collagen, Hydrolyzed Keratin, Gelatin, Avena Sativa (Oat) Kernel Extract, Hydrolyzed Corn Protein, Hydrolyzed Wheat Protein, Hydrolyzed Soy Protein, Apium Graveolens (Celery) Extract , Brassica Oleracea Capitata (Cabbage) Leaf Extract, Oryza Sativa (Rice) Extract, Solanum Lycopersicum (Tomato) Fruit Extract , Brassica Rapa (Turnip) Leaf Extract, Daucus Carota Sativa (Carrot) Root Extract, Brassica Oleracea Italica (Broccoli) Extract, Butylene Glycol, Rehmannia Chinensis Root Extract, Cornus Officinalis Fruit Extract, Alisma Orientale Tuber Extract, Dioscorea Japonica Root Extract, Poria Cocos Extract, Paeonia Suffruticosa Root Extract, Panthenol, Caramel, Citric Acid, Methylchloroisothiazolinone, Methylisothiazolinone, perfum. Только для наружного применения. Хранить в недоступном для детей месте. В случае появления раздражения, немедленно прекратить использование. Хранить при температуре от +5С до +25С. Производитель:Miz Trade Co., Ltd. Dogok-Dong, Gangnam-Gu, (Gujeong bldg, 3 Floor), Республика Корея. Импортер/Организация, принимающая претензии: ООО „АЙКОН”, г.Владивосток, Суханова 4 Б, т.89841508888 123.ru. Номер партии: см. на упаковке. Срок годности: 36 месяцев. Годен до: см. на упаковке (гг/мм/дд). После вскрытия использовать в течении 12 месяцев. Содержимое: 100 мл. арт. 903523. Товар сертифицирован.
Значение>
ЗначениеРеквизита>
<Картинка>import_files/9a/9a11efec-b55c-11e6-8113-d43d7eeceb89_9a11efee-b55c-11e6-8113-d43d7eeceb89.jpegКартинка>
<ЗначенияСвойств>
<ЗначенияСвойства>
<Ид>83959b81-a695-45d1-b6df-938c86ecab97Ид>
<Значение/>
ЗначенияСвойства>
ЗначенияСвойств>
<ЗначенияРеквизитов>
<ЗначениеРеквизита>
<Наименование>ОписаниеФайлаНаименование>
<Значение>import_files/9a/9a11efec-b55c-11e6-8113-d43d7eeceb89_9a11efee-b55c-11e6-8113-d43d7eeceb89.jpeg#[Elizavecca] Маска д/сухих и поврежденный волос КОЛЛАГЕНОВАЯ Collagen Ceramide Coating Protein,100млЗначение>
ЗначениеРеквизита>
<Значени, ) called at [public_html/wp-content/plugins/woocommerce-and-1centerprise-data-exchange/exchange.php:398]
#5 wc1c_xml_parse(Resource id #179) called at [public_html/wp-content/plugins/woocommerce-and-1centerprise-data-exchange/exchange.php:448]
#6 wc1c_mode_import(catalog, import.xml) called at [public_html/wp-content/plugins/woocommerce-and-1centerprise-data-exchange/exchange.php:508]
#7 wc1c_exchange() called at [public_html/wp-content/plugins/woocommerce-and-1centerprise-data-exchange/exchange.php:533]
#8 wc1c_template_redirect() called at [public_html/wp-includes/class-wp-hook.php:286]
#9 WP_Hook->apply_filters(, Array ([0] => )) called at [public_html/wp-includes/class-wp-hook.php:310]
#10 WP_Hook->do_action(Array ([0] => )) called at [public_html/wp-includes/plugin.php:453]
#11 do_action(template_redirect) called at [public_html/wp-includes/template-loader.php:12]
#12 require_once(public_html/wp-includes/template-loader.php) called at [public_html/wp-blog-header.php:19]
#13 require(public_html/wp-blog-header.php) called at [public_html/index.php:17]

Request URI: https://domain.ru:443/?wc1c=exchange?type=catalog&...
Server API: apache2handler
Memory limit: 268435456
Maximum POST size: 1047527424
PHP version: 7.2.5
WordPress version: 4.9.8
Plugin version: 0.7r1466555

rollback

Помогите решить проблему. Спасибо

Исключение в admin.php:28 при пустом $guid (wc1c_manage_taxonomy_custom_column)

function wc1c_manage_taxonomy_custom_column($columns, $column, $id) {
  if ($column == 'wc1c_guid') {
    $guid = get_woocommerce_term_meta($id, 'wc1c_guid');
    list($taxonomy, $guid) = explode('::', $guid);
    $columns .= $guid ? "<small>$guid</small>" : '<span class="na">–</span>';
  }

  return $columns;
}

Ошибка на list($taxonomy, $guid) = explode('::', $guid) при пустом guid.
Проявляется при включенной отладке php.

должно быть:

function wc1c_manage_taxonomy_custom_column($columns, $column, $id) {
  if ($column == 'wc1c_guid') {
    $guid = get_woocommerce_term_meta($id, 'wc1c_guid');
    if ($guid) { 
      list($taxonomy, $guid) = explode('::', $guid);
      $columns .= "<small>$guid</small>";
    } else {
      $columns .= '<span class="na">–</span>';
    }
  }

  return $columns;
}

Добавьте, пожалуйста, больше хуков для кастомизации плагина

  1. Хуки для обработчиков xml-парсера.
    Мне потребовалось вносить на сайт информацию о количестве товаров на складах, и я не могу это сделать, не модифицируя код.
    Был бы нелишним, скажем,
    do_action('wc1c_offers_start_element_handler_after', $is_full, $names, $depth, $name, $attrs);
    или
    do_action('wc1c_xml_start_element_handler_after', $parser, $name, $attrs);
  2. Фильтр для $contragent, аналогичный $requisites = apply_filters('wc1c_query_order_requisites', $requisites, $document), чтобы была возможность передавать дополнительные поля для контрагента.

Не обработать import0_1.xml

Добрый день,

Который день пытаюсь наладить синхронизацию большой базы с картинками с помощью этого плагина - не получается. Прошу помочь...

В 1С (Управление торговлей) более 7000 товаров, многие с картинками. Ранее синхронизация работала для меньшего количества товаров и без фотографий. Сейчас мне нужно наладить все товары с фотографиями, не выходит.

Сайт размещен на двух хостингах - NIC (изначально) и (по совету автора) DigitalOcean. Я пробовал синхронизацию с обоими.

Хостинг NIC

После донастройки сервера удалось синхронизировать (с фотографиями) при выгрузке только половины товаров. При выгрузке всего каталога получаем ошибку 502 Bad Gateway при попытке обработать файл import0_1.xml. Ошибка выдается после долгого ожидания.

Настройки сервера ниже:

default_socket_timeout
120
max_execution_time
900
max_input_time
900
max_input_vars
10000
memory_limit
512M
output_buffering
0
post_max_size
512M
upload_max_filesize
512M

Хостинг DigitalOcean

По рекомендации автора я открыл аккаунт на хостинге DigitalOcean и скопировал сайт туда. Однако не могу вообще заставить работать интеграцию там.

При попытке обработки import0_1.xml в ответ я получаю следующую простыню:

PHP Unknown Error: Undefined property: wpdb::$woocommerce_termmeta in /var/www/html/wp-includes/wp-db.php on line 618.

#0  wc1c_error(PHP Unknown Error: Undefined property: wpdb::$woocommerce_termmeta in /var/www/html/wp-includes/wp-db.php on line 618., PHP Unknown Error) called at [/var/www/html/wp-content/plugins/woocommerce-and-1centerprise-data-exchange/exchange.php:142]
#1  wc1c_strict_error_handler(8, Undefined property: wpdb::$woocommerce_termmeta, /var/www/html/wp-includes/wp-db.php, 618, Array ([name] => woocommerce_termmeta)) called at [/var/www/html/wp-includes/wp-db.php:618]
#2  wpdb->__get(woocommerce_termmeta) called at [/var/www/html/wp-content/plugins/woocommerce-and-1centerprise-data-exchange/exchange/import.php:231]
#3  wc1c_term_id_by_meta(wc1c_guid, product_cat::93d74e14-d377-11e5-bf6b-001e6758cc6e) called at [/var/www/html/wp-content/plugins/woocommerce-and-1centerprise-data-exchange/exchange/import.php:308]
#4  wc1c_replace_term(1, 93d74e14-d377-11e5-bf6b-001e6758cc6e, , 1. Упаковка, product_cat, 1) called at [/var/www/html/wp-content/plugins/woocommerce-and-1centerprise-data-exchange/exchange/import.php:354]
#5  wc1c_replace_group(1, Array ([ИдРодителя] => ,[Ид] => 93d74e14-d377-11e5-bf6b-001e6758cc6e,[Наименование] => 1. Упаковка), 1, Array ([0] => Array ([ИдРодителя] => ,[Ид] => 93d74e14-d377-11e5-bf6b-001e6758cc6e,[Наименование] => 1. Упаковка))) called at [/var/www/html/wp-content/plugins/woocommerce-and-1centerprise-data-exchange/exchange/import.php:27]
#6  wc1c_import_start_element_handler(1, Array ([0] => КоммерческаяИнформация,[1] => Классификатор,[2] => Группы,[3] => Группа,[4] => Группы), 4, Группы, Array ()) called at [/var/www/html/wp-content/plugins/woocommerce-and-1centerprise-data-exchange/exchange.php:359]
#7  wc1c_xml_start_element_handler(Resource id #138, Группы, Array ())
#8  xml_parse(Resource id #138, <?xml version="1.0" encoding="UTF-8"?>
<КоммерческаяИнформация xmlns="urn:1C.ru:commerceml_2" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" ВерсияСхемы="2.07" ДатаФормирования="2018-03-25T17:20:46">
	<Классификатор>
		<Ид>d851483c-177d-4ca7-81aa-0babd0100e1d</Ид>
		<Наименование>Классификатор (Общий каталог)</Наименование>
		<Владелец>
			<Ид>c25a7969-50eb-4d49-ade2-3ddf89b5fc14</Ид>
			<Наименование>АПарус</Наименование>
			<ОфициальноеНаименование>АПарус</ОфициальноеНаименование>
			<ИНН>1234567894</ИНН>
			<ОКПО/>
		</Владелец>
		<Группы>
			<Группа>
				<Ид>93d74e14-d377-11e5-bf6b-001e6758cc6e</Ид>
				<Наименование>1. Упаковка</Наименование>
				<Группы>
					<Группа>
						<Ид>08e43668-319c-11e3-be70-001e6758cc6e</Ид>
						<Наименование>2. Посуда и контейнеры</Наименование>
					</Группа>
					<Группа>
						<Ид>47793ad9-3259-11e3-be72-001e6758cc6e</Ид>
						<Наименование>5. Химия</Наименование>
					</Группа>
					<Группа>
						<Ид>e138e979-3261-11e3-be72-001e6758cc6e</Ид>
						<Наименование>6. Красота</Наименование>
					</Группа>
					<Группа>
						<Ид>6f48ab8c-326c-11e3-be72-001e6758cc6e</Ид>
						<Наименование>7. Средства от насекомых</Наименование>
					</Группа>
					<Группа>
						<Ид>26b0930f-3184-11e3-be6f-001e6758cc6e</Ид>
						<Наименование>1. Упаковка (пакеты)</Наименование>
						<Группы>
							<Группа>
								<Ид>26b09310-3184-11e3-be6f-001e6758cc6e</Ид>
								<Наименование>1.01. Пакеты с ручками ПВД</Наименование>
							</Группа>
							<Группа>
								<Ид>26b09324-3184-11e3-be6f-001e6758cc6e</Ид>
								<Наименование>1.02. Пакеты "майка" ПНД</Наименование>
							</Группа>
							<Группа>
								<Ид>fab59825-3189-11e3-be6f-001e6758cc6e</Ид>
								<Наименование>1.03. Пленка</Наименование>
							</Группа>
							<Группа>
								<Ид>fab59832-3189-11e3-be6f-001e6758cc6e</Ид>
								<Наименование>1.04. Фасовка ПВД</Наименование>
							</Группа>
							<Группа>
								<Ид>fab59835-3189-11e3-be6f-001e6758cc6e</Ид>
								<Наименование>1.05. Фасовка ПНД</Наименование>
							</Группа>
							<Группа>
								<Ид>5d8e3143-3198-11e3-be70-001e6758cc6e</Ид>
								<Наименование>1.06. Бумажные, вакуумные и прочие пакеты</Наименование>
							</Группа>
							<Группа>
								<Ид>5d8e3157-3198-11e3-be70-001e6758cc6e</Ид>
								<Наименование>1.07. ПАКЕТЫ "ПЕТЛЯ", "ПРОРУБН."</Наименование>
							</Группа>
							<Группа>
								<Ид>118c1af1-319b-11e3-be70-001e6758cc6e</Ид>
								<Наименование>1.08. Подарочная упаковка</Наименование>
							</Группа>
							<Группа>
								<Ид>08e4364b-319c-11e3-be70-001e6758cc6e</Ид>
								<Наименование>1.09. Грипперы (40 мк)</Наименование>
							</Группа>
							<Группа>
								<Ид>3e42f286-3272-11e3-be72-001e6758cc6e</Ид>
								<Наименование>1.11. Новогодние пакеты</Наименование>
							</Группа>
							<Группа>
								<Ид>ba3f7ab1-, ) called at [/var/www/html/wp-content/plugins/woocommerce-and-1centerprise-data-exchange/exchange.php:397]
#9  wc1c_xml_parse(Resource id #137) called at [/var/www/html/wp-content/plugins/woocommerce-and-1centerprise-data-exchange/exchange.php:447]
#10 wc1c_mode_import(catalog, import0_1.xml) called at [/var/www/html/wp-content/plugins/woocommerce-and-1centerprise-data-exchange/exchange.php:507]
#11 wc1c_exchange() called at [/var/www/html/wp-content/plugins/woocommerce-and-1centerprise-data-exchange/exchange.php:532]
#12 wc1c_template_redirect() called at [/var/www/html/wp-includes/class-wp-hook.php:286]
#13 WP_Hook->apply_filters(, Array ([0] => )) called at [/var/www/html/wp-includes/class-wp-hook.php:310]
#14 WP_Hook->do_action(Array ([0] => )) called at [/var/www/html/wp-includes/plugin.php:453]
#15 do_action(template_redirect) called at [/var/www/html/wp-includes/template-loader.php:12]
#16 require_once(/var/www/html/wp-includes/template-loader.php) called at [/var/www/html/wp-blog-header.php:19]
#17 require(/var/www/html/wp-blog-header.php) called at [/var/www/html/index.php:17]

Request URI: http://tdunit.ru/wc1c/exchange/?type=catalog&mode=import&filename=import0_1.xml
Server API: apache2handler
Memory limit: 512M
Maximum POST size: 1000M
PHP version: 7.0.28-0ubuntu0.16.04.1
WordPress version: 4.9.4
Plugin version: 0.7r1356794

rollback

Плагин не справляется с большим объемом данных (10.000+ товаров)

Выделенный сервер VDS - SSD 5Gb, Ram 512mb, Xeon 2x2.7hz, inet 10mb/s

Конфигурация 1С:Предприятие 8.3 (8.3.7.2027) - Управление торговлей, редакция 11.1 (11.1.2.8)

Версии:
Wordpress 4.5.3–ru_RU
Woocommerce Версия 2.6.4

Проблема при выгрузке 10.000 товаров. 1С выдает ошибку, на сайте товары либо загружаются частично, либо вообще не грузятся.

До 2-3 тысяч товаров, всё загружается, хоть и долго.

Нам нужно один раз загрузить весь каталог и потом обновлять цену и наличие.

!!!Ручная загрузку всего каталога не проходит. Зависает плагин или сайт.

Пожалуйста помогите! Очень необходима интеграция 1С на цмс Вордпресс.

Какие могут быть варианты решения? Потоковая загрузка? Увеличение ресурсов сервера? Смена версий?

Порционная обработка данных очередями через рекурсивный вызов

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

С чем связана эта проблема? С загрузкой самого файла на сайт? Или с обработкой этого файла уже на сайте?

Первый вариант мало верится.
Если второй вариант, то мы как то решали эту проблему, переписав функцию на рекурсивную обработку очередями. Вот некий пример http://wpcraft.ru/primer-massovoj-obrabotki-postov-v-wordpress-s-proslushkoj-cherez-hearbeat-api/

Как думаешь реально ли переписать механизм этого плагина на подобный?
Или могут быть какие то проблемы?

Требуется специалист по настройке обмена woocommerce-1c

Унас сейчас настроен обмен на базе плагина WooCommerce and 1C:Enterprise/1С:Предприятие Data Exchange После обновления обмен слетел. Откатились на версию 0.7
Нужен переход на последнюю версию, с учетом наших доработок, и техподдержка в будущем.

Проблема с вариативными товарами

При обновлении остатков не записывается общий остаток товаров. Значение количество в остатке у товара остается пустым. Из-за чего товар получается отсутствует. При этом в вариациях все корректно выводится. Как я понимаю значение количество в остатке должно быть равно сумме остатков в вариациях. Может кто-то решить эту проблему?

Как выгрузить характеристики (Размер) как стандартный атрибут

Сейчас "Размеры" (характерстики), при выгрузке создаются в нестандартные атрибуты Woocomerce. Атрибуты стандартные создаются только из свойств товара, такие как цвет, состав, и тд, но есть большая необходимость выгружать и Размеры в эти дефолтные атрибуты, чтобы потом можно было использовать стандартный фунционал, в моем случае мне нужно сделать фильтр по размерам, по цветам я сделал, по размерам нет вывода там.

Есть решение?

Может ли плагин "принимать" типы товаров?

Имеется ввиду "простой", "виртуальный" ...
Возможно, есть вообще пример xml, корректно воспринимаемого плагином? Столкнулся с ситуацией, когда конфигурация 1С нестандартная и программист готов выдать любую структуру, - но как же ему объяснить, какую?
Так со всем разобрались, только вот понять бы, как передавать:

  • тип товара

  • атрибут

Ошибка при обмене с локальным хостом(windows)

Развернул копию сайта на локальном хосте (openserver,windows), при обмене выходит следующая ошибка:
wc1c_error(unlink(C:\srv\OSPanel\domains\Copy/wp-content/uploads/woocommerce-1c/sale/v8_7283_94.zip): Permission denied in C:\srv\OSPanel\domains\Copy\wp-content\plugins\woocommerce-and-1centerprise-data-exchange\exchange.php on line 344, PHP Unknown Error) called at [C:\srv\OSPanel\domains\Copy\wp-content\plugins\woocommerce-and-1centerprise-data-exchange\exchange.php:137

В файле echange.php в этой строке:
foreach ($zip_paths as $zip_path) {
unlink($zip_path) or wc1c_error(sprintf(“Failed to unlink file %s”, $zip_path));
}
Как я понимаю, ошибка возникает при попытке удаления архивов из директории uploads/.. и нет прав на эти архивы или папку. Но права для всех пользователей стоят полные для папки. 1с и openserver запущены под админом, в htaccess в папке uploads прописывал allow from all. Не помогает. 1С УТ 10.3. Другая база УТ 11 работала на этой же копии сайта. Как решить это?

Не загружается товар и не создаются файлы в папке /catalog

Настроил соединение в 1с. Выдает сообщение о том, что соединение есть.
При нажатии на кнопку выполнить обмен
Сразу появляется сообщение о том, что обмен выполнен, но ни товаров, ни файлов обмена на сайте нет.
Делал все по инструкции и рекомендациям из предыдущих вопросов. Без изменений.
1С Управление небольшой фирмой 1.6

Dроде добился выгрузки заказов от 1с в журнале регистраций такая инфа:
Интерактивный обмен
24.08.2016 10:07:02 Запуск выгрузки заказов
Выгружено: 13. Список документов:
№ СА-000684 от 22.08.2016 0:00:00 (№ 684 от 22.08.2016 0:00:00 на сайте)
№ СА-000663 от 22.08.2016 0:00:00 (№ 663 от 22.08.2016 0:00:00 на сайте)
№ СА-000636 от 19.08.2016 15:28:09 (№ 636 от 19.08.2016 0:00:00 на сайте)
№ СА-000655 от 19.08.2016 0:00:00 (№ 655 от 19.08.2016 0:00:00 на сайте)
№ СА-000629 от 19.08.2016 10:45:57 (№ 629 от 19.08.2016 0:00:00 на сайте)
№ СА-000616 от 17.08.2016 17:50:01 (№ 616 от 17.08.2016 0:00:00 на сайте)
№ СА-000615 от 17.08.2016 16:49:39 (№ 615 от 17.08.2016 0:00:00 на сайте)
№ СА-000612 от 17.08.2016 13:49:12 (№ 612 от 17.08.2016 0:00:00 на сайте)
№ СА-000611 от 16.08.2016 21:21:54 (№ 611 от 16.08.2016 0:00:00 на сайте)
№ СА-000609 от 16.08.2016 21:15:40 (№ 609 от 16.08.2016 0:00:00 на сайте)
№ СА-000594 от 16.08.2016 19:59:18 (№ 594 от 16.08.2016 0:00:00 на сайте)
№ СА-000568 от 15.08.2016 1:19:51 (№ 568 от 15.08.2016 0:00:00 на сайте)
№ СА-000566 от 14.08.2016 19:50:25 (№ 566 от 14.08.2016 0:00:00 на сайте)
24.08.2016 10:07:08 Завершена выгрузка заказов
Дополнительная информация:
Получен расширенный статус успешного завершения сеанса.
Ответ сервера:
success
commit

Но товара как небыло так и нет!

И последнее, посмотрел лог обращений к базе и увидел это
[Thu Aug 25 10:20:39 2016] [warn] [client 185.158.135.174] mod_fcgid: stderr: PHP Fatal error: Database error in "/var/www/xiusnorth/data/www/brokenglassfactory.com/ranking/index.php" on line 44

, referer: http://brokenglassfactory.com
[Thu Aug 25 10:20:39 2016] [warn] [client 185.158.135.174] mod_fcgid: stderr: in /var/www/xiusnorth/data/www/brokenglassfactory.com/ranking/sources/sql/mysql.php on line 88, referer: http://brokenglassfactory.com
[Thu Aug 25 10:20:39 2016] [warn] [client 185.158.135.174] mod_fcgid: stderr: PHP Warning: mysql_connect(): Access denied for user 'u0163979_bgf'@'localhost' (using password: YES) in /var/www/xiusnorth/data/www/brokenglassfactory.com/ranking/sources/sql/mysql.php on line 32, referer: http://brokenglassfactory.com
[Thu Aug 25 10:20:39 2016] [warn] [client 185.158.135.174] mod_fcgid: stderr: PHP Warning: mysql_select_db() expects parameter 2 to be resource, boolean given in /var/www/xiusnorth/data/www/brokenglassfactory.com/ranking/sources/sql/mysql.php on line 33, referer: http://brokenglassfactory.com
[Thu Aug 25 10:20:39 2016] [warn] [client 185.158.135.174] mod_fcgid: stderr: PHP Warning: mysql_query(): Access denied for user 'xiusnorth'@'localhost' (using password: NO) in /var/www/xiusnorth/data/www/brokenglassfactory.com/ranking/sources/sql/mysql.php on line 47, referer: http://brokenglassfactory.com
Получается сайт просто не пускает 1с для выгрузки в базу.. Хотя у 1с подключена учетка админа сайта

Вопрос по настройке.

Добрый день.
Настраиваю обмен.
Возникла ошибка не обрабатывается количество.
При обмене из 1с уходят файлы в которых указаны количество.
При получении сайтом количество не обрабатывается, стоит статус продано.

На самом сайте нет запасов(возможно стоит бесплатная или сильно урезанная версия).
1с УТ 11.4.1.273, проверял файлы передачи количество есть у всех товаров.
Может кто подсказать куда посмотреть или что сделать?

Плагин убирает атрибуты загруженные не через него

Привет!
Выгрузили товары на сайт (наименование, код, вид товара, цена, остаток) добавили к товарам атрибуты. При обновлении цен - атрибуты слетают, и как следствие слетают фильтры :(
Помогите, пожалуйста, разобраться в чем дело.

Import error

День добрый
Поможете с ошибкой?
Последний WP и WC

Exception: Too few arguments to function wc1c_strict_error_handler(), 4 passed and exactly 5 expected in //public_html/wp-content/plugins/woocommerce-1c-master/exchange.php on line 118.
[16-Nov-2021 16:14:31 UTC] PHP Fatal error: Uncaught ArgumentCountError: Too few arguments to function wc1c_strict_error_handler(), 4 passed and exactly 5 expected in /i/public_html/wp-content/plugins/woocommerce-1c-master/exchange.php:118
Stack trace:
#0 /
/public_html/wp-content/plugins/woocommerce-1c-master/exchange.php(330): wc1c_strict_error_handler(2, 'Trying to acces...', '/home/dremansk/...', 330)
#1 [internal function]: wc1c_transaction_shutdown_function()
#2 {main}
thrown in /
/public_html/wp-content/plugins/woocommerce-1c-master/exchange.php on line 118

Вопросы по функционалу

Добрый день, возникло несколько вопросов по поводу функционала плагина:

  1. На сайте можно заказать товар без оплаты, можно сразу оплатить по карте, а также можно выставить счет, информация о том оплачен/не оплачен товар, способ оплаты выгружается в 1С?
  2. Каким образом происходит привязка номенклатуры в 1С к товару в магазине, если товары в магазине уже созданы?
  3. Номер заказа с сайта как-то отображается в заказе покупателя, например в комментарии?
    Заранее спасибо

woo 3.0

Доброго дня! С woo 3.0 и выше совместим данный плагин?

Нереально медленная работа в php-fpm

Начну с того, что даже открытие страницы /wc1c/exchange/ или ?wc1c=exchange? - около 500-900мс. До этого стояла конфа на апаче+нгинксе и там работало все нормально. Сейчас же на железе с двумя e5 и 96гб рам в минуту заполняется 4-6 товаров - что смешно (отключил транзакции и посмотрел)... в рерайтах проблема или в самом php-fpm не понял пока что. Пробывал как через tcp так и через сокет - результат один. По https и без. Есть идеи, почему может так быть?

Конфиг такой у nginx:

(Серверная часть)

location = /favicon.ico {
    log_not_found off;
    access_log off;
}

location = /robots.txt {
    allow all;
    log_not_found off;
    access_log off;
}

location / {
try_files /wp-content/w3tc/pgcache/$cache_uri/_index.html $uri $uri/ /index.php?$args ;

    add_header "X-SS-Cache" "w3 total ss-cached";

}

POST requests and urls with a query string should always go to PHP

if ($request_method = POST) {
set $cache_uri 'null cache';
}
if ($query_string != "") {
set $cache_uri 'null cache';
}

Don't cache uris containing the following segments

if ($request_uri ~* "(/wp-admin/|/xmlrpc.php|/wp-(app|cron|login|register|mail).php|wp-.*.php|/feed/|index.php|wp-comments-popup.php|wp-links-opml.php|wp-locations.php|sitemap(index)?.xml|[a-z0-9-]+-sitemap([0-9]+)?.xml)") {
set $cache_uri 'null cache';
}

Don't use the cache for logged in users or recent commenters

if ($http_cookie ~* "comment_author|wordpress_[a-f0-9]+|wp-postpass|wordpress_logged_in") {
set $cache_uri 'null cache';
}

location ~* ^.+.(ogg|ogv|svg|svgz|eot|otf|woff|mp4|ttf|rss|atom|jpg|jpeg|gif|png|ico|zip|tgz|gz|rar|bz2|doc|xls|exe|ppt|tar|mid|midi|wav|bmp|rtf)$ {
access_log off; log_not_found off; expires max;
}

    location ~ [^/]\.php(/|$) {
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
                                        add_header "X-SS-Cache" "PHP Dynamic";
                                          add_header 'Strict-Transport-Security' 'max-age=15768000; includeSubDomains; preload;';
                                            add_header 'Access-Control-Allow-Origin' "$http_origin";
                                                                  keepalive_timeout 3600;
 proxy_read_timeout 3600s;
proxy_send_timeout 3600s;
fastcgi_read_timeout 3600;
    add_header 'Access-Control-Allow-Credentials' 'true';
    add_header 'Access-Control-Allow-Methods' 'GET, POST, OPTIONS';
        if (!-f $document_root$fastcgi_script_name) {
            return  404;

        }


        fastcgi_pass    %backend_lsnr%;
        fastcgi_index   index.php;
        include         /etc/nginx/fastcgi_params;
    }


error_page  403 /error/404.html;
error_page  404 /error/404.html;
error_page  500 502 503 504 /error/50x.html;

location /error/ {
    alias   %home%/%user%/web/%domain%/document_errors/;
}

location ~* "/\.(htaccess|htpasswd)$" {
    deny    all;
    return  404;
}

include     /etc/nginx/conf.d/phpmyadmin.inc*;
include     /etc/nginx/conf.d/phppgadmin.inc*;
include     /etc/nginx/conf.d/webmail.inc*;

include     %home%/%user%/conf/web/nginx.%domain%.conf*;

}

ps
конфиги нжинкса в гитхабе ад

Заказы с сайта выгружаются порциями

Если какой механизм настройки для плагина чтобы определить кол-во заказов отдаваемых с сайта?
У нас получается следующая ситуация:
При обмене в 1С (УТ10.3) с сайта приходит строго 5 заказов. И чтобы загрузить больше, надо постоянно делать синхронизацию.

Соответсвие статусов заказов

Здраствуйте! Столкнулся с проблемой выгрузки в 1С выполненных заказов. Если ставить Статус в инф. базе - закрыт на Статус на сайте - выполнено, то выгрузка заказов не происходить.

Обмен заказами: двусторонний обмен информацией о заказах на сайте и в приложении.

Возможна ли односторонный обмен данных из Woocommerce в 1С (выполнених заказов) ?

Спасибо.

Обмен проходит, но без цены и количества

поставил сначала плагин на тестовый сайт, все запустилось и обменялось, все ок. Потом на рабочий сайт поставил все тоже самое и 1С та же самая, но выгружает все поля и картинки кроме цены. При чем тестовый сайт все еще работает и узел обмена я не удалял, на него выгружается все отлично как и прежде. Почему может так выгружать без цены и количества ?

Вариантивность продуктов предусмотрена?

Привет!
Мы планируем настроить этот плагин для связки 1С УТ и сайта с вариативными продуктами.
Сейчас плагин предусматривает такой механизм? Или нужно будет дописать?

Ошибка при активации Specified key was too long;

При активации плагина в веб-интерфейсе появляется ошибка:

Плагин создал 816 символов неожиданного вывода при активации. Если возникнет ошибка “headers already sent” с RSS-лентами или иные проблемы, то попробуйте деактивировать или удалить этот плагин.

В debug.log три идентичных ошибки:

База данных WordPress возвратила ошибку Specified key was too long; max key length is 1000 bytes в ответ на запрос ALTER TABLE wp_usermeta ADD INDEX wc1c_meta_key_meta_value (meta_key, meta_value(36)), выполненный activate_plugin, do_action('activate_woocommerce-and-1centerprise-data-exchange/woocommerce-1c.php'), WP_Hook->do_action, WP_Hook->apply_filters, wc1c_activate

Версии ПО:
WP 5.3.1
WC 3.8.1
MySQL Ver 14.14 Distrib 5.7.28

1С Предприятие: Розница (Базовая) Редакция 2.2 => Нет соединения

Добрый, вот кейсы для воспроизведения ошибок:

Не работает ручная загрузка! Не работает автоматическая загрузка!

Доброго времени суток! Уже как третьи сутки мучаюсь с этим обменом. У меня woocommerce и 1С УНФ. Пробовал выгрузить 1000 позиций - ошибка копирования файла. Общался с хостером besthosting.ua все лимиты подняты до предела!

Решил сбелать ручной обмен. Выгрузил в каталог файлы для обмена, загрузил их в папку на хостинг, перехожу по ссылкам ***/?type=catalog&mode=import&filename=import.xml и ***/?type=catalog&mode=import&filename=offers.xml и ничего не происходит вообще, просто открывается страница и всё....

Ребята!ПОМОГИТЕ ПОЖАЛУЙСТА ЗАПУСТИТЬ ЭТОТ ОБМЕН!!! ЗАСТРЕЛЮСЬ....

Ошибочный статус "предзаказ" для вариаций с количеством 0.

После синхронизации получаем товар с 10 вариациями. Количество в запасе у товара = 0.
Количество в запасе у всех вариаций тоже = 0.

В import.php есть следующие строчки:

$_qnty = $_product->get_stock_quantity();
if (!$_qnty) {
  update_post_meta($_post_id, '_stock_status', WC1C_OUTOFSTOCK_STATUS);
}

Они отвечают за то, чтобы каждый импортируемый товар получал статус define('WC1C_OUTOFSTOCK_STATUS', 'outofstock'); (exchange.php). Что абсолютно верно. Но, это не работает на вариациях.

Аналогичный участок кода есть и в offers.php, который должен решать проблему. Но вероятно он не работает.

И в итоге, после импорта, мы получаем товар "outofstock" с 10 вариациями "onbackorder". Статус остатков "onbackorder" не позволяет WP и плагинам корректно отображать такой товар и даёт возможность нажать кнопку "В корзину" у вариации, которая на самом деле отсутствует.

Допускаю, что я что-то неправильно настроил или не указал какую-либо константу. Готов предоставить доступ, при необходимости.

Нерешаемая проблема?

Как я понял, при оформлении вариативных товаров по фэн-шуй, т.к. когда у вас одна карточка и вы храните вариации в характеристиках, записать эти характеристики в глобальные атрибуты не представляется возможным.
1с передает значения характеристик через offers? а через offers глобальный атрибут не записать. Может кто-нибудь в этом вопросе проконсультировать? Может как-то эти атрибуты добавить в woocommerce другим путем? Руками, например? Id известны, в общем-то.
Ну и осложняет все еще то, что ID размеров у категорий номенклатуры разные.

<Свойство>
<Ид>15bd7039-a0fb-11ea-88da-04d3b0770744</Ид>
<Наименование>Размер</Наименование>
<ТипЗначений>Справочник</ТипЗначений>
<ВариантыЗначений>
<Справочник>
<ИдЗначения>15bd703c-a0fb-11ea-88da-04d3b0770744</ИдЗначения>
<Значение>XS</Значение>
</Справочник>
<Справочник>
<ИдЗначения>15bd703d-a0fb-11ea-88da-04d3b0770744</ИдЗначения>
<Значение>S</Значение>
</Справочник>
<Справочник>
<ИдЗначения>15bd703e-a0fb-11ea-88da-04d3b0770744</ИдЗначения>
<Значение>M</Значение>
</Справочник>
<Справочник>
<ИдЗначения>15bd703f-a0fb-11ea-88da-04d3b0770744</ИдЗначения>
<Значение>L</Значение>
</Справочник>
<Справочник>
<ИдЗначения>15bd7040-a0fb-11ea-88da-04d3b0770744</ИдЗначения>
<Значение>XL</Значение>
</Справочник>
<Справочник>
<ИдЗначения>15bd7041-a0fb-11ea-88da-04d3b0770744</ИдЗначения>
<Значение>XXL</Значение>
</Справочник>
</ВариантыЗначений>
<ДляПредложений>true</ДляПредложений>
</Свойство>
</Свойства>

Очень надеюсь на дельный ответ.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.