Павел
значит у тебя есть какой-то плагин, который страдает этим
Алексей
успеет я так обновляю 50к товаров (по 300 штук в запросе) и конрагентов (по 500 в запросе - всего 90к) с МС - и норм
Хотел спросить, вы же отключали cache_alias_map ? Стал ли быстрее сайт в каталоге или нет?
Павел
а не
Павел
слушай, рили
Павел
хм
Павел
а не ахаххахах
Павел
Павел
Павел
все норм, работает
Pavel
в крайнем случае, можно плагинчик написать, пусть резолвит конфликты
бро! я же знаю, что ты крут в модх! разве я с тобой спорил! я лишь говорил о том, что процессоры принудительно режут информацию, которую их не просили. Если бы в них был дополнителный параметр, где можно было бы это отключить, я бы не говорил ничего. Но процессоры режут это дело. На себя берут слишком многое. Я бы хотел создать заголовок "Маша —— шлюха ———- " а мне процессор не даст это сделать.
Павел
Gaius Cassius
За что ты так с Машей?😱
Pavel
За что ты так с Машей?😱
так пробелы все же режутся или нет? у тебя вроде нет пробелов в скрине
Pavel
но в отображении только )
Pavel
За что ты так с Машей?😱
ну как? Коляну же из Реальных пацанов она изменила
Gaius Cassius
так пробелы все же режутся или нет? у тебя вроде нет пробелов в скрине
Не режутся, на скрине просто 2 ресурса с идентичными названиями
Pavel
вот я выяснил, что не режет у тебя какой-то плагин мутит чета в браузере при создании ресурса используется тот же самый процессор, что используешь ты
да. я разбирался долго. видимо плагин. были товары, которые одинаково называются, но присутствует пробел в некоторых лишний. и создавались товары без этого пробела.
Pavel
чета в голос
не. ну еще были проблемы с другими плагинами от дополнений. мешающие загрузить товары. versionX, к примеру. ругался на то что поле content не заполнено... и msearch2 ругался.
Pavel
ну и дольше - согласитесь - через процессорцы создавать массово что то чем через modx api ?
Pavel
лишние проверки...
Pavel
ладно я пошел коляна смотреть..
Павел
ну и дольше - согласитесь - через процессорцы создавать массово что то чем через modx api ?
если тебе не нужно, чтоб работали плагины то да, можно и через newObject
iWatchYouFromAfar
на шаред хостинге есть свои лимиты, в том числе на работу интерпретатора php, который и будет использован если ты через xpdo его гоняешь и в итоге ему не хватит памяти, из-за большого кол-ва ресурсов
iWatchYouFromAfar
посему запросы нужно делать через SQL
Gaius Cassius
посему запросы нужно делать через SQL
а чтобы так делать - надо быть архитектором)
iWatchYouFromAfar
а чтобы так делать - надо быть архитектором)
да от задачи все зависит, если понять что и где создается и удаляется в минишопе, схему посмотреть, то составить SQL запрос не составит труда
iWatchYouFromAfar
там 20к товаров
iWatchYouFromAfar
это еще не так много, но человек уже страдает
Алексей
я тестовый сайт на 200 тыс товаров с 20 опциями и 4 TV гоняю уже который день... Понимаю теперь боль....
Nikolay
там же все в норме! я о том и говорю что пишу уникальный alias и нет проблем $alias = $res->cleanAlias($longTitle)."-".generatePassword(3);
лучше вместо пароля сгенерированного id ресурса добавить через дефис. Но это после создания ресурса получится сделать. Например, на событие OnDocFormSave
Nikolay
а удалить ресурс можно просто через $resource->remove() если не ошибаюсь должно всё удалиться, если это товар, то включая опции и даже картинки
Nikolay
но это не точно
Павел
Nikolay
тогда стопудово)
Павел
Это ж xpdo функция Она шо хочешь удалит
Nikolay
не просто у товаров много завязок, и по идее процессоры на удаление тех же картинок должны отработать при remove ресурса
Nikolay
то есть не обязательно вручную писать процессоры отдельно
Павел
И опции и категории, шо хочешь
Nikolay
я просто уже подзабыл... вроде помню что-то такое было
Nikolay
кстати, как вариант решения для быстрого удаления товаров, есть же событие OnBeforeDocFormDelete, оно по идее срабатывает до удаления ресурса. А значит можно получить id этого ресурса, и дальше уже скриптом через SQL удалить, и картинки из папки
Nikolay
ну и как-то потом отрубить продолжение стандартного сценария удаления
Nikolay
то есть клиент из админки сможет быстро удалять товары, даже пару десятков тысяч
Nikolay
хотя запросов будет многовато) 20 тыс товаров, и несколько запросов итого тысяч под 100 запросов)
Павел
Тем более тебе ж ещё проверки делать, getTableName и прочее
Павел
Ну нахер, я не думаю что это быстрее будет )
Nikolay
а что за проверки?
Nikolay
там штуки 3 таблицы
Nikolay
товары, опции, картинки
Павел
а что за проверки?
Ну тебе ж ещё выяснять что ты именно удаляешь Вдруг ты обычный ресурс трёшь
Nikolay
ну можно типа where class_key = 'msProduct', хотя в плагине будут и такие и секие ресурсы...
Nikolay
да надежнее конечно через процессор, тем более 20 тыс удалять хз когда это понадобиться может)
Nikolay
раз в 100 лет
Павел
Удалять можно порционно и не изобретать велик )
Nikolay
ну да, разные варианты. Просто для таких вещей и нужны программисты, мало ли что может понадобится, тут уже система не причём
Игорь
Народ, как проверить, что фильтра ни одного нет? https://prnt.sc/qk63oq
Игорь
Поясни)
Павел
Народ, как проверить, что фильтра ни одного нет? https://prnt.sc/qk63oq
Привет земеля Выводи в плейсхолдер и делай проверку
Игорь
Привет
Игорь
Феномом можно проверить?
Павел
Поясни)
toPlaceholder позволит тебе сохранить вывод внутри в переменой
Игорь
Что именно ни одного фильтра нет. Соответственно, будет меняться вёрстка - нафига эта панель слева пустая
Павел
А далее просто делаешь if в феноме
Игорь
Если бы кто показал на примере, с 12 часов за компом, уже точно не соображу, чего от меня хотят )
Игорь
Почему так думаешь
Игорь
Проект специфичный, только в одной категории фильтры, в других там пусто
Павел
Если бы кто показал на примере, с 12 часов за компом, уже точно не соображу, чего от меня хотят )
Ля Я с телефона Но если в целом Вот идёт у тебя вывод mfilter Пишешь «toPlaceholder=myfilters” А потом {if $myfilters}
Андрей
Проект специфичный, только в одной категории фильтры, в других там пусто
В таком случае проще сделать отдельный шаблон под эту категорию, без фильтров
Игорь
А. Надо попробывать)
Игорь
Может и так
Игорь
Можно ничего вообще не делать)