Всего 125 948 комментариев

Роман
06 июня 2022, 16:43
0
Почему ExtJS не использовали.
Ivan
06 июня 2022, 15:05
0
Так же нужно скопировать mFilter2 и назвать его mFilter2Custom.
В этом файле на 289 строке заменить
if (!empty($sort)) {
    $paginatorProperties['sortby'] = $mSearch2->getSortFields($sort);
    $paginatorProperties['sortdir'] = '';
}
на
if (!empty($sort)) {
    $sorting = $mSearch2->getSortFields($sort);
    if ($sorting == '`Data`.`price` desc') {
        $sorting = 'IF (`Data`.`price` > 0, 1, 0) desc, `Data`.`price` desc';
    } elseif ($sorting == '`Data`.`price` asc') {
        $sorting = 'IF (`Data`.`price` > 0, 1, 0) desc, `Data`.`price` asc';
    }
    $paginatorProperties['sortby'] = $sorting;
    $paginatorProperties['sortdir'] = '';
}
Ivan
06 июня 2022, 14:50
2
0
В общем решение не самое красивое, но рабочее.
1) Копируем файл
/assets/components/msearch2/js/web/default.js
и называем его
/assets/components/msearch2/js/web/custom.js
.
2) В этом файле везде
mse2Config['actionUrl']
заменяем на
'/assets/components/msearch2/actionCustom.php'
3) Копируем файл
/assets/components/msearch2/action.php
и называем его
/assets/components/msearch2/actionCustom.php
4) В html коде сортировки указываем
<a href="#" data-sort="ms|price" data-dir="[[+mse2_sort:is=`ms|price:desc`:then=`desc`]]" data-default="desc" class="sort">По цене <span></span></a>
5) В файле
actionCustom.php
на 76 строчке меняем
$paginatorProperties['sortby'] = !empty($sort)
            ? $mSearch2->getSortFields($sort)
            : '';
на
$sorting = '';
            if (!empty($sort)) {
            $sorting = $mSearch2->getSortFields($sort);
            if ($sorting == '`Data`.`price` desc') {
                $sorting = 'IF (`Data`.`price` > 0, 1, 0) desc, `Data`.`price` desc';
            } elseif ($sorting == '`Data`.`price` asc') {
                $sorting = 'IF (`Data`.`price` > 0, 1, 0) desc, `Data`.`price` asc';
            }
        }
        $paginatorProperties['sortby'] = $sorting;
Радуемся
Артур Шевченко
06 июня 2022, 09:37
0
Я посмотрел на «было» и на «стало» и должен сказать у меня так никогда не было)))
vectorserver
06 июня 2022, 08:22
0
Задача была искать дубли в других контекстах, не зависимо от WEB).
Дмитрий Танцирев
06 июня 2022, 07:23
0
Да, да, сорцы править — не хорошо =)
Тут с вами полностью согласен.

Я кстати написал предупреждение, что изменения затрутся при обновлении.

В репозиторий изменения не отправлял. Думаете стоит?
Иван Бочкарев
06 июня 2022, 05:15
0
Всего один вопрос: вы не отправляли изменения в репозиторий дополнения? Зачем исходники править, которые при обновлении затрутся
Pavel Zarubin
06 июня 2022, 03:07
0
modx.pro/components/19348 я хз насколько он сейчас рабочий но с десяток сайтов я им правил
Дмитрий Танцирев
05 июня 2022, 20:34
0
Просто закомментируйте 4-ю строку.
//SeoSuite.addKeywords();
Miša Bulic
05 июня 2022, 20:31
0
Сделайте версию без этого поля, если сможете.
Дмитрий Танцирев
05 июня 2022, 20:16
0
Согласен. Иногда поисковики даже начинают банить из-за злоупотребления ключевыми словами (когда их слишком много например).

Но, модуль не мой =) Я только лишь поменял внешний вид к более привычному.
Miša Bulic
05 июня 2022, 20:14
0
Спасибо. Но уже Ключевые слова давно пора вообще убрать. Поисковики ими не пользуются, только место занимают.
Михаил
05 июня 2022, 10:24
0
Просто нужно скобки { } в скрипте отделить пробелами
Артур Шевченко
05 июня 2022, 10:08
0
<input type="text" name="size">
Так не работает?
R2m0x94 (Vasily)
05 июня 2022, 02:17
0
Сам спросил, сам ответил: dbtype:varchar, phptype:string, что там такого, а в Ext.form.ComboBox пишешь store: new Ext.data.ArrayStore
R2m0x94 (Vasily)
04 июня 2022, 23:34
0
Как добавить выпадающий список и какой phptype, dbtype должен быть для выпадающего списка, чтобы в профиле пользователя он был, такой как пол или страна?

Попробовал добавить тип modx-combo в профиль пользователя, но не могу понять какой тип указывать, так как он trigger, то phptype вроде бы должен быть twintrigger, пробовал json, так он объект в объекте показывает, нет выпадашки, точнее как добавить Ext, в сам компонент. В какой файл?
Александр
04 июня 2022, 21:11
0
Работу обоих компонентов вы можете проверить на modhost.pro бесплатно в течение 24 часов.
физически нельзя будет пройти на страницу msk.site.ru/catalog/page-one
можно

cityFields больше про изменение цены товара от различного региона, но также можно

Оба компонента под ваши нужды должны подойти. Если регионов не так много, можно сделать через лексиконы. Например, в плейсхолдере [[*region]] хранится код текущего региона (msk, spb), а в лексиконе [[%region_name_[[*region]]]] ([[%region_name_msk]], [[%region_name_spb]]) название конкретного региона и т.д.