Николай Савин

Николай Савин

Был в сети 29 июня 2026, 12:35
Заказы принимаю
Я делаю так:
Классический формат
[[msProducts?
                      &showLog=`1`
                      &tpl=``
                      &resources=`18`
                      &leftJoin=`{
                        "Image_1": {
                            "class": "msProductFile",
                            "alias" : "Image_1",
                            "on": "Image_1.product_id = msProduct.id  AND Image_1.rank = 1 AND path LIKE '%/small/%'"
                        },
                        "Image_2": {
                            "class": "msProductFile",
                            "alias" : "Image_2",
                            "on": "Image_2.product_id = msProduct.id  AND Image_2.parent = 0 AND Image_2.rank = 2"
                        },
                        "Image_3": {
                            "class": "msProductFile",
                            "alias" : "Image_3",
                            "on": "Image_3.product_id = msProduct.id  AND Image_3.parent = 0 AND Image_3.rank = 3"
                        }
                    }`

                     &select=`{
                        "Image_1": "Image_1.url as Image_1",
                        "Image_2": "Image_2.url as Image_2",
                        "Image_3": "Image_3.url as Image_3"
                    }`

                    &groupby=`
                    {
                        "Image_1": "Image_1.url",
                        "Image_2": "Image_2.url",
                        "Image_3": "Image_3.url"
                    }
                    `
                  ]]
fenom
{'!msProducts' | snippet: [
                                'limit' => 6,
                                'tpl' => 'tpl.catalog.line.front',
                                'includeThumbs' => '300x300',
                                'includeTVs' => 'short_intro',
                                'parents' => 23,
                                'where' => '{"Data.favorite" : 1}',
                                'leftJoin' => [
                                  "300x300_2" => [
                                    "class" => "msProductFile",
                                    "alias" => "300x300_2",
                                    "on" => "300x300_2.product_id = msProduct.id  AND 300x300_2.rank = 1 AND 300x300_2.path LIKE '%/300x300/%'"
                                  ],
                                  "300x300_3" => [
                                    "class" => "msProductFile",
                                    "alias" => "300x300_3",
                                    "on" => "300x300_3.product_id = msProduct.id  AND 300x300_3.rank = 2 AND 300x300_3.path LIKE '%/300x300/%'"
                                  ]
                                ],
                                       'select' => ["300x300_2" => "300x300_2.url as 300x300_2", "300x300_3" => "300x300_3.url as 300x300_3"],
                               'groupby' => ["300x300_2" => "300x300_2.url", "300x300_3" => "300x300_3.url"],
                                ]}

Это готовые рабочие примеры, взятые прямо с проектов, вам конечно нужно их немного под себя переписать, но надеюсь логика понятна. Для каждой дополнительной картинки прописываете свой left join, select, groupby
Заинтересовала программа 3/7, но нигде ранее не видел информации об этом. Есть какие то подробности? Как определить ценность дополнения? На какие суммы имеет смысл рассчитывать? Ну и т.д
Мой компонент modSendPulse интегрируется с сервисом SendPulse, который в том числе умеет делать Push уведомления. т.е. если есть спрос — компонент можно доработать и добавить функционал Push уведомлений.