Всего 123 802 комментария

Don
Don
18 ноября 2022, 23:11
0
Ребята, подтолкните, пожалуйста, хоть в какую сторону копать, я совсем в тупике.
Алексей
18 ноября 2022, 22:48
0
Спасибо большое, напишу через несколько дней.
Prihod
18 ноября 2022, 22:07
+1
Через личное сообщение (если нет возможности создать тикет в поддержке) скинь доступ в админку, тестовый файл импорта с 2 товарами и название настройки полей. Завтра посмотрю.
Roman
18 ноября 2022, 21:16
0
Не работает потому что в папку с субдоменом надо копировать файл:
1) config.core.php
2) index.php — в нем заменить $modx->initialize('Ваш context');
3) .htaccess

Пишу коммент для людей у которых возник вопрос на текущий момент и они не нашли решение. (его нет в инете, решил вопрос сам)
Алексей
18 ноября 2022, 20:32
0
В поиске по базе данных такой артикул только у 1 товара. Нет дублей. Я и все товары пробылал обновить, и этот, и другой, и разные. Проверил в поиске — в каталоге — 100% такой артикул всего 1, у 1 товара, в прайс листе тоже 1 такой артикул. И товаров штук 100, если артикулы у 1-2 товаров совпадали, раньше это не мешало импорту всех остальных товаров.

Если поможет обновление, можно купить компонент. Я его давно не обновляю. Сделал магаз, купил компонент на тестовый сайт, перенёс на основной домен, потом за 5 лет сменил 3 домена. Но других копий сайтов с этим компонентом 100% нету, максимум для теста, могу иногда клонировать сайт ненадолго, но не более.
Prihod
18 ноября 2022, 19:48
0
У тебя article = SBGS30 имеет дубликат из-за чего не происходит обновление в том товаре который ты смотришь так что для начала избавься от дублей
steve.kon
18 ноября 2022, 19:44
0
Ну действительно, всё оказалось проще, чем представлялось изначально:
[[msProducts?
 &parents=`97`
 &limit=`0`
 &tpl=`tpl.msProducts.SeriaProducts`
 &tplWrapper=`tplWrapper.msProducts.PodborSeria`
 &wrapIfEmpty=`0`
 &includeContent=`1`
 &sortby=`id`
 &sortdir=`ASC`
 &where = `{"menutitle":30}`
]]
В parents каталог с нужными категориями и &where отсекает ненужные литражи
Алексей
18 ноября 2022, 19:37
0
И еще проверил cvs файлом 1 строка, всего 2 ячейки, артикул и цена. Более актуальный лог.

[2022-11-18 19:31:52] (INFO @ */core/components/msimportexport/model/msimportexport/msie.class.php : 3343) max_execution_time:600
[2022-11-18 19:31:52] (INFO @ */core/components/msimportexport/model/msimportexport/msie.class.php : 3344) memory_limit:256M
[2022-11-18 19:31:52] (INFO @ */core/components/msimportexport/model/msimportexport/msie.class.php : 3345) Используется настройка для полей c ID: 63
[2022-11-18 19:31:52] (INFO @*/core/components/msimportexport/model/msimportexport/msie.class.php : 3423) Строка данных для импорта 
Array
(
    [0] => art123
    [1] => 125
)

[2022-11-18 19:31:52] (INFO @ */core/components/msimportexport/model/msimportexport/msie.class.php : 3516) SQL запросов для проверки на дублирование: 
SELECT msProduct.id FROM `modx_site_content` AS `msProduct` JOIN `modx_ms2_products` `Data` ON msProduct.id = Data.id WHERE  ( `msProduct`.`context_key` = 'web' AND `Data`.`article` = 'SBGS30' )  
[2022-11-18 19:31:52] (INFO @ */core/components/msimportexport/model/msimportexport/msie.class.php : 3520) Ключ article = SBGS30 имеет дубликат
[2022-11-18 19:31:52] (INFO @ */core/components/msimportexport/model/msimportexport/msie.class.php : 3536) Массив данных импортера: 
Array
(
    [article] => art123
    [price] => 125
    [class_key] => msProduct
    [context_key] => web
    [tvs] => 
    [pagetitle] => Зажигалка Bic
    [parent] => 442
    [id] => 967
)

[2022-11-18 19:31:52] (INFO @ */core/model/modx/registry/moddbregister.class.php : 160) Message was null or expired: stdClass Object
(
    [topic] => 2
    [id] => 6cfe0e6127fa25df2a0ef2ae1067d915
    [created] => 2022-11-17 13:46:10
    [valid] => 2022-11-17 13:46:10
    [accessed] => 2022-11-17 13:46:10
    [accesses] => 0
    [expires] => 1668682330
    [payload] => if (time() > 1668682330) return null;
return 1;

    [kill] => 0
)

[2022-11-18 19:31:52] (ERROR @ */core/components/msimportexport/model/msimportexport/msie.class.php : 3626) Ошибка для update: 
Array
(
    [0] => alias: Это поле обязательно для заполнения.
)

[2022-11-18 19:31:52] (INFO @ */core/components/msimportexport/model/msimportexport/msie.class.php : 3669) Вы в режиме отладки, поэтому мы обрабатывать только 1 строку. Время: 0.0919871 сек.
steve.kon
18 ноября 2022, 19:31
0

Вот что делается — нужно создавать страницы под Директ, например, Водонагреватели Thermex 30литров
— и показать все категории (серии), в которых есть 30л модели (товары) с ссылкой на модель

… хотя вот написал и понимаю, что серии (категории) именно в этом случае можно не выводить, т.к. товар (литраж) будет лишь 1 и можно сразу выводить модели (товары)
Алексей
18 ноября 2022, 19:29
0
Обрабатывает хоть 100 товаров, но не обновляет.
Screenshot-2
Алексей
18 ноября 2022, 19:27
0
На VDS PHP модуль Apache до 7.4.23 (alt).
Версия базы данных: 10.1.44-MariaDB-0+deb9u1
Включил отладку.

В журнале ошибок modx при загрузке прайс листа *.csv:

[2022-11-18 19:19:55] (ERROR @ ***/core/components/msimportexport/processors/mgr/import/upload.php : 39) PHP warning: Use of undefined constant strip_tags - assumed 'strip_tags' (this will throw an Error in a future version of PHP)
После нажатия кнопки импортировать график строится, работает но не обновляет остатки или цену. И Ошибки в журнале:
[2022-11-18 19:21:31] (INFO @ */core/components/msimportexport/model/msimportexport/msie.class.php : 3343) max_execution_time:600
[2022-11-18 19:21:31] (INFO @ */core/components/msimportexport/model/msimportexport/msie.class.php : 3344) memory_limit:256M
[2022-11-18 19:21:31] (INFO @ */core/components/msimportexport/model/msimportexport/msie.class.php : 3345) Используется настройка для полей c ID: 85
[2022-11-18 19:21:31] (INFO @ */core/components/msimportexport/model/msimportexport/msie.class.php : 3423) Строка данных для импорта 
Array
(
    [0] => Номенклатура
    [1] => Артикул
    [2] => Ед
    [3] => Цена
    [4] => Остатки1
    [5] => Остатки2
    [6] => СуммаОстатков
)
[2022-11-18 19:21:31] (INFO @ */core/components/msimportexport/model/msimportexport/msie.class.php : 3516) SQL запросов для проверки на дублирование: 
SELECT msProduct.id FROM `modx_site_content` AS `msProduct` JOIN `modx_ms2_products` `Data` ON msProduct.id = Data.id WHERE  ( `msProduct`.`context_key` = 'web' AND `Data`.`article` = 'Артикул' )  
[2022-11-18 19:21:31] (INFO @ */core/components/msimportexport/model/msimportexport/msie.class.php : 3536) Массив данных импортера: 
Array
(
    [article] => Артикул
    [options-availability_1] => Остатки1
    [options-availability_2] => Остатки2
    [availability] => СуммаОстатков
    [class_key] => msProduct
    [context_key] => web
    [tvs] => 
    [parent] => 2477
)
Алексей Смирнов
18 ноября 2022, 19:23
0
Он может,
Но вам же нужны именно товары… те. не выводить категорию 3, если там нет товаров с menuindex = 1…
Ну странно это.
Опишите для чего такая сложная выборка нужна? Может, есть решение проще…
steve.kon
18 ноября 2022, 19:14
0
Ну можно, конечно, и дополнительно TV сделать, из которого будет браться значение для &where = `{«menutitle»: ЗНАЧЕНИЕ TV}` чтобы в категориях ссылки на товары лишние убрать, но всё достаточно сложно для менеджера получается...(
А не подскажете mFilter2 может фильтровать результаты по параметрам дочерних элементов?
Алексей Смирнов
18 ноября 2022, 19:03
+1
Укажите в выборке parents= параметр с нужным id категории…
Prihod
18 ноября 2022, 18:37
0
Какая версия php?
Включи в настройках импорта режим отладки и посмотри что будет в логе modx
Алексей
18 ноября 2022, 17:26
0
Расшифруйте пожалуйста ошибки кто-нибудь, пока не понимаю где сломал.
msimportexport/processors/mgr/import/upload.php : 39) PHP warning: Use of undefined constant strip_tags - assumed 'strip_tags' (this will throw an Error in a future version of PHP)
Артур Шевченко
18 ноября 2022, 15:52
0
Декодировать json можно функцией json_decode(), если она не работает, значит туда не попадает json или попадает не json.
Lori
18 ноября 2022, 09:33
0
Здравствуйте. Спасибо за такой быстрый ответ
Наумов Алексей
18 ноября 2022, 09:07
1
+1
Добрый день. Основной принцип — комментарий добавляется с фронта, поэтому в админке и нет кнопки загрузки файла. Но в целом наверное полезно, сделать можно… поставлю в список хотелок