Closed OlegShchavelev closed 1 year ago
Может не стоит усложнять коробочный функционал и пихать туда любую хотелку? Ваше предложение будет использоваться крайне редко и после всех подобных хотелок, компонент обрастет густой шерстью, которую потом не расчесать.
Я исхожу из того что сниппет msProducts согласно документации наследуется возможности пакета pdoTools, в том числе pdoResourses. В сниппете pdoResourses данные возможности есть.
Причины.
На основании вышеизложенного я сформировал issue
Может не стоит усложнять коробочный функционал и пихать туда любую хотелку? Ваше предложение будет использоваться крайне редко и после всех подобных хотелок, компонент обрастет густой шерстью, которую потом не расчесать.
Как раз нужно исправить логику, а не лепить костили, как сейчас.
Я исхожу из того что сниппет msProducts согласно документации наследуется возможности пакета pdoTools, в том числе pdoResourses. В сниппете pdoResourses данные возможности есть.
Причины.
- Как правила в интернет-магазине используется не менее 5 витрин, а в среднем до 10 в данном случае мы уменьшаем количество чанков и делаем работу с ними более удобными так как все правиться из одного места.
- Человек начал с pdoResources сделал себе удобную логику и начинает реализовывать такую же логику в сниппете msProducts и понимает что нет тут надо действовать по-другому.
- Если брать темы по шаблонизации на портале modx.pro данная тема интересна аудитории и как правила аудитория активно реагирует на данные вопросы.
На основании вышеизложенного я сформировал issue
Аудитория modx.pro зачастую не может вызвать сниппет без ошибок. Если кто-то и решит дорабатывать изложенный вами функционал, значит нужно ставить этому разработчику задачу по доработке документации, причем такой доработке, чтобы у аудитории modx.pro не возникало по ней вопросов.
Может не стоит усложнять коробочный функционал и пихать туда любую хотелку?
Не бурчи Паш😬 Усложнением называть передачу параметров в чанк это чересчур
Может не стоит усложнять коробочный функционал и пихать туда любую хотелку?
Не бурчи Паш😬 Усложнением называть передачу параметров в чанк это чересчур
Соглашусь, нужно просто исправить, minishop2 не работает без prepareSnippet(для меня это костиль), хотя в логике pdoResourses есть, и в логике pdoFetch тоже заложено, параметр почему-то теряется. Не искал почему. Но исправить нужно.
Я исхожу из того что сниппет msProducts согласно документации наследуется возможности пакета pdoTools, в том числе pdoResourses. В сниппете pdoResourses данные возможности есть. Причины.
- Как правила в интернет-магазине используется не менее 5 витрин, а в среднем до 10 в данном случае мы уменьшаем количество чанков и делаем работу с ними более удобными так как все правиться из одного места.
- Человек начал с pdoResources сделал себе удобную логику и начинает реализовывать такую же логику в сниппете msProducts и понимает что нет тут надо действовать по-другому.
- Если брать темы по шаблонизации на портале modx.pro данная тема интересна аудитории и как правила аудитория активно реагирует на данные вопросы.
На основании вышеизложенного я сформировал issue
Аудитория modx.pro зачастую не может вызвать сниппет без ошибок. Если кто-то и решит дорабатывать изложенный вами функционал, значит нужно ставить этому разработчику задачу по доработке документации, причем такой доработке, чтобы у аудитории modx.pro не возникало по ней вопросов.
А теперь посмотри внимательно документацию и поймешь что ничего не нужно писать, просто не работает из коробки https://docs.modx.pro/komponentyi/pdotools/obshhie-parametryi
Я исхожу из того что сниппет msProducts согласно документации наследуется возможности пакета pdoTools, в том числе pdoResourses. В сниппете pdoResourses данные возможности есть. Причины.
- Как правила в интернет-магазине используется не менее 5 витрин, а в среднем до 10 в данном случае мы уменьшаем количество чанков и делаем работу с ними более удобными так как все правиться из одного места.
- Человек начал с pdoResources сделал себе удобную логику и начинает реализовывать такую же логику в сниппете msProducts и понимает что нет тут надо действовать по-другому.
- Если брать темы по шаблонизации на портале modx.pro данная тема интересна аудитории и как правила аудитория активно реагирует на данные вопросы.
На основании вышеизложенного я сформировал issue
Аудитория modx.pro зачастую не может вызвать сниппет без ошибок. Если кто-то и решит дорабатывать изложенный вами функционал, значит нужно ставить этому разработчику задачу по доработке документации, причем такой доработке, чтобы у аудитории modx.pro не возникало по ней вопросов.
А теперь посмотри внимательно документацию и поймешь что ничего не нужно писать, просто не работает из коробки https://docs.modx.pro/komponentyi/pdotools/obshhie-parametryi
Тогда надо грамотно формировать issue. Это не запрос новой функции, а необходимость выяснить, почему не работают общие параметры pdoTools в сниппетах minishop2.
Я исхожу из того что сниппет msProducts согласно документации наследуется возможности пакета pdoTools, в том числе pdoResourses. В сниппете pdoResourses данные возможности есть. Причины.
- Как правила в интернет-магазине используется не менее 5 витрин, а в среднем до 10 в данном случае мы уменьшаем количество чанков и делаем работу с ними более удобными так как все правиться из одного места.
- Человек начал с pdoResources сделал себе удобную логику и начинает реализовывать такую же логику в сниппете msProducts и понимает что нет тут надо действовать по-другому.
- Если брать темы по шаблонизации на портале modx.pro данная тема интересна аудитории и как правила аудитория активно реагирует на данные вопросы.
На основании вышеизложенного я сформировал issue
Аудитория modx.pro зачастую не может вызвать сниппет без ошибок. Если кто-то и решит дорабатывать изложенный вами функционал, значит нужно ставить этому разработчику задачу по доработке документации, причем такой доработке, чтобы у аудитории modx.pro не возникало по ней вопросов.
А теперь посмотри внимательно документацию и поймешь что ничего не нужно писать, просто не работает из коробки https://docs.modx.pro/komponentyi/pdotools/obshhie-parametryi
Тогда надо грамотно формировать issue. Это не запрос новой функции, а необходимость выяснить, почему не работают общие параметры pdoTools в сниппетах minishop2.
Ну наверное потому, что минишоп только использует pdoTools а не является его частью, и в том виде, что сниппеты мс должны иметь весь функцинал снипетов пт фразы в документации нет нигде, автор выдал желаемое за действительное. Если так охота передавать параметра в тплвраппер и тпл можно пользоваться инлайн нотацией. Нет ничего сложного в том чтобы переписать msProducts со всеми свистоперделками pdoResources, но зачем...
Ну наверное потому, что минишоп только использует pdoTools а не является его частью, и в том виде, что сниппеты мс должны иметь весь функцинал снипетов пт фразы в документации нет нигде, автор выдал желаемое за действительное. Если так охота передавать параметра в тплвраппер и тпл можно пользоваться инлайн нотацией. Нет ничего сложного в том чтобы переписать msProducts со всеми свистоперделками pdoResources, но зачем...
Как раз в доке по ms это сказано, потому и меня раньше в заблуждение ввело
Ну наверное потому, что минишоп только использует pdoTools а не является его частью, и в том виде, что сниппеты мс должны иметь весь функцинал снипетов пт фразы в документации нет нигде, автор выдал желаемое за действительное. Если так охота передавать параметра в тплвраппер и тпл можно пользоваться инлайн нотацией. Нет ничего сложного в том чтобы переписать msProducts со всеми свистоперделками pdoResources, но зачем...
Как раз в доке по ms это сказано, потому и меня раньше в заблуждение ввело
Насколько я помню, в том же Тикетс так же не во всех сниппетах работают общие параметры pdoTools.
Ну наверное потому, что минишоп только использует pdoTools а не является его частью, и в том виде, что сниппеты мс должны иметь весь функцинал снипетов пт фразы в документации нет нигде, автор выдал желаемое за действительное. Если так охота передавать параметра в тплвраппер и тпл можно пользоваться инлайн нотацией. Нет ничего сложного в том чтобы переписать msProducts со всеми свистоперделками pdoResources, но зачем...
Как раз в доке по ms это сказано, потому и меня раньше в заблуждение ввело
Насколько я помню, в том же Тикетс так же не во всех сниппетах работают общие параметры pdoTools.
Тогда нужно или доку исправить, или функционал поправить
Особенности Сниппет msProducts, как и все сниппеты miniShop2, использует pdoTools для работы. Поэтому
все основные его параметры
совпадают с pdoResources, но есть и особенности.
Все основные его параметры, а не абсолютно все его параметры совпадают со всеми параметрами pdoResources
Ми говорим про одни и те же общие параметры, или про разные вещи
Тут бурное обсуждение. Как автор issue хочу сверить часы и поделиться с вами своим мнением. Для удобства я буду комментировать конкретные фразы.
Все основные его параметры, а не абсолютно все его параметры совпадают со всеми параметрами pdoResources
Без сомнения у сниппетов есть параметры, которые общие (основные), а есть индивидуальные. Как правила индивидуальные параметры связаны с иной организацией данных. К примеру сниппета msProducts, есть дополнительные таблицы с полями price,old_price и т.д связи с этим и есть это деление.
Данный параметр связан исключительно с шаблонизацией и не имеет ни какого отношения к организации данных (БД), а это означает что может быть во всех сниппетах семейcтва (на мой скромный взгляд) . В нашем случае, мы обсуждаем msProducts и организацию данных.
Ну наверное потому, что минишоп только использует pdoTools а не является его частью, и в том виде, что сниппеты мс должны иметь весь функцинал снипетов пт фразы в документации нет нигде, автор выдал желаемое за действительное. Если так охота передавать параметра в тплвраппер и тпл можно пользоваться инлайн нотацией. Нет ничего сложного в том чтобы переписать msProducts со всеми свистоперделками pdoResources, но зачем...
Действительно можно использовать @INLINE это одно из решений данной задачи. Это и есть принцип шаблонизации. Хочу отметить что данный принцип распространяется на все сниппеты (Возможно использовать INLINE). То что я написал такой же принцип, но он же есть не везде хотя решает одну и ту же задачу минимизирует количество чанков. К примеру много кода и @INLINE не удобен. Странно как-то, если у тебя showcase(витрина) на pdoResources у тебя есть подход, если у тебя витрина на msProducts тебе нужно действовать по-другому.
Так же вариантов действий множество можно обернуть в сниппет или решить проблему с помощью Fenom можно с помощью prepareSnippet, а можно еще свой сниппет на основе msProducts написать.
Тогда надо грамотно формировать issue. Это не запрос новой функции, а необходимость выяснить, почему не работают общие параметры pdoTools в сниппетах minishop2.
Я сформировал issue, потому что для msProducts это новый параметр. Вопрос, что его можно считать общим и он может быть полезным это вопрос обсуждения. И как я понимаю это очень простое решение.
Просто копируем в msProduct нужный участок кода и добавляем переменную с массивом и возможность появилась.
Так же хочу отметить, что если это есть pdoResources варианта два либо разработчики приняли PR или написали сами потому, считали целесообразным. Это и легло для написания issue.
Я сформировал issue, потому что для msProducts это новый параметр. Вопрос, что его можно считать общим и он может быть полезным это вопрос обсуждения. И как я понимаю это очень простое решение.
Я прошу прощения @iWatchYouFromAfar за последний комментарий. Я не увидел ссылку от @CrazyBoy49z действительно это баг в данном контексте и не правильно выбрал тип issue. Я не видел данную ссылку. Но мне кажется что мы делимся документацией и ее читаем - это круто.
Добавляем в tpl кастомные параметры из вызова #742
Запрос функции
Необходимо в сниппет msProducts cледующей механизм.
tpl
Реализовать возможность аналогично pdoResources добавление параметром в сниппет.
В чанке row.products вызываем {$title}
Для добавления переменной в чанк (обертку) tplWrapper так же аналогично pdoResources
В чанке 'wrapper.products вызываем {$additionalPlaceholders.title} и {$additionalPlaceholders.class}
Зачем это нужно?
Для более удобной шаблонизации и унификации шаблонов. Так как данную возможность можно реализовать с помощью fenom, prepareSnippet или "сниппет в сниппете".