Перейти до вмісту
Пошук в
  • Детальніше...
Шукати результати, які ...
Шукати результати в ...

Recommended Posts

28.05.2024 в 19:51, PavelSK2000 сказал:

Доброго дня.

Є питання синхронізації з Пром. Товари "під замовлення " на промі виставляю кількість днів, але при синхронізації все злітає. Як це виправити?

Налаштування на скрінах.

Дякую!

Screenshot_20240528_195015_Chrome.jpg

Screenshot_20240528_194842_Chrome.jpg

доброго дня! Уточніть у підтримки прома як краще в такому разі зробити і їхню відповідь пришліть мені в приватні повідомлення я подивлюсь що можна зробити

  • +1 1
Надіслати
Поділитися на інших сайтах

Доброго дня.
У мене велика проблема.
Зовсім не передаються в гугл мерчант ціни зі знижками.
Навіть, якщо на товар є знижка - все одно звичайна ціна...
Гугл ругається, що не вірні ціни

Надіслати
Поділитися на інших сайтах


04.06.2024 в 11:38, yurabr сказал:

Доброго дня.
У мене велика проблема.
Зовсім не передаються в гугл мерчант ціни зі знижками.
Навіть, якщо на товар є знижка - все одно звичайна ціна...
Гугл ругається, що не вірні ціни

напишіть в привітні повідомлення з доступами в адмінку, яке посилання на гугл відправляєте і приклад товару де ціна неправильна

Надіслати
Поділитися на інших сайтах

06.06.2024 в 11:18, diex сказал:

Добрый день. Подскажите, есть ли выгрузка товаров в Allegro? 

Добрый день! Уточните принимает XML?

Если да есть ссылка на документацию или пример фида?

Надіслати
Поділитися на інших сайтах

Здравствуйте.

Настраиваю импорт по XML.

 

1) По умолчанию обновляются все поля, даже если их не настраивал?

Если мне нужно обновлять только остатки и цены, то остальные поля очистились.

Неприятная неожиданность. По логике не настроенные поля не должны обновляться.

Тогда нужно каждый тег переключателем "Запретить обновлять" ?

 

Или можно через код включить только обновление?

Типа разрешить менять только цену и кол-во.

$data['status'] = 'update'; //обновляем - это не помогло

 

2) Наличие в теге availability, настроил его в пункте Наличие/Кол-во и выбрал Что и на что заменять. Но оно не заменяет.

Остаток in_stock нужно заменить на 10 например. Но это не срабатывает и кол-во ставится в 0.

В результате есть [quantity] => in_stock в print_r($product);, а ожидал 10.

Что делаю не так и как правильно?

 

Ответ на п2. Сделал так при обходе товара.

$stock = $this->importGetXmlData($row, 'availability');
if ($stock === 'in_stock'){
  $stock = 18;
}else{
  $stock = 0;
}
$product['quantity'] = $stock;
$data['fields_p']['quantity'] = 'quantity';

Змінено користувачем ju2r4c
Надіслати
Поділитися на інших сайтах


On 6/9/2024 at 10:59 PM, ju2r4c said:

Здравствуйте.

Настраиваю импорт по XML.

 

1) По умолчанию обновляются все поля, даже если их не настраивал?

Если мне нужно обновлять только остатки и цены, то остальные поля очистились.

Неприятная неожиданность. По логике не настроенные поля не должны обновляться.

Тогда нужно каждый тег переключателем "Запретить обновлять" ?

 

Или можно через код включить только обновление?

Типа разрешить менять только цену и кол-во.

$data['status'] = 'update'; //обновляем - это не помогло

 

2) Наличие в теге availability, настроил его в пункте Наличие/Кол-во и выбрал Что и на что заменять. Но оно не заменяет.

Остаток in_stock нужно заменить на 10 например. Но это не срабатывает и кол-во ставится в 0.

В результате есть [quantity] => in_stock в print_r($product);, а ожидал 10.

Что делаю не так и как правильно?

 

Ответ на п2. Сделал так при обходе товара.

$stock = $this->importGetXmlData($row, 'availability');
if ($stock === 'in_stock'){
  $stock = 18;
}else{
  $stock = 0;
}
$product['quantity'] = $stock;
$data['fields_p']['quantity'] = 'quantity';

Добрый день!

1) Да. Надо ставить запрет на обновление где это надо. То есть на каждом элементе где не надо обновлять. Для изменения цены и наличия ставьте везде запреты кроме соответственно цены и наличия

2) Да, можно и так

  • +1 1
Надіслати
Поділитися на інших сайтах

Спасибо за ответ.

Подскажите как делать сброс остатков в 0 перед импортом поставщика?

У каждого поставщика в магазине уже загружен свой код-идентификатор как приставка в sku, например int-158455, dd-4578.

Как сбросить в 0 все товары с приставкой определённой?

Потому что часто поставщик просто не выгружает товар в прайс, если его уже нет в наличии.

На скрине эта настройка не ясно как работает и как определяет поставщика.

Может это через код сделать проще? Как?

UniXML-1.jpg

Надіслати
Поділитися на інших сайтах


10.06.2024 в 10:53, ju2r4c сказал:

Подскажите как делать сброс остатков в 0 перед импортом поставщика?

У каждого поставщика в магазине уже загружен свой код-идентификатор как приставка в sku, например int-158455, dd-4578.

Все верно. Если загружены не модулем или же вручную что-то добавлено. Не важно.

Для того чтобы остатки в 0 то в пункте Кастомный код до импорта достаточно добавить

$this->db->query("UPDATE " . DB_PREFIX . "product SET quantity = 0 WHERE sku LIKE 'int-%'");

или же

$this->db->query("UPDATE " . DB_PREFIX . "product SET quantity = 0 WHERE sku LIKE 'dd-%'");

 

таком образом все обнуляем а потом импорт что находит - ставит наличие

  • +1 1
Надіслати
Поділитися на інших сайтах

Спасибо за ответ.

Странно срабатывает импорт. Только одну позицию обрабатывает, остальные в 0 остаются.

И модуль пишет что 1 из 1 обновил, хотя там 600 позиций.

И если нажать "Прочитать структуру xml", то все товары видно.

Почему так и как исправить?

 

Кастомный код ДО импорта.

$this->db->query("UPDATE " . DB_PREFIX . "product SET quantity = 0 WHERE sku LIKE 'int-%'");

 

Кастомный код при обходе товара.

$stock = $this->importGetXmlData($row, 'availability');
if ($stock === 'in_stock'){
  $stock = 18;
}else{
  $stock = 0;
}
$product['quantity'] = $stock;
$data['fields_p']['quantity'] = 'quantity';

 

Надіслати
Поділитися на інших сайтах


10.06.2024 в 14:04, ju2r4c сказал:

Спасибо за ответ.

Странно срабатывает импорт. Только одну позицию обрабатывает, остальные в 0 остаются.

И модуль пишет что 1 из 1 обновил, хотя там 600 позиций.

И если нажать "Прочитать структуру xml", то все товары видно.

Почему так и как исправить?

 

Кастомный код ДО импорта.

$this->db->query("UPDATE " . DB_PREFIX . "product SET quantity = 0 WHERE sku LIKE 'int-%'");

 

Кастомный код при обходе товара.

$stock = $this->importGetXmlData($row, 'availability');
if ($stock === 'in_stock'){
  $stock = 18;
}else{
  $stock = 0;
}
$product['quantity'] = $stock;
$data['fields_p']['quantity'] = 'quantity';

 

может быть что угодно. Например не указали в настройка ид товара. как правило там @id надо поставить

или неправильно указали ключ привязки

Надіслати
Поділитися на інших сайтах

Вот формат офера в выгрузке

<offer>
      <id>166468</id>
      <name>58292, білий</name>
      <short_name>58292</short_name>
      <price>3699</price>
      <availability>in_stock</availability>
    </offer>

 

Идентификация по "Артикул товара" как на скрине, а "id товара" пустой был.

Поставил там тоже id при этом НЕ настраивая связь к полю и заработало.

Спасибо.

То есть просто как пустая заглушка нужна там была?

UniXML-2.jpg

Надіслати
Поділитися на інших сайтах


10.06.2024 в 14:33, ju2r4c сказал:

Вот формат офера в выгрузке

<offer>
      <id>166468</id>
      <name>58292, білий</name>
      <short_name>58292</short_name>
      <price>3699</price>
      <availability>in_stock</availability>
    </offer>

 

Идентификация по "Артикул товара" как на скрине, а "id товара" пустой был.

Поставил там тоже id при этом НЕ настраивая связь к полю и заработало.

Спасибо.

То есть просто как пустая заглушка нужна там была?

UniXML-2.jpg

там где id товара - там 100% надо заполнять чтобы модуль разделял товары. Чтобы выдел все товары. А связь на sku все правильно настроили

Надіслати
Поділитися на інших сайтах

17.06.2024 в 14:45, RomanDev сказал:

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

Добрый день! Уточните домен в личные сообщения, видео не открывается

Надіслати
Поділитися на інших сайтах

  • 2 weeks later...

доброго дня

чи можна якось вивантажити всі характеристики в опис?

пункт 3.4 Шаблон генерації опису товарів

щоб спочатку опи я так розумію таке ((pd.description))<br> а нижче всі характеристики? 

 

Змінено користувачем proplat
Надіслати
Поділитися на інших сайтах


30.06.2024 в 13:42, proplat сказал:

доброго дня

чи можна якось вивантажити всі характеристики в опис?

пункт 3.4 Шаблон генерації опису товарів

щоб спочатку опи я так розумію таке ((pd.description))<br> а нижче всі характеристики? 

 

доброго дня! можна в пункті 4.3 додати ось так

$attrs = [];
foreach($product['attributes'] as $ak => $av){
  $attrs[] = $av['name'] . ': ' . $av['name'];
}
if($attrs){
  $product['description'] .= '<br>' . implode('; ', $attrs);
}

 

  • +1 1
Надіслати
Поділитися на інших сайтах

01.07.2024 в 19:22, Exploits сказал:

доброго дня! можна в пункті 4.3 додати ось так

$attrs = [];
foreach($product['attributes'] as $ak => $av){
  $attrs[] = $av['name'] . ': ' . $av['name'];
}
if($attrs){
  $product['description'] .= '<br>' . implode('; ', $attrs);
}

 

не працює(

Надіслати
Поділитися на інших сайтах


03.07.2024 в 09:52, proplat сказал:

не працює(

дещо помилився ось

 

$attrs = [];
foreach($product['attributes'] as $ak => $av){
  $attrs[] = $av['name'] . ': ' . $av['text'];
}
if($attrs){
  $product['description'] .= '<br>' . implode('; ', $attrs);
}

Надіслати
Поділитися на інших сайтах

03.07.2024 в 10:44, FeniXZT сказал:

Добрый день. Не подскажете как у одного из производителей можно выгрузить только акционные товары?

Добрый день! Уточните это импорт или экспорт?

Если экспорт то в пункте 4.3 можно код

 

if($product['manufacturer'] == 'Бренд' && $product['special']){

  $product['price'] = $product['special'];

}

Надіслати
Поділитися на інших сайтах

03.07.2024 в 10:02, Exploits сказал:

дещо помилився ось

 

$attrs = [];
foreach($product['attributes'] as $ak => $av){
  $attrs[] = $av['name'] . ': ' . $av['text'];
}
if($attrs){
  $product['description'] .= '<br>' . implode('; ', $attrs);
}

а можна якось з багатомовним кодом скомбінувати під розетку під пром?

 

foreach($product['attributes'] as $attribute_id => $attribute){
  $attr_query = $this->db->query("SELECT text FROM " . DB_PREFIX . "product_attribute WHERE product_id = '" . (int)$product['product_original_id'] . "' AND attribute_id = '" . (int)$attribute_id . "' AND language_id = 3");
  $product['attributes_full'][] = array(
    'name' => 'param name="' . $attribute['name'] . '"',
    'text' => '<value lang="uk"><![CDATA[' . $attr_query->row['text'] . ']]></value><value lang="ru"><![CDATA[' . $attribute['text'] . ']]></value>',
    'end' => 'param',
    'decode' => true,
  );
  unset($product['attributes'][$attribute_id]);
}
if($product['quantity'] > 5){

$product['quantity'] = 5;

}

$attrs = [];
foreach($product['attributes'] as $ak => $av){
  $attrs[] = $av['name'] . ': ' . $av['text'];
}
if($attrs){
  $product['description'] .= '<br>' . implode('; ', $attrs);
}

Надіслати
Поділитися на інших сайтах


03.07.2024 в 16:53, proplat сказал:

а можна якось з багатомовним кодом скомбінувати під розетку під пром?

 

foreach($product['attributes'] as $attribute_id => $attribute){
  $attr_query = $this->db->query("SELECT text FROM " . DB_PREFIX . "product_attribute WHERE product_id = '" . (int)$product['product_original_id'] . "' AND attribute_id = '" . (int)$attribute_id . "' AND language_id = 3");
  $product['attributes_full'][] = array(
    'name' => 'param name="' . $attribute['name'] . '"',
    'text' => '<value lang="uk"><![CDATA[' . $attr_query->row['text'] . ']]></value><value lang="ru"><![CDATA[' . $attribute['text'] . ']]></value>',
    'end' => 'param',
    'decode' => true,
  );
  unset($product['attributes'][$attribute_id]);
}
if($product['quantity'] > 5){

$product['quantity'] = 5;

}

$attrs = [];
foreach($product['attributes'] as $ak => $av){
  $attrs[] = $av['name'] . ': ' . $av['text'];
}
if($attrs){
  $product['description'] .= '<br>' . implode('; ', $attrs);
}

Код не тестував але для вас має бути ось так. Якщо десь помилився то подивіться по коду але на перший погляд має спрацювати. 

$attrs = [];
$attrs_ua = [];
foreach($product['attributes'] as $attribute_id => $attribute){
  $sql = "SELECT pa.text, ad.name FROM " . DB_PREFIX . "product_attribute pa 
          LEFT JOIN attribute_description ad ON(pa.attribute_id = ad.attribute_id) 
          WHERE pa.product_id = '" . (int)$product['product_original_id'] . "' 
            AND pa.attribute_id = '" . (int)$attribute_id . "' 
            AND ad.attribute_id = '" . (int)$attribute_id . "' 
            AND ad.language_id = 3 
            AND pa.language_id = 3";
  $attr_query = $this->db->query($sql);
  
  $product['attributes_full'][] = array(
    'name' => 'param name="' . $attribute['name'] . '"',
    'text' => '<value lang="uk"><![CDATA[' . $attr_query->row['text'] . ']]></value><value lang="ru"><![CDATA[' . $attribute['text'] . ']]></value>',
    'end' => 'param',
    'decode' => true,
  );
  
  unset($product['attributes'][$attribute_id]);
  
  $attrs[] = $attribute['name'] . ': ' . $attribute['text'];
  $attrs_ua[] = $attr_query->row['name'] . ': ' . $attr_query->row['text'];
}
if($product['quantity'] > 5){
  $product['quantity'] = 5;
}

if($attrs){
  $product['description'] .= '<br>' . implode('; ', $attrs);
}
if($attrs_ua){
  $product['langdata'][3]['description'] .= '<br>' . implode('; ', $attrs_ua);
}

 

Надіслати
Поділитися на інших сайтах

03.07.2024 в 15:40, Exploits сказал:

Добрый день! Уточните это импорт или экспорт?

Если экспорт то в пункте 4.3 можно код

 

if($product['manufacturer'] == 'Бренд' && $product['special']){

  $product['price'] = $product['special'];

}

Экспорт. Спасибо, работает.

Надіслати
Поділитися на інших сайтах


Створіть аккаунт або увійдіть для коментування

Ви повинні бути користувачем, щоб залишити коментар

Створити обліковий запис

Зареєструйтеся для отримання облікового запису. Це просто!

Зареєструвати аккаунт

Вхід

Уже зареєстровані? Увійдіть тут.

Вхід зараз
×
×
  • Створити...

Important Information

На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність.