Вопросы

Вывод и оформление каждого выбранного варианта TV-поля в html-теги

Здравствуйте. Возможно, это какой то лёгкий вопрос, но в интернете я не нашёл на него ответа помимо php-кода разных сниппетов. А может я плохо читаю документацию. В общем, есть тв-поле, имеющее параметр ввода Список, множественный выбор. Есть раздел тикетов с ними. В каждом тикете находится это тв-поле, где выбираются нужные варианты и выводятся через код:

<div class="about">
<p>здесь могла бы быть ваша реклама</p>
<hr>
<h3>Наша команда</h3>
[[!pdoPage?
	&parents=`24`
	&tpl=`team-item`
	&sortdir=`ASC`
	&includeTVs=`team-image, team-speciality`
]]
</div>
al1ve
08 апреля 2019, 17:30
modx.pro
950
0

При правках ресурса он снимается с публикации

При любых правках ресурса он снимается с публикации. Помогает только руками в базе поменять published на 1. Кажется появилось после обновления MODX до последней версии. Кто-нибудь сталкивался с подобным?
Михаил
08 апреля 2019, 16:47
modx.pro
1 002
0

Значение по умолчанию checkbox

Добрый день. Есть checkbox, выбирается цвет. В поле возможные значения я написал @SELECT `pagetitle`,`id` FROM modx_site_content WHERE parent = 172 ORDER BY `pagetitle`. Все выводит корректно и выбирается. А что вписать в поле значения по умолчанию. Ну чтобы при создании товара допустим 4 цвета были отмечены по умолчанию, если пользователь не выбрал другие значения?
Вадим
08 апреля 2019, 11:54
modx.pro
871
0

AjaxForm не отправляет письма

Oleg
07 апреля 2019, 20:54
modx.pro
2 471
0

getResourcess внутри getResourcess

И так дано:
Структура сайта
  • Главная
  • Авто
    • Японские
      • Марка-1
      • Марка-2

      • Марка-3
      • Марка-4

Юрий
07 апреля 2019, 17:27
modx.pro
801
-2

Запрос цены в Telegram-сообщения (modTelegram)

Здравствуйте, подскажите пожалуйста.
Как можно реализовать такую функцию?

Есть категория товаров, у которых не указывается цена. Как можно сделать, чтоб при нажатии на кнопку Запросить цену, выводилось модальное окно, где нужно гостю ввести номер имя и e-mail, нажать на кнопку Запросить и запрос шел в чат Telegram-сообщения на самом сайте вместе с его данными и Данными о товаре?
Абакар
07 апреля 2019, 16:30
modx.pro
1 032
0

[Решено] Как вывести в mfilter

Как в фильтре mfilter вывести из поля ms|platforms с типом список с автодополнением где данные в виде [«val1»,«val2»,«val3»]?

Нужно в фильтре только по одному типу указать. И чтобы искал в поле только по одному значению, а не полностью всю простыню выводил?

Сейчас выглядит фильтр следующим образом:

{'!mFilter2' | snippet : [
        'parents' => $_modx->resource.id,
        'limit' => 12,
        'class' => 'msProduct',
        'element' => 'msProducts',
        'tpl' => '@FILE components/msearch2/mfilter/row.tpl',
        'tplOuter' => '@FILE components/msearch2/mfilter/outer.tpl',
        'tplPageWrapper' => '@INLINE <ul class="pagination justify-content-md-end mt-2">{$pages}</ul>',
        'tplPage' => '@INLINE <li class="page-item"><a class="page-link" href="{$href}">{$pageNo}</a></li>',
        'tplPageActive' => '@INLINE <li class="page-item active"><a class="page-link" href="{$href}">{$pageNo}</a></li>',
        'tplPageSkip' => '@INLINE <li class="page-item gap"><span class="page-link">...</span></li>',
        'tplPageFirst' => '@INLINE <li class="page-item"><a class="page-link" href="{$href}">[[%pdopage_first]]</a></li>',
        'tplPageLast' => '@INLINE <li class="page-item"><a class="page-link" href="{$href}">[[%pdopage_last]]</a></li>',
        'tplPagePrev' => '@INLINE <li class="page-item"><a class="page-link" href="{$href}">«</a></li>',
        'tplPageNext' => '@INLINE <li class="page-item"><a class="page-link" href="{$href}">»</a></li>',
        'tplPageFirstEmpty' => '@INLINE <li class="page-item disabled"><a class="page-link" href="{$href}">[[%pdopage_first]]</a></li>',
        'tplPageLastEmpty' => '@INLINE <li class="page-item disabled"><a class="page-link" href="{$href}">[[%pdopage_last]]</a></li>',
        'tplPagePrevEmpty' => '@INLINE <li class="page-item disabled"><a class="page-link" href="{$href}">«</a></li>',
        'tplPageNextEmpty' => '@INLINE <li class="page-item disabled"><a class="page-link" href="{$href}">»</a></li>',
        'where' => '{"class_key":"msProduct"}',
        'suggestions' => 'true',
        'filters' => '
                        ms|price:number,
                        ms|platforms:checkbox
                    ',
        'sort' => '
                        ms|price:desc
                    ',
        'tplFilter.outer.ms|price' => '@FILE components/msearch2/mfilter/filters/slider-outer.tpl',
        'tplFilter.row.ms|price' => '@FILE components/msearch2/mfilter/filters/slider-row.tpl'
    ]}
SEQUEL.ONE
07 апреля 2019, 15:10
modx.pro
1 896
0

Редирект

есть два контекста, в web лежит основной каталог, в catalog лежит старые товары(вынес для удобства администрирования)
если в конце адресной строки добавить слеш (site.ru/blog/) то кидает не на странице например site.ru/blog а на старый каталог(то есть страницу другого контекста)
есть такой плагин

<?php
if ($modx->event->name == 'OnPageNotFound') { 
    
    $alias = $modx->context->getOption('request_param_alias', 'q');
    if (!isset($_REQUEST[$alias])) {return false;}
    $request = $_REQUEST[$alias];
    $tmp = explode('/', $request);
    
    $req = 'product';
    
    if (($tmp[0] == $req && count($tmp) == 1) || (count($tmp) == 2 && empty($tmp[1])) ) {
        
		$modx->sendForward('2068');
		return;
		
    } else if ($tmp[0] == $req && count($tmp) >= 2 && !empty($tmp[1])) {
        
        $obj = $modx->getObject('modResource', array('uri' => $request));
        $modx->sendForward($obj->get('id'));
        return;
        
    } else if ($tmp[0] != $req && $tmp[0] != 'assets') {
        
        $modx->switchContext('web');
        return;
    }

}
Aslero
06 апреля 2019, 23:33
modx.pro
561
0

Проблема с extends в fenom

Всем привет. Это мой первый опыт сборки сайта на modx. Решил сразу использовать fenom, так как есть опыт работы с шаблонизаторами.
Суть вопроса/проблемы:
Мои действия по шагам:
1.Установил голый modx 2.7.0
2. Установил PDOtools, разрешил parser в настройках.
3. Через include подключил внешний шаблон
index.tpl c таким содержанием:
{extends 'template:base.tpl'}

{block 'content'}
    <h2>content</h2>
{/block}
4. И соответственно шаблон base.tpl:
<!doctype html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport"
          content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>Document</title>
</head>
<body>
<header>
    <h2>header</h2>
</header>

{block 'content'}

{/block}

<footer>
    <h2>footer</h2>
</footer>

</body>
</html>
Проблема в том что, открывается белый экран, а вот если удалить из index.tpl строчку {extends 'template:base.tpl'}, то содержимое отображается. Что я делаю не так?
Евгений
06 апреля 2019, 19:44
modx.pro
1 952
0

Возможно ли заставить работать плейсхолдеры в зарегистрированном коде?

При регистрации кода при помощи:
cssToHead — регистрация CSS кода в шапке страницы
htmlToHead — регистрация произвольного HTML в шапке страницы
htmlToBottom — регистрация произвольного HTML в подвале страницы
jsToHead — регистрация javascript файла в шапке страницы. Если передать параметром true, то можно регистрировать сразу код.
jsToBottom — регистрация javascript в подвале страницы. Если передать параметром true, то можно регистрировать сразу код.
Или
$_modx->regClientCSS
$_modx->regClientScript
$_modx->regClientStartupHTMLBlock
$_modx->regClientHTMLBlock
плейсхолдеры ни в MODX-вварианте — [[+placeholder]] или [[*placeholder]], ни на Fenom — {$placeholder} НЕ РАБОТАЮТ. В исходном коде и на странице отображаются в неизменном виде.

Можно ли заставить работать плейсхолдеры в зарегистрированном коде?
Дмитрий
06 апреля 2019, 15:11
modx.pro
1
1 984
0