Add filter for changing ICML product information
This commit is contained in:
parent
d872730796
commit
9d8eb2256c
@ -1,3 +1,8 @@
|
||||
## 2022-08-06 4.4.6
|
||||
* Add automatically upload ICML in CRM
|
||||
* Add filter for changing ICML product information
|
||||
* Important fix bug with shipping tax
|
||||
|
||||
## 2022-07-18 4.4.5
|
||||
* Change logic work with delivery cost
|
||||
* Add price rounding from WC settings
|
||||
|
@ -1,13 +1,5 @@
|
||||
### Настройки каталога
|
||||
|
||||
В версии 4.4.4 добавлен функционал передачи описания товара в каталог. В настройках каталога необходимо выбрать, какое описание передавать краткое или полное. По умолчанию передается полное описание товара.
|
||||
|
||||
Поле description(описание) выводится в карточке товара, так же его можно использовать в twig-шаблонах. Например, для вывода в печатных формах.
|
||||
Пример получения описание торгового предложения:
|
||||
```twig
|
||||
{% for availableOrderProduct in order.availableOrderProducts %} {{ availableOrderProduct.getOffer().getDescription() }} {% endfor %}
|
||||
```
|
||||
|
||||
В настройке представлены статусы товаров в WooCommerce *(Товары -> карточка товара -> блок Опубликовано)*. Из товаров, чей статус будет соответствовать выбранному, будет сгенерирован ICML-файл каталога. Для выбора необходимо поставить галочку напротив нужного статуса и сохранить настройки.
|
||||
|
||||
Статус видимости товара Личное, также относится к статусам товара "Статус: Опубликовано как личное". Анализ статусов товара был произведен в задаче [#76054](https://redmine.retailcrm.tech/issues/76054)
|
||||
|
@ -24,3 +24,32 @@
|
||||
После активации опции при генерации каталога в нем появится параметр xmlID *(артикул)*.
|
||||
|
||||
**xmlID** - внешний идентификатор товара, элемент не является обязательным. В случае, если интернет-магазин использует выгрузку номенклатуры товаров из складской системы *(1С, МойСклад)*, то значение этого элемента соответствует идентификатору товара в данной системе. Активируется, когда клиенты используют Woocommerce + MC/1C.
|
||||
|
||||
### Недавние обновления:
|
||||
|
||||
**В версии 4.4.4** добавлен функционал передачи описания товара в каталог. В настройках каталога необходимо выбрать, какое описание передавать краткое или полное. По умолчанию передается полное описание товара.
|
||||
|
||||
Поле description(описание) выводится в карточке товара, так же его можно использовать в twig-шаблонах. Например, для вывода в печатных формах.
|
||||
Пример получения описание торгового предложения:
|
||||
```twig
|
||||
{% for availableOrderProduct in order.availableOrderProducts %} {{ availableOrderProduct.getOffer().getDescription() }} {% endfor %}
|
||||
```
|
||||
|
||||
**В версии 4.4.6** добавлен фильтр:
|
||||
|
||||
> retailcrm_process_offer - позволяет изменить данные товара, перед записью в ICML каталог.
|
||||
|
||||
|
||||
**Пример использования:**
|
||||
```php
|
||||
<?php
|
||||
|
||||
add_action('retailcrm_process_offer', 'changeProductInfo', 10, 2);
|
||||
|
||||
function changeProductInfo($productData, $wcProduct)
|
||||
{
|
||||
$productData['name'] .= 'Test';
|
||||
|
||||
return $productData;
|
||||
}
|
||||
```
|
57
doc/3. Customization/Filters.md
Normal file
57
doc/3. Customization/Filters.md
Normal file
@ -0,0 +1,57 @@
|
||||
### Фильтры
|
||||
|
||||
Если вы хотите изменить данные отправляемые между CRM и CMS, вы можете использовать **пользовательские фильтры**.
|
||||
|
||||
Чтобы использовать фильтры, необходимо в директории wp-content создать директорию mu-plugins и в ней создать кастомный файл mu-simla.php.
|
||||
|
||||
### Список доступных фильтров
|
||||
|
||||
> retailcrm_process_customer - позволяет изменить данные клиента при передачи из CMS -> CRM.
|
||||
|
||||
> retailcrm_process_customer_address - позволяет изменить адрес клиента при передачи из CMS -> CRM.
|
||||
|
||||
> retailcrm_process_customer_corporate - позволяет изменить данные корпоративного клиента при передачи из CMS -> CRM.
|
||||
|
||||
> retailcrm_process_customer_corporate_address - позволяет изменить адрес корпоративного клиента при передачи из CMS -> CRM.
|
||||
|
||||
> retailcrm_process_customer_corporate_company - позволяет изменить компанию корпоративного клиента при передачи из CMS -> CRM.
|
||||
|
||||
> retailcrm_customer_roles - позволяет изменить допустимые роли клиентов.
|
||||
|
||||
> retailcrm_daemon_collector - позволяет изменить данные для Daemon Collector.
|
||||
|
||||
> retailcrm_initialize_analytics - позволяет изменить данные скрипта для Google Analytics.
|
||||
|
||||
> retailcrm_send_analytics - позволяет изменить отправляемые данные Google Analytics.
|
||||
|
||||
> retailcrm_process_customer_custom_fields - позволяет изменить данные кастомных полей клиента при передачи из CRM -> CMS .
|
||||
|
||||
> retailcrm_history_before_save - позволяет изменить данные заказа и клиента при передачи из CRM -> CMS.
|
||||
|
||||
> retailcrm_process_order_custom_fields - позволяет изменить данные кастомных полей заказ при передачи из CRM -> CMS.
|
||||
|
||||
> retailcrm_process_offer - позволяет изменить данные товара перед записью в ICML каталог.
|
||||
|
||||
> retailcrm_process_order - позволяет изменить данные заказа при передачи из CMS -> CRM.
|
||||
|
||||
> retailcrm_process_order_address - позволяет изменить адрес заказа при передачи из CMS -> CRM.
|
||||
|
||||
> retailcrm_add_cron_interval - позволяет добавить пользовательский интервал времени.
|
||||
|
||||
> retailcrm_cron_schedules - позволяет изменить интервал времени для cron задач.
|
||||
|
||||
> retailcrm_shipping_list - позволяет изменить методы доставки с CMS.
|
||||
|
||||
**Пример использования:**
|
||||
```php
|
||||
<?php
|
||||
|
||||
add_action('retailcrm_process_offer', 'changeProductInfo', 10, 2);
|
||||
|
||||
function changeProductInfo($productData, $wcProduct)
|
||||
{
|
||||
$productData['name'] .= 'Test';
|
||||
|
||||
return $productData;
|
||||
}
|
||||
```
|
@ -526,7 +526,7 @@ if (!class_exists('WC_Retailcrm_Icml')) :
|
||||
$quantity = $product->get_stock_status() === 'instock' ? 1 : 0;
|
||||
}
|
||||
|
||||
$product_data = [
|
||||
$productData = [
|
||||
'id' => $product->get_id(),
|
||||
'productId' => ($product->get_parent_id() > 0) ? $parent->get_id() : $product->get_id(),
|
||||
'name' => $product->get_name(),
|
||||
@ -545,7 +545,7 @@ if (!class_exists('WC_Retailcrm_Icml')) :
|
||||
$params[] = ['code' => 'article', 'name' => 'Article', 'value' => $product->get_sku()];
|
||||
|
||||
if (isset($this->settings['bind_by_sku']) && $this->settings['bind_by_sku'] == WC_Retailcrm_Base::YES) {
|
||||
$product_data['xmlId'] = $product->get_sku();
|
||||
$productData['xmlId'] = $product->get_sku();
|
||||
}
|
||||
}
|
||||
|
||||
@ -562,14 +562,20 @@ if (!class_exists('WC_Retailcrm_Icml')) :
|
||||
}
|
||||
|
||||
if (!empty($params)) {
|
||||
$product_data['params'] = $params;
|
||||
$productData['params'] = $params;
|
||||
}
|
||||
|
||||
if (isset($product_data)) {
|
||||
$full_product_list[] = $product_data;
|
||||
$productData = apply_filters(
|
||||
'retailcrm_process_offer',
|
||||
WC_Retailcrm_Plugin::clearArray($productData),
|
||||
$product
|
||||
);
|
||||
|
||||
if (isset($productData)) {
|
||||
$full_product_list[] = $productData;
|
||||
}
|
||||
|
||||
unset($product_data);
|
||||
unset($productData);
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -82,6 +82,11 @@ Asegúrate de tener una clave API específica para cada tienda. Las siguientes i
|
||||
|
||||
|
||||
== Changelog ==
|
||||
= 4.4.6 =
|
||||
* Add automatically upload ICML in CRM
|
||||
* Add filter for changing ICML product information
|
||||
* Important fix bug with shipping tax
|
||||
|
||||
= 4.4.5 =
|
||||
* Change logic work with delivery cost
|
||||
* Add price rounding from WC settings
|
||||
|
@ -5,10 +5,10 @@
|
||||
* Description: Integration plugin for WooCommerce & Simla.com
|
||||
* Author: RetailDriver LLC
|
||||
* Author URI: http://retailcrm.pro/
|
||||
* Version: 4.4.5
|
||||
* Version: 4.4.6
|
||||
* Tested up to: 5.9
|
||||
* WC requires at least: 5.4
|
||||
* WC tested up to: 6.5
|
||||
* WC tested up to: 6.7
|
||||
* Text Domain: retailcrm
|
||||
*/
|
||||
|
||||
|
@ -16,7 +16,7 @@
|
||||
*
|
||||
* @link https://wordpress.org/plugins/woo-retailcrm/
|
||||
*
|
||||
* @version 4.4.5
|
||||
* @version 4.4.6
|
||||
*
|
||||
* @package RetailCRM
|
||||
*/
|
||||
|
Loading…
x
Reference in New Issue
Block a user