12 февраля 2018, 15:49 А если так &where=`{"template:IN":[1,3,7]}` Вопросы / pdoMenu условия для where 4 +1 1
12 февраля 2018, 14:34 У вас объект а sort метод для массивов. Нужно пройти по всем объектам внутри корневого и пихнуть их в массив Вопросы / Сортировка многомерного массива JS 6 0
02 февраля 2018, 13:53 modstore.pro/info/developers Вопросы / Требования в компоненту для modstore 2 +1
01 февраля 2018, 16:31 1 вариант. Делать без процессора через newObject 2 вариант. Сделать политику на основе AdministratorTemplate, включить нужные разрешения — для создания документа new_document, дать доступ анонимам к контексту web c этой политикой, и еще могут понадобиться add_children, new_document_in_root, publish_document Вопросы / Процессор resource/create или контроль доступа. 7 0 1
01 февраля 2018, 11:43 $response= $modx->cacheManager->get('vk_photos_'.$modx->resource->id, [xPDO::OPT_CACHE_KEY => 'vk_photos']);$photos= $modx->cacheManager->set('vk_photos_'.$modx->resource->id, $response, 86400, [xPDO::OPT_CACHE_KEY => 'vk_photos']);Замените эти строчки Вопросы / Нужна пагинация кастомного сниппета 31 0
31 января 2018, 18:24 Плагин на сохранение ресурса, подключаем класс транслита (используется для alias`ов) и делаем что надо. Ну или сниппет с тем же функционалом — вызывать как модификатор при выводе Вопросы / Есть ли в MODX встроенная замена кириллицы на латиницу? 6 0
31 января 2018, 16:27 Можно так, можно в скрипт добавить проверку — передавать в адресной строке параметр, если он передан принудительно обновлять кеш. if(empty($response) || $request['refresh']==1) { /*получаем фото с ВК*/ $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']; $photos= $modx->cacheManager->set('vk_photos',$response, 86400, [xPDO::OPT_CACHE_KEY => 'vk_photos'] }Надо будет вызвать страницу с get-параметром refresh=1 Вопросы / Нужна пагинация кастомного сниппета 31 0
31 января 2018, 16:12 Через админку он не почистится. Через сутки при запросе он сгенерируется снова. Вопросы / Нужна пагинация кастомного сниппета 31 0
31 января 2018, 15:54 $response = $result['response']; $photos= $modx->cacheManager->set('vk_photos',$response, 86400, [xPDO::OPT_CACHE_KEY => 'vk_photos']);Видимо криво скопировал, не хватало закрывающей скобки и точки с запятой. Вопросы / Нужна пагинация кастомного сниппета 31 0
31 января 2018, 12:56 Некоторые правки <?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>'); $response= $modx->cacheManager->get('vk_photos', [xPDO::OPT_CACHE_KEY => 'vk_photos']); if(empty($response)) { /*получаем фото с ВК*/ $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']; $photos= $modx->cacheManager->set('vk_photos',$response, 86400, [xPDO::OPT_CACHE_KEY => 'vk_photos'] } $output = ''; $pdo = $modx->getService('pdoTools'); $modx->setPlaceholder($totalVar, count($response)); $response = array_slice($response, $offset, $limit, true); foreach ($response as $res) { $res['class'] = $class; $output .= $pdo->getChunk($tpl, $res); } return $output;Файл с кешем лежит тут core/cache/vk_photos/ Вопросы / Нужна пагинация кастомного сниппета 31 0
31 января 2018, 12:39 Хотя теперь не должны повторяться, это было из-за ошибки в коде. Но лучше все-таки писать в кеш, чтобы не запрашивать каждый раз все фото. Кеш сбрасывать плагином на очистку кеша сайта, или передавая определенный параметр на страницу (refresh=1), ну или кеш, например, на сутки делать. $photos= $modx->cacheManager->get('vk_photos', [xPDO::OPT_CACHE_KEY => 'vk_photos']); if(empty($photos)) { /*получаем фото с ВК*/ $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']; $photos= $modx->cacheManager->set('vk_photos',$response, 86400, [xPDO::OPT_CACHE_KEY => 'vk_photos'] } Вопросы / Нужна пагинация кастомного сниппета 31 0
31 января 2018, 12:29 Ошибочку в коде у себя нашел, $response = array_slice($response,$offset, $limit, true); А то что фото повторяются — это скорее всего заслуга vk, что он возвращает каждый раз немного другой порядок. Скорее всего стоит 1 раз получить и записать в кеш, при загрузке страницы проверять кеш — если нет, получать снова, иначе брать из кеша. Вопросы / Нужна пагинация кастомного сниппета 31 0
31 января 2018, 12:21 А еще что возвращает vk скиньте (json) Вопросы / Нужна пагинация кастомного сниппета 31 0
31 января 2018, 12:19 Версия pdoTools? Может были какие-то изменения в этих переменных (limit, page, offset) И код сниппета полный еще раз (с изменениями) Вопросы / Нужна пагинация кастомного сниппета 31 0
31 января 2018, 10:50 Перед foreach $modx->setPlaceholder($totalVar,count($response)); $response = array_slice($response,$offset, ($limit+$offset), true);Если нужен idx в чанках: foreach ($response as $key=>$res) { $res['class'] = $class; $res['idx'] = $key+1; $output .= $pdo->getChunk($tpl, $res); } Вопросы / Нужна пагинация кастомного сниппета 31 0 1
29 января 2018, 13:00 В определении кнопок окна buttons перечислены кнопки, у каждой есть handler, для «Сохранить» — стандартный обработчик submit. Меняете handler на такой: function() { var data = this.fp.getForm().getValues(); //в дату попадает объект c данными формы } Вопросы / ExtJS 1 0
25 января 2018, 16:59 params.sw = data.crop.width; params.sh = data.crop.height; params.sx = data.crop.x; params.sy = data.crop.y;Вставить перед for (var i in params) { Вопросы / Collections & Image+ против MIGX's ResourceMediaPath 6 0
25 января 2018, 10:51 У вас в файле assets/app/js/libs.js подключается jquery 1.11.2, который перекрывает остальные, и поэтому не работает. Скорее всего из-за этого Вопросы / Tickets – не добавляются комментарии 4 0 1
25 января 2018, 10:37 В системных настройках пропишите collections.renderer_image_path = resourceimages/ Ну или другую настройку создайте в namespace collections и кастомный рендерер еще сделайте, чтобы стандартный остался В рендерер как вы видите попадает record — эта вся строка из грида, в том числе и id (если вы конечно в настройках коллекции не удалили колонку id) params.src = MODx.config['collections.renderer_image_path'] + record.id + '/' + data.sourceImg.src;З.Ы. Не проверял. Вопросы / Collections & Image+ против MIGX's ResourceMediaPath 6 0
Возможно ли реализовать возможность предоплаты за доставку на сайте? В любом случаем стандартный флоу минишоп2 рассчитан на оплату по ссылке, т.е. чтобы получить информацию об оплате, нужно чтобы заказ существовал. Чтобы сделать иначе, нужно использ...
Редизайн сообщества На больших экранах основной текст статьи я бы сделал 18 px. Да и текст комментариев можно таким сделать. Для меня лично 16 — мелковато на больших экранах (в комментариях вообще 15 ...
MiniShop3 1.11.0 при клике на radio идет пересчет итоговой суммы в orderUI, в зависимости от способов(оплаты доставки) я так поняла. попробуй код запуска события поставить ниже чем orderUI, после
ImageOptimizer - WebP/AVIF и responsive <picture> для MODX 3 Дополнение доступно modstore.pro/packages/photos-and-files/imageoptimizer
Localizator3 для MODX 3: перевод полей и TV без отдельного context на язык, Vue 3 + PrimeV... Добавил localizator3_default_language
msInShopNotify Начиная с версии 3.0.0-beta добавлена поддержка MiniShop3 Минимальные требования: PHP 8.4 MODX 3.2 MiniShop3
MaxNotify Обновление 1.2.0-pl (03.07.2026) — добавлены уведомления о заявках FormIt через hook-сниппет `maxNotifyFormIt`; — добавлены уведомления о заявках SendIt через hook-...
[msBonus2] 1.3.0 Бонус-коды, уведомления о сгорании и совместимость с msMultiCurre... Да, планируется. Даже чуть больше, чем просто бонусная система)
Нужно пройти по всем объектам внутри корневого и пихнуть их в массив
2 вариант. Сделать политику на основе AdministratorTemplate, включить нужные разрешения — для создания документа new_document, дать доступ анонимам к контексту web c этой политикой, и еще могут понадобиться add_children, new_document_in_root, publish_document
Ну или сниппет с тем же функционалом — вызывать как модификатор при выводе
Надо будет вызвать страницу с get-параметром refresh=1
Файл с кешем лежит тут core/cache/vk_photos/
Но лучше все-таки писать в кеш, чтобы не запрашивать каждый раз все фото. Кеш сбрасывать плагином на очистку кеша сайта, или передавая определенный параметр на страницу (refresh=1), ну или кеш, например, на сутки делать.
А то что фото повторяются — это скорее всего заслуга vk, что он возвращает каждый раз немного другой порядок. Скорее всего стоит 1 раз получить и записать в кеш, при загрузке страницы проверять кеш — если нет, получать снова, иначе брать из кеша.
И код сниппета полный еще раз (с изменениями)
Если нужен idx в чанках:
Меняете handler на такой:
Ну или другую настройку создайте в namespace collections и кастомный рендерер еще сделайте, чтобы стандартный остался
В рендерер как вы видите попадает record — эта вся строка из грида, в том числе и id (если вы конечно в настройках коллекции не удалили колонку id)
З.Ы. Не проверял.