Вопросы

Нужна пагинация кастомного сниппета

Ребята, нужна пагинация сниппета, чтобы с pdoPage работало. Помогите.
<?php
// VK API
    $owner_id = $modx->getOption('owner_id', $scriptProperties, '0'); // Группа
    $album_id = $modx->getOption('album_id', $scriptProperties, '0'); // Альбом
    $rev = $modx->getOption('rev', $scriptProperties, '1'); // 1 новые сверху
    $extended = $modx->getOption('extended', $scriptProperties, '0'); // Расширенные поля
    $feed_type = $modx->getOption('feed_type', $scriptProperties, 'photo'); // photo, photo_tag
    $count = $modx->getOption('count', $scriptProperties, ''); // Количество загружаемых фото
    $class = $modx->getOption('class', $scriptProperties, '');
    $tpl = $modx->getOption('tpl', $scriptProperties, '@INLINE <li><img src="[[+src_bigxx]]"></li>');
    
    $query = file_get_contents('https://api.vk.com/method/photos.get?owner_id=-'.$owner_id.'&album_id='.$album_id.'&rev='.$rev.'&extended='.$extended.'&feed_type='.$feed_type.'&count='.$count);
    $result = json_decode($query, true); // Декодируем полученный json массив
    
    $response = $result['response'];
    $output = '';
    $pdo = $modx->getService('pdoTools');
    
    foreach ($response as $res) {    
        $res['class'] = $class;
        $output .= $pdo->getChunk($tpl, $res);
    }
    return $output;
Дмитрий
30 января 2018, 17:36
modx.pro
1 698
0

Как скрыть первое изображение из галереи miniShop2 по условию?

Добрый день! Понадобилось решить одну необычную задачу. Есть стандартная галерея miniShop, в которой нужно сделать так, чтобы первое изображение можно было бы выборочно скрывать в галерее карточки товара.

В загруженных в галерею изображениях есть поле «Описание». Я думаю, что его можно было использовать для этого. Проставляю я, допустим в поле «Описание» значение 0 и это изображение автоматом скрывалось бы, а на его место становилось следующее по порядку.
Константин
30 января 2018, 12:22
modx.pro
1 402
0

mSearch2: ajax подгрузка результатов

Здравствуйте!

Кто-нибудь сталкивался с такой проблемой что при использовании сниппета mSearchForm из-за абсолютного позиционирования список результатов улетал в верхний левый угол браузера? Как с этим быть?

Заранее большое спасибо!
Павлик
30 января 2018, 08:50
modx.pro
2 637
0

Импорт XML

Здравствуйте коллеги!
Не смог найти ответа погуглив сайт, подскажите пожалуйста есть ли модуль для импорта товаров в minishop2 в формате xml? Если да, то не сочтите трудным кинув на него ссылку.
Заранее всем спасибо!
Roman
30 января 2018, 08:48
modx.pro
1 818
0

Загрузка при перетаскивании картинок в TinyMCE

Как сделать на MODX добавление контента на страницу в поле Содержимое с подключенным TinyMCE (или другим редактором) таким же удобным как на wp, чтобы картинки перетаскиваешь картинку в поле, а она автоматом на сервер загружалась и в редактор подставлялась правильная ссылка?
Александр
30 января 2018, 07:59
modx.pro
910
+1

Передать значение с button в form

Друзья, помогите пожалуйста с задачей:
Требуется из многочисленных
<button>
на странице с разными значениями, при нажатии на них id или информация о название добавлялась в
<form>
, то есть сам механизм —
Человек выбирает товар нажимает на кнопку и «товар» добавляется в скрытое поле
<input>
в элементе
<form>
… далее вводит данные контактные и все это отправляется на почту…
<form>
существует на странице со всеми
<button>
!
Думаю это не так сложно, но не для меня на данный момент.

Большое спасибо, за ответы!!!
Дмитрий
29 января 2018, 21:49
modx.pro
1 026
0

Вырезать сниппет

День добрый.
Подскажите, а как правильно вырезать вызов сниппета из поля?
Вывожу ресурсы, а в поле introtext стоит вызов pdoResources (без понятия зачем), можно ли его как-то вырезать?
Максим
29 января 2018, 19:28
modx.pro
1 028
0

pdoTools: параметр where

Здравствуйте!

Появилась задача вывести при помощи сниппета pdoMenu ссылки на ресурсы двух родителей плюс ссылки на некоторые ресурсы не имеющие отношение к этим родителям. Для реализации этого использую параметр where:
&where=`{"parent":26,"OR:parent":29,"OR:id":31,"OR:id":33}`

Или так:
&where=`[{"parent":26,"OR:parent":29,"OR:id":31,"OR:id":33}]`
Результат нулевой.

Подскажите пожалуйста как правильно писать такие значения в этот параметр и вообще как лучше всего решить эту задачу?

Всем заранее большое спасибо!

РЕШЕНИЕ:
В ситуациях когда много AND и OR условий лучше помещать в параметр &where просто часть SQL-запроса относящуюся к WHERE:
&where=`["SQL-запрос"]`
Дело в том что если у нас условие типа такого:
&where=`{
"parent":5,
"OR:parent:=":36,
"OR:id:=":29,
"OR:id:=":8
}`
То условия с ID представляют собой элементы JSON-массива с одинаковыми ключами и соответственно последующие элементы перезаписывают предыдущие. В результате в запрос попадет лишь последнее условие.
Павлик
29 января 2018, 16:06
modx.pro
3 742
0

mSearch2: алиасы для фильтров

Здравствуйте!

Делаю страницу для результатов поиска с фильтрами, вызываю сниппет:
[[!mFilter2?
        &tplOuter=`filterSearch.outer`
        &parents=`8`
        &filters=`
            tv|productCountry:default,
            tv|productPrice:number
        `
        &aliases=`tv|productCountry==madein`
        &tplFilter.outer.madein=`productCountryFilter.outer`
        &tplFilter.row.madein=`productCountryFilter.row`
        &tplFilter.outer.tv|productPrice=`productPriceFilter.outer`
        &tplFilter.row.tv|productPrice=`productPriceFilter.row`
]]
И в результате параметр «алиас» не хочет работать.

Подскажите, пожалуйста, в чем может быть дело? Заранее спасибо!

Я сам все понял (кстати этого нет ни в одном мануале по этому компоненту): параметр &aliases работает только с TV-шками у которых нет заглавных букв в названии. Также и с придуманными псевдонимами: в них не должно быть заглавных букв.
Павлик
29 января 2018, 15:57
modx.pro
911
0

Сортировка поля size в Minishop2

Ввожу размер товара в поле size (S,M,L,XL,XXL), далее сохраняю товар.
c1a4c9f8650ef2eaae7b0392b00c84ab-full.png
Обновляю страницу в админке и поле меняет сортировку (XXL,XL,L,M,S)
8d8ff7f7327496f9682c73e987ce9c18-full.png
На странице сайта тоже самое. При входе на страницу товара одна сортировка. При обновлении страницы другая.
{'!msOptions' | snippet:[
                            'options'=>'size',
                            'tpl'=>'m_msOptions',
                         ]}

{foreach $options as $name => $values}
                        {foreach $values as $value}
                            <input type="radio" value="{$value}" id="{$value}" name="options[{$name}]"><label for="{$value}">{$value}</label></option>
                        {/foreach}
        {/foreach}
Костромин Игорь
29 января 2018, 10:56
modx.pro
3
3 178
0