Всего 125 991 комментарий

Диман
09 октября 2021, 10:46
0
А вообще, постараюсь, на след. недели запустить демо-сайт с доступом в админку.
На живом примере, гораздо проще понять логику создания блоков. Ждем…
Николай Савин
09 октября 2021, 07:50
+1
Предложить свой код разработчикам?) Ахахаха… Отличная шутка!)
Там маленький кусочек — вряд ли его можно испортить. Зато сколько плюсов.
Во-первых в случае принятия кода — можно смело заявлять что входишь в число разработчиков ms2 — и даже показывать ссылку на список контрибьютеров компонента.

Во-вторых необходимость предложить свой код заставит включить голову и сделать это максимально качественно.

В третьих — github позволяет работать над кодом совместно, получать код ревью от более опытных товарищей и самому становиться более опытным.
Алексей Смирнов
08 октября 2021, 18:01
0
Спешу вас расстроить, оптимизировать дерево при таком кол-ве товаров просто не возможно стандартными средствами.
как альтернатива — написать отдельную панель с деревом товаров и с пагинацией в этом дереве.
Или убедить клиента, что дешевле пользоваться стандартными средствами, что он может искать любимые товары в админке с помощью строки поиска и сделать отображение по 100 или 200 штук в списках.
А бред — выводить 3к в дереве и работать с этим…
Andrew
08 октября 2021, 15:58
0
Предложить свой код разработчикам?) Ахахаха… Отличная шутка!)
А у меня вторая серия, только теперь с tickets-ом), он тоже грузит свои скрипты и стили с пустыми настройками frontend_css и frontend_js, но с включенным enable_editor в положении 'да', и никак это побороть нельзя.
Придётся отключить этот редактор «markltUp» в комментариях, блин.
Prihod
08 октября 2021, 15:24
0
Если есть желание могу бесплатно установить на твоём сайте для тестирования. Самому интересно как на таком количестве реальных товаров будет работать
Prihod
08 октября 2021, 15:18
+1
Из БД будет выбираться по 1000 товаров нужное кол раз
Павел Голубев
08 октября 2021, 15:12
0
По какому принципу делится на части? Если у меня 300к товаров.
Prihod
08 октября 2021, 15:07
0
Список товаров формируется согласно условиям которые ты можешь задать в настройках формирования прайс листа после чего те частями выгружаются из БД и пишутся в xml
iWatchYouFromAfar
08 октября 2021, 14:16
+2
Плохое желание заказчика. Дерево ресурсов многим кажется очень удобным, но на самом деле оно рождает куча неприятных UI/UX проблем, в том числе и то что описал ты. Такие компоненты как Tickets, Minishop2 реализуют собственные модули представления с пагинацией.

Почти все CRM системы и админки выводят данные чего-либо в табличном представлении. Твоя задача как разработчика, объяснить это клиенту и убедить его отказаться от желания видеть все в дереве ресурсов.
Олег Щавелев
08 октября 2021, 13:04
0
Я честно не видел ни одной статьи по оптимизации бокового бара. Может и есть на просторе интернета (сдаваться все таки не нужно). Но в принципе так как ExtJS модульный то можно что-то с этим сделать глубоко понимая как работает ExtJS. К примеру AdminTools вносит изменения в боковой бар — не значительные, но все таки вносит.
Павел Голубев
08 октября 2021, 12:48
0
А как генерируется YML-файл? Берутся все товары из базы и поочередно пишутся в фид? Или как-то более хитро?
Miša Bulic
08 октября 2021, 12:39
0
да без проблем.
Я на одном проекте делал руками примерно такое. Там всё было сделано обычными ресурсами, но можно и категории и товары в минишопе сделать.
На странице категории есть поле в которое писалось условие для выборки, по сути тоже самое что и этот компонент, только кодом.
На странице товара я делал так:
{if $_modx->resource.area < 100}
    <a role="button" class="btn btn-secondary btn-sm" title="{15 | resource : 'pagetitle'}" href="{$_modx->makeUrl(15)}">до 100 м<sup>2</sup></a>{/if}
{if $_modx->resource.area > 100 && $_modx->resource.area < 150}
    <a role="button" class="btn btn-secondary btn-sm" title="{16 | resource : 'pagetitle'}" href="{$_modx->makeUrl(16)}">от 100 до 150 м<sup>2</sup></a>{/if}
{if $_modx->resource.area > 150}
    <a role="button" class="btn btn-secondary btn-sm" title="{17 | resource : 'pagetitle'}" href="{$_modx->makeUrl(17)}">от 150 м<sup>2</sup></a>{/if}
вот и руками всё прописывал, это неудобно. Особенно если условий 50 или 100 или ещё больше.
Вот и хотелось бы каким нибудь сниппетом выводить это, чтобы он проходил по всем категориям с условиями и вставлял те, что подходят. Чтобы потом просто добавлять категорию и выставлять нужные условия и везде в товарах сразу появлялись ссылки на эту категорию.
Илья
08 октября 2021, 12:31
0
К сожалению заказчик жаждет видеть продукцию в дереве…
Олег Щавелев
08 октября 2021, 12:20
0
Я думаю нужно написать, cниппет, в документации minishop2 есть примеры. Так как у тебя же все заполнены опции свойства. Тебе нужно просто по взаимодействовать с БД и сделать вывод.

И вопрос в каком контексте msProductsComposerSelection — тут участвует? Я просто активный пользователь (и фанат) как интегратор данного пакета, я как-то даже прикинуть не могу как изложенный тобой кейс с пакетом. Раcскажешь?
Максим
08 октября 2021, 12:13
0
В mSearch2 конфиг и инициализация подключаются в сниппетах. Сам компонент подключается в php-классе.

Почему нельзя сделать так же с minishop2 в одном из следующих обновлений?

Можно, думаю сделают. Вопрос только когда?))) У них там полно работы судя по issue на github.
Можешь туда им написать, предложив свой код.
Miša Bulic
08 октября 2021, 12:11
0
да, наверное. Тут посложнее вывод. Меня интересует все страницы в выборке которой участвует товар. типо облака тегов. и размер, и толщина и цвет всё подряд
Олег Щавелев
08 октября 2021, 11:59
0
Ну конечно есть. В каждой карточке товара есть вкладка «Настройки», в которой есть настройка «Показывать в дереве» снимете галочку и данный товар не будет отображаться в дереве. Так же есть cистемная настройка, в которой вы можете указать значение по умолчанию при создании нового товара ms2_product_show_in_tree_default
Miša Bulic
08 октября 2021, 11:18
0
Есть ли возможность делать обратные ссылки внутри товара? Все выборки в которых участвует товар вывести ссылками. Сеошникам это ппц как нужно.
Andrew
08 октября 2021, 09:34
0
Это да, узнаю сразу если клиент захочет без моего ведома обновить минишоп)

Так понимаю в mSearch2 добавили такую возможность в базовую сборку? Почему нельзя сделать так же с minishop2 в одном из следующих обновлений?