Олег

Олег

С нами с 31 октября 2016; Место в рейтинге пользователей: #87
Олег
18 марта 2017, 14:22
0
Желательно подробнее расписать задачу, но самое популярное событие — onpagenotfound, очень часто на него что-то вешается.
Олег
18 марта 2017, 14:19
+1
Какого рода должен быть поиск?
Я с похожей задачей на днях разобрался так:
Страница обновляется, GET или POST запросом передается текст запроса, который передается в параметр &where вызова pdoResources.

Но поиск этот очень простой, без плюшек.

Долго не заморачивался с реализацией.
Олег
16 марта 2017, 13:41
0
Есть ли возможность указывать модификации при импорте через csv или сторонние дополнения?
Поддерживаются только стандартные свойства — color, size или можно добавлять свои? У меня должны быть свойства — дозировка, объем, теоретически можно color, size приспособить для этих целей. Но в идеале, конечно, использовать свои.
Олег
15 марта 2017, 20:19
0
Не уверен, есть ли это в бутстрапе — скорее всего есть: метод update (или destroy + initialize) для вкладок после изменения.
Олег
15 марта 2017, 16:52
0
Варианты, которые сразу пришли в голову:
1) mFilter2 — сделать это как фильтр по доступным категориям.
2) Сделать переключение ссылками на эту же страницу с GET параметрами, страница будет перегружаться с нужной информацией.
3) Выводить количество комнат в квартире для слайда в аттрибуте, например, countRooms и при клике оставлять видимыми только те, что имеют подходящее значение.

Скорее всего в 1 и 3 варианте придется пошаманить со слайдером и при изменениях его обновлять.
Олег
14 марта 2017, 16:49
0
Ого, этот способ много интереснее моего!
Конечный вариант кода выглядит так:

[[!pdoResources?
                          &loadModels=`ms2gallery`
                          &class=`msResourceFile`
                          &tpl=`@INLINE: 
                            <a href="/assets/images/resources/[[*parent]]/800x536/[[+file]]" data-fancybox="gallery" class="item fancybox swiper-slide" rel="phototabs" data-caption="[[+name]]">
                                <img src="/assets/images/resources/[[*parent]]/150x130/[[+file]]" alt="[[+name]]" title="[[+name]]">
                            </a>`
                          &sortby=`{ "msResourceFile.rank":"ASC" }`
                          &limit=`0`
                          &where=`[
                              { "active":1, "parent":0, "resource_id":[[*parent]] }, {"add:NOT LIKE":"%|[[*id]]|%", "OR:add:LIKE":"", "OR:add:IS":null }
                            ]`
                          &showLog=`1`
                        ]]
Подскажите, пожалуйста, что это за чудный вариант синтаксиса? Где про него можно почитать? Я правильно понял, что второй уровень квадратных скобок это аналог AND (… OR ...)?
&where=`[
      { "active":1, "parent":0, "resource_id":25 },
      [
          {"add:NOT LIKE":"%65%", "OR:add:IS":null },
          { "add:NOT LIKE":"", "OR:add:IS":null }
      ]
    ]`
Ну раз компонент действительно куплен официально, попробую помочь.
Безусловно, я почти с самого начала проталкиваю покупку платных дополнений при создании сайта.
Олег
14 марта 2017, 15:43
0
Используя pdoresources смог решить проблему так:
[[!pdoResources?
                            &loadModels=`ms2gallery`
                            &parents=`0`
                            &resources=`[[*parent]]`
                            &limit=`0`
                            &tpl=`@INLINE:
                            <a href="/assets/images/resources/[[*parent]]/800x536/[[+file]]" data-fancybox="gallery" class="item fancybox swiper-slide" rel="phototabs" data-caption="[[+name]]">
                                <img src="/assets/images/resources/[[*parent]]/150x130/[[+file]]" alt="[[+name]]" title="[[+name]]">
                            </a>`
                            &leftJoin=`{
                            "File": {
                        			"class":"msResourceFile"
                        			,"alias":"File"
                        			,"on": "File.resource_id = '[[*parent]]' AND File.path = '[[*parent]]/' AND (File.add LIKE '' OR File.add IS NULL OR File.add NOT LIKE '%[[*id]]%')"
                        		}
                            }`
                            &select=`{
                            "File" : "*"
                            }`
                        ]]
Выглядит очень криво на мой взгляд, но лучше ничего не придумал.
Благодарю за подсказку! Иначе дальше бы мучался с ms2gallery
Олег
14 марта 2017, 14:11
0
Благодарю!
Я видел, что &where применяется для ms2Gallery, потому не подумал, что нужно использовать другой сниппет.

Кроме того, заметьте, что условие `add` NOT LIKE '%65%' исключит и записи, у которых будут указаны, например, такие числа: 165, 653, 1065 и пр.

Верно, поставили такую задачу, что некоторые изображения не должны выводиться на определенных страницах. Потому в поле «add» идет перечисление страниц, где не должны показываться эти изображения.

И вообще, так как компонент платный, можете написать в техподдержку на сайте modstore.pro. Думаю, вам помогут составить правильный запрос.
Я боюсь, что достал Василия с подобными вопросами :) Было уже около трех обращений насчет этого компонента.
Олег
08 марта 2017, 15:33
0
pdoPage — просто убрать лишние параметры, поменять название вызываемого сниппета (на первый взгляд должно работать):
[[!pdoPage?
&includeContent=`1`
&limit=`10`
&tpl=`AllArticles`
]]
<div class="row text-center">
 <div class="col-lg-12">
 <ul class="pagination">
[[!+page.nav]]
 </ul>
 </div>
</div>
Если почитать документацию, то можно включить пагинацию через ajax

и как сделать так, чтоб не дублировать код в разных разделах
— Код вызова pdoPage можно вставить в шаблон, тогда он будет вызываться на всех страницах этого шаблона.

Олег
28 февраля 2017, 17:00
0
Подскажите, как открыть окошко автодополнения свойств при вызове сниппета?
Увидел на скриншоте — слюнки потекли, а как открыть не разобрался :(
Олег
14 февраля 2017, 10:54
+1
Для начала нужно определиться, после какого события отсчитывается час — первое добавление в корзину? Последнее? Час после ухода с сайта?
После чего это время писать в сессию пользователя, написать плагин, который при загрузке страницы сверяет это время с настоящим и если прошло больше часа очищает корзину (ну мне это так видится).
Олег
14 февраля 2017, 10:51
0
Сбор экстрасенсов объявляю открытым.
Олег
13 февраля 2017, 16:37
0
Да, в принципе это вполне реально, но новичок вряд ли справится, либо будет делать достаточно долго.
Олег
13 февраля 2017, 15:00
0
На первый взгляд задача более-менее схожа с той, что я закончил только сегодня
Рекомендую к прочтению тык и тык.

Скорее всего натолкнет на нужные мысли.
Олег
12 февраля 2017, 01:48
0
Создать тв categories (список, множественный выбор), для в пункт «возможные значения» вписать:
@SELECT pagetitle, id FROM modx_site_content WHERE parent=10

вместо parent=10 вставить id раздела со статьями, после чего вызывать pdoresources с &parents=`[[*categories]]`
Олег
10 февраля 2017, 00:36
0
Если установлен pdoTools, то можно пользоваться fastField, то есть [[#14.myImage]] или [[#[[+id]].myImage]]

Корзины бывают разные, если магазин на minishop2, то поможет указание &includeTVs=`myImage` при вызове.
Тогда картинка будет доступна с плейсхолдером [[+tv.myImage]]
Олег
09 февраля 2017, 14:26
0
В shopkeeper нет мультикатегорий, а mFilter2 не добавляет их.

Насчет примера с параметром &where — я не разобрался, как это должно имитировать мультикатегории, нужно больше подробностей.
Олег
09 февраля 2017, 14:13
0
В дебаггере все чисто?
Олег
09 февраля 2017, 14:09
0
Да, mFilter2 учитывает мультикатегории из minishop2
Олег
09 февраля 2017, 14:06
0
Можно использовать условия, например: если parent = 0 тогда parent такой, если grandparent(это уже не стандартное поле) =0 тогда parent такой.
Чтобы узнать grandparent можно использовать различные сниппеты, либо феном: {$_modx->resource.parent | resource: 'parent'}

Код для фенома писал навскидку, может прямо в таком виде не сработать.