Роман

Роман

С нами с 01 июня 2017; Место в рейтинге пользователей: #605

Набор правил, настройка форм в админке для родителей

Здравствуйте!
Подскажите пожалуйста, никак не могу разобраться.
Создаю 2 набора правил для одного и того же шаблона.
Для родительского элемента (оставляю ТВ-поля)
  • Ограничивающее поле: id
  • Ограничивающее значение: 2
Для остальных элементов (убираю ТВ-поля)
  • Ограничивающее поле: [empty] (тут я не могу указать parent со значением 2, т/к там вложенность есть на несколько уровней)
  • Ограничивающее значение: [empty]
И в этом случае у меня получается, что везде поля не отображаются.
Пробовал разные комбинации, либо у всех есть поля, либо у всех их нет :(

Что я хочу, чтобы у родителя были определенные поля, а у его потомков (всех уровней) эти поля в админке не отображались, как такое сделать подскажите пожалуйста?
Меня шаблон у всех потомков не хочу, не удобно.
Роман
10 июля 2025, 09:23
modx.pro
105
0

Fenom вывод ТВ множественный выбор, слипается, не разделяется

Здравствуйте! Столкнулся с такой проблемой.
Создал ТВ-поле, в котором можно множественный выбор сделать из товаров
Возможные значения сделал так:
@EVAL return $modx->runSnippet('msProducts',array(
'parents'=>2,
'tpl'=>'@INLINE [[+pagetitle]]==[[+id]]',
'outputSeparator'=>'||','tplWrapper'=>'@INLINE -==-||[[+output]]'));
В админке все хорошо, выбирается. Но когда хочу вывести на странице:
{set $list = $_modx->resource.list__items|split:"||"}
{foreach $list as $l}
  {$l}
{/foreach}
И все выбранные id в админке, которые должны быть 31||32 (условно), выводятся как 3132, т/е без разделения.
Из-за чего не могу вывести эти товары на странице, т/к получается что ищется товар с 3132.

Подскажите пожалуйста что делаю не так, в чем проблема? Куда съедаюсят ||?
Роман
31 мая 2025, 14:03
modx.pro
406
0

pdoPage передать параметр страницы id

Здравствуйте!
Подскажите пожалуйста как можно передать и вытащить в шаблоне pdoPage параметр страницы.
Например id, template откуда был вызван pdoPage?
Что-то вроде такого, но не получается:
[[!pdoPage?
    &element=`msProducts`
    &parents=`[[*id]]`
    &tpl=`@FILE template/chunk/cat/item.tpl`
    &limit=`12`
    &docid=`[[*id]]`
]]
и в шаблоне получить этот docid
Роман
01 мая 2025, 12:23
modx.pro
296
0

Babel перелинковка уже скопированных страниц контекста

Здравствуйте!
Появилась такая проблема. Настроил Babel под разные города.
Сначала была только Москва/Питер, перелинковку/перевод страниц сделал, все отлично.
Потом начал добавлять другие города и возникла проблема.
Копирую контекст с перелинкованного города Москва (Питер — основной, Москва — созданный и перелинкованный с основным), вроде все ок, но нет перелинковки с Питером.
Вручную каждую тыкать и задавать кому-что принадлежит — очень напряжно, тем более уже не 1-2 города появилось, а много.

Подскажите пожалуйста, может есть скрипт который по одной перелинковке свяжет все остальные города?

Спасибо, надеюсь понятно объяснил.
Роман
20 февраля 2025, 11:52
modx.pro
318
0

Yandex Feed YML, ошибка Premature end of file

Всех приветствую, прошу помощи в вопросе.
Создаю YML файл для Яндекса, делаю по инструкции — web-revenue.ru/modx-revo/yml-dlya-yandeks-marketa

Все отлично отображается, но при валидации в Яндексе выдает
Premature end of file.
Строка: -1, Позиция: -1
Что может быть? В какую сторону вообще копать?
Читал смотрел, многие на кодировку говорят, но у меня UTF-8

Шаблон работает через файлы:
{insert 'file:template/yafeed.tpl'}
UPD
Сам шаблон yafeed.tpl
Роман
24 января 2025, 12:02
modx.pro
1
375
0

BabelTranslation, добавление нового языка/города

Всех приветствую! Прошу помощи с такой проблемой.
Была создана версия для города «Москва», все было настроено, все работает.
Необходимо было создать новый город, скопировал контекст, прописал все, добавил в Babel настройках что нужно. Но перестал работать BabelTranslation именно для нового контекста.

{set $idHome = 'BabelTranslation' | snippet : ['resourceId'=>1,'contextKey'=>$_modx->resource.context_key,'showUnpublished'=>1]
}
{$tel   = $modx->getObject('modResource',$idHome)->getTVValue('tel')}


И выдает ошибку, потому что он для нового города не определяет ID, хотя ресурсы связаны.

Подскажите пожалуйста в чем может быть проблема? Спасибо!
Роман
05 ноября 2024, 15:03
modx.pro
1 089
0

MODX разработки на регулярные заказы

Здравствуйте!
Ищу толкового MODX разработчика, если таковой имеется напишите пожалуйста в ТГ @rvlasenkov

Кого ищу:
  • умеете внести изменение в события для формирования заказа
  • синхронизация с 1С для вас не проблема
  • взаимодействие по API, если готовых решений нет
  • работаете с Fenom и все распределяете по файлам
Во многом сам неплохо знаю MODX и смогу помогать во многих вопросах.
В первую очередь нужен адекватный, стремящийся к знаниям программист, усидчивый и никуда не пропадающий.

В свою очередь предлагаю хорошие и интересные проекты с которыми ты будешь расти.
Достойную оплату


Жду тебя — напиши в ТГ @rvlasenkov
Роман
10 сентября 2024, 15:22
modx.pro
354
0

AjaxForm hooks, последовательность вызова email

Всех приветствую!
Столкнулся с такой проблемой. В зависимости от расположения хука email, он либо срабатывает либо нет,
1. 'hooks' => 'FormItSaveForm,email,amocrm,unisender', // работает
2. 'hooks' => 'FormItSaveForm,amocrm,unisender,email', // НЕ работает
3. 'hooks' => 'FormItSaveForm,amocrm,email,unisender', // НЕ работает
т/е почему-то в случаях 2,3 отправка писем не происходит, почему так?
И да, я проверял, отправка в АМО идет, т/е если предположить, что после не срабатывания одного хука другой тоже не работает, этот вариант отпадает.
И второй вопрос, разве хуки не НЕЗАВИСИМЫ? Т/е если один не срабатывает — остальные за ним тоже?

Спасибо!
Роман
20 декабря 2023, 09:05
modx.pro
1
775
0

msPromocode2 отмена промокода через JS

Здравствуйте!
Подскажите пожалуйста, может кто сталкивался.
Необходимо отменять Промокод если используется определенный способ оплаты.
Думаю использовать JS для этого.
При проверке во время загрузки, какой выбран тип оплаты, и при смене типа оплаты.
Сейчас пробую сделать так:
var paymentIdCtrl = parseInt($('#payments').find('input[name=payment]:checked').val());
var ms2BtnCancel  = $('.js-mspc2-form.is-active .js-mspc2-cancel');
var ms2BtnSubmit  = $('.js-mspc2-form.is-active .js-mspc2-submit');

if( paymentIdCtrl === 6) {
    ms2BtnCancel.trigger('click');
} else {
    ms2BtnSubmit.trigger('click');
}
Но тут иногда срабатывает иногда нет, особенно когда применяешь промокод, потом меняешь тип оплаты, перезагружаешь страницу и то учитывает то не учитывает промокод.

Использую trigger т/к не могу найти в документации msPromocode2 методы JS для работы с промокодами (описани только события).

Может кто сталкивался? Буду очень благодарен за помощь.
Спасибо!
Роман
01 декабря 2023, 11:07
modx.pro
478
0

pdoResource фильтрация по TV migx c вложенным TV

Здравствуйте! Столкнулся с такой проблемой.
У меня есть ТВ-параметр blogTagsValue, MIGX:
[{
"caption":"", "fields":[
{"field":"tag", "caption":"Тэги", "inputTV":"blogType"}
]
}]


Т/е в нем вложен еще один ТВ-параметр blogType, который является списком.
Так вот, осуществляя фильтрацию по этим тегам я вывожу статьи, например:
{'!pdoPage' | snippet : [
	/* пропустим ненужные параметры */
        'limit' => 3,
	'includeTVs' => 'HitsPage, blogCardImage, blogTagsValue',
	'processTVs' => 1,
	'tvPrefix' => '',
	'where' => '{ "blogTagsValue:LIKE":"%США%" }' 
        /* или через 'filter' => 'blogTagsValue==%США%' */
]}
И у меня выводятся не все статьи с данным тегом. Я бы понимал если бы вообще не выводилось, но почему не все?
Роман
02 ноября 2023, 11:05
modx.pro
1
886
0