Андрей

Андрей

С нами с 28 февраля 2013; Место в рейтинге пользователей: #140
Андрей
16 мая 2017, 13:51
+1
Как-то так можно:

// id ресурса откуда копировать
$resource_from = $modx->getObject('modResource', 1);

// id ресурса куда копировать
$resource_to = $modx->getObject('modResource', 2);

// получаем значение TV
$tv = $resource_from->getTVValue('tv_migx_name');

// сохраняем значение TV в другой ресурс
$resource_to->setTVValue('tv_migx_name', $tv);
Андрей
12 мая 2017, 18:35
+1
Сниппет можно написать, который будет вырезать телефон или почту из сообщения.

Например в чанке с письмом есть плейсхолдер [[+message]]. Пишем сниппет, что-то типа такого:
$output = preg_replace(/регулярка для телефона или почты/, '', $input);
return $output;

и вызывать в чанке с письмом
[[+message:snippet_name]]

preHook или hook по аналогии можно сделать.
Андрей
05 мая 2017, 09:29
1
+1
mFilter тут ни при чем, вам нужен плагин для jQuery UI, например этот.
Андрей
01 мая 2017, 15:18
0
На fenom, но в синтаксисе modx тоже самое

$_modx->runSnippet('pdoResources', [
  'class' => 'modUserProfile',
  'select' => '{
	"modUserProfile": "*"
  }',
  'sortby' => 'modUserProfile.id',
  'sortdir' => 'ASC',
  'tpl' => '',
  'where' => '{"`modUserProfile`.`extended`:LIKE":"%\"room\":\"56\"%"}'
])

Вместо room ваше поле, 56 — значение
Андрей
01 мая 2017, 14:38
+1
Вместо is попробуйте contains
[[+tv.com_icon:contains=`doroga`:then=`дорога`]]
Андрей
18 апреля 2017, 16:15
0
Попробуйте дополнение phpthumbon.

Пример:
{'phpthumbon' | snippet : [
    'input' => '/userdata/med_1.jpg',
    'options' => 'w=240&h=100&zc=1'
]}

//Результат
/assets/cache_image/userdata/med_1_240x100_6da.jpg
Андрей
16 апреля 2017, 14:52
0
В pdoField если надо вывести TV, то нужно указывать его имя без всяких префиксов, как обычное поле.
Андрей
16 апреля 2017, 10:21
0
В последних версиях плагина, переключатель выводится только на тех страницах которые связаны, что бы выводить на всех — добавьте параметр includeUnlinked=`1` в вызове BabelLinks
Андрей
14 апреля 2017, 17:45
0
Что у вас написано в возможных значениях, когда создавали TV?
Андрей
10 апреля 2017, 11:55
0
Посмотрите документацию. В шаблоне {$_modx->resource.id}, в чанке {$id}
Андрей
10 апреля 2017, 11:53
+1
[[+tv.color:is=`black`:then=`black`:else=`white`]]
Андрей
14 марта 2017, 17:00
0
Тогда получится, что при удалении скидки не будет возвращаться оригинальная цена. Каждый раз плагином для всех товаров сверять и возвращать цену из нового поля что ли.
Андрей
14 марта 2017, 14:00
0
В базу никак нельзя записывать? Или фильтр какой-нибудь написать для mFilter?
Андрей
04 марта 2017, 12:10
+1
По своему большому опыту могу сказать, что чаще всего seo-специалисты уродуют сайты. Работал в одной компании, там любили выравнивать тексты по ширине, просто так нравилось сеошникам и ничего что на всем остальном сайте по другому. Любят еще вмешиваться в дизайн часто, на свой вкус опять же.
Андрей
01 марта 2017, 09:08
0
$option = $modx->getObject('msOption', [
  'id' => 42
]);

print_r($option->toArray());
Андрей
25 февраля 2017, 15:48
0
У вас на скриншоте в поле Содержимое идет вызов сниппета pdoResources, попробуйте добавить восклицательный знак, т.е.
[[pdoResources? ...]]

// заменить на

[[!pdoResources? ...]]

Так же можно попробовать добавить параметр &showHidden
[[!pdoResources? &showHidden=`1`  ...]]
Андрей
25 февраля 2017, 15:32
0
Решение для вывода всех картинок в превью — https://modx.pro/help/11376/#comment-76743
Андрей
25 февраля 2017, 15:30
0
Да msGallery в общем-то тоже самое делает.

Там какие-то проблемы с методом $pdoFetch->setConfig как я понял, но это уже Василию виднее.
Андрей
25 февраля 2017, 15:25
0
Вместо
echo $r1['text']

лучше создать переменную $output и выводить потом ее
foreach ($r as $r1) {
    $output .= $r1['text'];
}

//и в конце сниппета
return $output
Андрей
25 февраля 2017, 15:07
0
Можно сниппетом вывести

$pdo = $modx->getService('pdoFetch');

if (!$tpl) {
  $tpl = '@INLINE
    {foreach $files as $file}
      <img src="{$file.url}" alt="{$file.name}">
    {/foreach}
  ';
}

if (!$id) {
  $id = $modx->resource->id;
}

if (!$includeThumbs) {
  $includeThumbs = '120x90';
}

if (!$limit) {
  $limit = 0;
}

$output = '';

$rows = $pdo->getCollection('msProductFile', [
    'product_id' => $id,
    'path:LIKE' => '%'.$includeThumbs.'%',
    'active' => 1
  ],
  
  [ 
    'select' => [
      'msProductFile' => '*'
    ],
    
    'limit' => $limit
  ]
);

if (!empty($rows)) {
  $output = $pdo->getChunk($tpl, [
    'files' => $rows
  ]);
  
  return $output;
}

Вызов
[[SnippetName?
    &id=`[[+id]]`
   //&includeThumbs=`120x90`
   //&tpl=`имя_чанка`
   //&limit=`0`
]]