Lori

Lori

С нами с 13 октября 2014; Место в рейтинге пользователей: #405
Сергей Шлоков
18 декабря 2023, 17:21
2
+4
Можно так.
Dan
Dan
26 августа 2023, 20:51
3
+3
В принципе можно и button использовать, но тогда нужно указать у нее атрибут value с любым значением. Ибо иначе в post-запросе передается пустой ключ и поэтому submitVar не отрабатывает.
Dan
Dan
26 августа 2023, 19:46
3
+3
Если вы указываете submitVar, то замените button на input
<input class="form-btn" type="submit" name="login-register-btn" value="Создать аккаунт">
Dan
Dan
22 августа 2023, 16:38
2
+1
$opt = $modx->getObject('cgSetting', ['key' => 'my_setting']); //ключ настройки
$opt->set('value', 'my_new_value');
$opt->save();
Артур Шевченко
20 августа 2023, 23:46
1
+2
{$_modx->config.site_url | ereplace: '/\/$/':''}
Dan
Dan
17 августа 2023, 19:29
1
0
Нельзя сделать из коробки, поэтому вам так и ответили, ибо это все таки техподдержка, а не фриланс-биржа, а вообще сделать можно. Я сам такое делал и не на одном проекте. Нужно лишь написать свой метод фильтрации, и конкретно в этом случае ничего сложного. Попробуйте, он все равно ничего не сломает, либо будет работать, либо нет. А когда все таки получится сделать, то поймете, что в принципе несложно. Просто зайдите по ссылке, которую я в 1ом комменте скидывал и делайте все по примеру.
Dan
Dan
16 августа 2023, 21:54
1
0
Вы сможете создать ресурс с таким же алиасом только в том случае, если у вас включены вложенные урлы и копировать вы будете в другого родителя. В противном случае не получится сохранить ресурс с таким же алиасом.
Вообще такие вещи лучше делать через процессор, но процессор resource/dublicate не предусматривает указание нового родителя. А почему вам нужно сохранить алиас?
Dan
Dan
14 августа 2023, 21:16
1
+1
Делай ajax-запрос, обрабатывай его плагином или сниппетом и вставляй результат. Основы работы с ajax можешь посмотреть тут
Dan
Dan
04 августа 2023, 12:49
1
0
Попробуйте через leftJoin и where. Условие с class_key в msProducts не нужно.
[[!msProducts?
   &parents=`4`
   &leftJoin=`{
      "opt": {
         "class": "msProductOption",
         "on": "opt.key = 'volume2' AND opt.product_id = msProduct.id"
      }
   }`
   &where=`["opt.volume2 > 1000"]`
   &tpl=`emkosti`
   &limit=`0`
]]
Dan
Dan
25 июля 2023, 12:40
1
0
Если не хотите использовать ajax, то можно сделать так немного закостылить:
1) Немного правите ваш текущий чанк galAlbumRowWithCoverTpl
[[!Gallery?
    &album=`[[+id]]`
    &toPlaceholder=`photos`
    &thumbTpl=`tpl.gallery.image`
]]
<a href="[[+url:is=``:then=`[[+image]]`:else=`[[+url]]`]]" [[+link_attributes]] class="gallery-preview" data-photos="[[+photos:commaSeparate]]">
    [[+image:notempty=`<img src="[[+image]]" [[+cls:notempty=`class="[[+cls]]"`]] alt="[[+title]]" />`]]
</a>
2) Создаете чанк tpl.gallery.image
[[+image_absolute]],
3) Создаете сниппет commaSeparate
<?php
return rtrim($input, ',');
4) Пишете js-код:
$(document).ready(function() {
   $('.gallery-preview').click(function(e) {
        e.preventDefault();
        let photos = [];

        if ($(this).attr('data-photos') && $(this).attr('data-photos') != '') {
            let list = $(this).attr('data-photos').split(',');
            $.each(list,function(i){
                photos.push({href: list[i]});
            });
        }        
        
        $.fancybox.open(photos);
   });
});