Вопросы

после обновления modx 2.7.0 не работают ms2Gallery, pdotools

Maxim
12 декабря 2018, 17:03
modx.pro
2 415
0

Скрыть прошедшие мероприятия в [[mFilter2]]

Есть tv с датой:

При выводе мероприятий через [[mFilter2]], нужно скрывать посты, которые прошли.

Подскажите пожалуйста, как можно реализовать.
Илья Раевский
12 декабря 2018, 14:01
modx.pro
908
0

Как работает кнопка "доступен для поиска" ?

Всем здравствуйте.
Помоги разобраться: как modx закрывает доступ ресурса для поиска, если убрать галочку «Доступен для поиска»?
2018-12-12-12-48-24
Убираю — сохраняю — смотрю теги head, но в HTML-коде ничего не меняется:
<meta name="robots" content="index, follow"/>
как был, так и остался…
brioni
12 декабря 2018, 13:54
modx.pro
2 516
0

Вставить блок в результаты mfilter, всё ещё очень нужна помощь.

Доброго времени суток, коллеги.

Прошу подсказать — мне надо в результаты mfilter вставить блок с чанком. Всего выводится 12 результатов, мне надо вставить после 6, т.е. разбить результаты пополам блоком с чанком.

Уверен на феноме(на нём и сделан сайт) есть решение, но сходу в голову не приходит, может кто уже сталкивался с такой задачей…
Илья
12 декабря 2018, 12:13
modx.pro
1 061
0

msProducts tv where Unexpected token

Доброго времени суток!

Имеется tv-поле «sale» в формате checkbox

[[!msProducts?
      &depth=`10`
      &tpl=`ms_product_list`
      &includeTVs=`rating,sale`
      &where = `{"sale:=":"Да"}`
      &limit=`300`      
]]
В логе вот это:
Unexpected token ':' in c077703ec63fb69684311649aac1f939 line 251, near '{«sale:=»:' < — there

С чем это может быть связано?

С уважением.
Андрей Иванов
12 декабря 2018, 11:39
modx.pro
1 120
0

Почему не срабатывает модификатор?

Доброго времени суток!

В коде:
&tplInnerRow=`@INLINE <li><a class="[[+id:isequalto=`95`:then=`action`:else=`[[+id]]`]]" href="[[+link]]">[[+menutitle]]</a></li>`
Вот эта часть:
class="[[+id:isequalto=`95`:then=`action`:else=`[[+id]]`]]"
выводит class=«95»

Никто не подскажет, почему не срабатывает условие?
С уважением.

PS Я пробовал и с другими похожими модификаторами, та же история.
Андрей Иванов
12 декабря 2018, 09:44
modx.pro
964
0

Пользовательский код в безопасный php?

Добрый день! Нужно чтоб пользователи могли ввести в базу функцию времени изготовления деталей, которая затем будет инклюдится при расчетах занятости станков и специалистов. Функция может содержать как и простые формулы типа время = площадь_детали/константу, так и сложные функции с if, switch, foreach, sin и т.д. Желательно сделать так чтобы из этих функции нельзя было прочитать из базы записать в базу, прочитать удалить файлы и т.д.
Есть какие-нибудь готовые решения этого вопроса? Или как сделать решение?
Александр Туниеков
12 декабря 2018, 08:21
modx.pro
785
0

Проблема с Revo MODx 2.7.0 + Babel

Добрый вечер. Во всех проектах на MODx для создания локализаций использовал пакет Babel.
Для вывода статических слов/строк по сайту использовал структуру:

[[%name? &topic=translate &namespace=babel]]

где «name» — ключ в файле с переводами (core/components/babel/lexicon/ru/translate.inc.php — для контекста ru), пример строки в файле:

$_lang['name'] = 'Имя';

Проблем в работе не возникало.
Но в последней версии Revo MODx 2.7.0, сразу при установке Babel была выведена ошибка:

modAction support is deprecated since version 2.3.0…

И в работе, при обращении к пространству имён babel "&namespace=babel", страница на которой собственно обращение и было, просто не формируется, показывая мне белый экран без каких либо ошибок.

Может кто посоветует что-то по этому поводу?
Спасибо.

upd.: Проблема решена, все было слишком просто. Один из файлов translate.inc.php, был в кодировке отличающейся от остальных, после установки ему правильной кодировки проблема исчезла.
Евгений
11 декабря 2018, 21:58
modx.pro
1 569
0

вывод всех опций из категории

Добрый день!

Написал снипет, который должен выбирать все опции из категории. Он запрос делает правильный, но почему то результирующий массив пуст. Хотя если этот же запрос выполнить в phpmyadmin то все нормально выводится

<?php
$q = $modx->newQuery('msOption');
$q->leftJoin('msCategoryOption', 'msCategoryOption', 'msCategoryOption.option_id=msOption.id');
$q->select(array(
    $this->modx->getSelectColumns('msOption', 'msOption'),
    $this->modx->getSelectColumns('msCategoryOption', 'msCategoryOption', '', array('id', 'option_id'),
        true),
));

$q->where(array(
            'msCategoryOption.category_id' => 9,
        ));
        
$q->prepare();
$q->stmt->execute();
$res = $q->stmt->fetchAll(PDO::FETCH_ASSOC);
echo $q->toSQL();


Запрос в итоге —
SELECT `msOption`.`id`, `msOption`.`key`, `msOption`.`caption`, `msOption`.`description`, `msOption`.`measure_unit`, `msOption`.`category`, `msOption`.`type`, `msOption`.`properties`, `msCategoryOption`.`category_id`, `msCategoryOption`.`rank`, `msCategoryOption`.`active`, `msCategoryOption`.`required`, `msCategoryOption`.`value` FROM `modx_ms2_options` AS `msOption` LEFT JOIN `modx_ms2_category_options` `msCategoryOption` ON msCategoryOption.option_id=msOption.id WHERE `msCategoryOption`.`category_id` = '9'
если в phpmyadmin —

Но если сделать print_r($res) — ПУСТО!

Подскажите пожалуйста — в чем ошибся?

Еще выяснилось, что любой запрос к msOption выводит пустой результат, даже такой —
$q = $modx->newQuery('msOption', array('id:>' => 0));
$q->prepare();
$q->stmt->execute();
echo $q->toSQL();
$res = $q->stmt->fetchAll(PDO::FETCH_ASSOC);
foreach ($res as $v) {
	echo $v['key'];
}
результат —

Но прямой запрос — работает!!!
$sql = "SELECT op.*, catop.* FROM `modx_ms2_options` as op LEFT JOIN `modx_ms2_category_options` as catop on op.id = catop.option_id where catop.category_id = 9";
$q = $modx->prepare($sql);
$q->execute();
$res = $q->fetchAll(PDO::FETCH_ASSOC);

foreach ($res as $v) {
	echo $v['key'] . ' | ';
}
Евгений
11 декабря 2018, 19:48
modx.pro
1 219
0

Расшифровка json для вывода числа посетителей из Яндекс.Метрика API

Здравствуйте! Прошу заранее прощения, мягко говоря не профи в программировании.
Spirit_Ninja
11 декабря 2018, 18:51
modx.pro
1
1 531
-1