Вопросы

Как поменять значение в properties всех ресурсов из console?

как при помощи консоли console поменять значение в properties у всех ресурсов из папки
кроме прочих есть такое свойство
"hitspage":{"hitts":555}}
его хотелось бы поменять на другие цифры, например у всех где значение больше 500 поставить 30

до этого поменял значение в tv hitpage а значения hitts осталось и изза этого есть нестыковки :)

$resources = $modx->getCollection('modResource', array('parent' => 1));
foreach ($resources as $resource) {
  if ($resource->getTVValue('hitspage') => 500) {
    $resource->setTVValue('hitspage',30);
    $resource->save();
  }
}
если вручную ставишь значение в админке и сейвишь то hitts перезаписывается, а через консоль этого не происходит
подскажите кто понимает что тут добавить может можно какую то синхронизацию либо напрямую значение данного свойства заменить

в бд это выглядит так в колонке properties
{"tvc":{"hitspage":"18241"},"hitspage":{"hitts":18242}}
Евгений
30 июля 2020, 21:49
modx.pro
847
0

как передать в tv field значение userid

пример

есть регистрация на сайте

resource reg

[[!Register?
    &postHooks=`customadduser`
    &submitVar=`registerbtn`
    &activationResourceId=`24`
    &activationEmailTpl=`myActivationEmailTpl`
    &activationEmailSubject=`Спасибо за регистрацию!`
    &submittedResourceId=`25`
    &usergroups=`Members`
    &validate=`nospam:blank,
  username:required:minLength=^6^,
  password:required:minLength=^6^,
  password_confirm:password_confirm=^password^,
  email:required:email`
    &placeholderPrefix=`reg.`
    &authenticateContexts`web`
]]


snippet customadduser

<?php
$resource = $modx->newObject('modResource');
$resource->set('parent', 32);
$resource->set('pagetitle', $hook->getValue('username') );
$resource->set('template', 25);  
$resource->set('content', '');
$resource->set('isfolder', 0);              
$resource->set('published', 1);            
$resource->set('createdon', time());       
$resource->set('cacheable', 0);
$resource->set('searchable', 1);
$resource->set('show_in_tree', 1);

// подскажите
// как передать в tv field значение userid в созданный изначально tv field

// незнаю уже какой день но немогу сделать :(

$resource->save();

спасибо заранее если кто подскажет как это делается
Кирилл
30 июля 2020, 18:08
modx.pro
1 091
0

Как с помощью pdoPage c лимитом в 10 элементов раздать выводимым ресурсам классы с нумерацией от 1 до 10

Вероятно, можно как-то использовать idx, но не получается сообразить как уже на последующих страницах выводить элементы с классом от первого номера и далее. Классы нужны для формирования сетки гридов. Буду очень признателен, если подскажите вариант решения… Или лучше смотреть в сторону использования nth-child?
Роман
30 июля 2020, 16:11
modx.pro
916
0

Доп опции для заказа.

Доброе время суток, подскажите пожалуйста, есть ли какое готовое решение чтобы добавить опцию к самому заказу(не товару) в момент его оформления? Ну или в каком направлении копать?
прим.
Подъем на этаж +ххх р.
Срочность +ххх р.
После доставки команда грузчиков будет петь «Прощание славянки» +ххх р.
Илья
30 июля 2020, 11:20
modx.pro
738
0

mSearch2 13 сек. поиск по каталогу

Подскажите куда копать?
Очень долго длится поиск по каталогу, сделал замер прямо в сниппете mSearch2:

// Merge all properties and run!
$pdoFetch->setConfig(array_merge($default, $scriptProperties), false);
$pdoFetch->addTime('Query parameters are prepared.');
$rows = $pdoFetch->run();
echo "<!--";
print_r($pdoFetch->getTime());
echo "-->";
Получается такая картина:
pdo-log.txt
Евгений
30 июля 2020, 01:16
modx.pro
648
0

msProducts - как получить массив с данными для дальнейшей выборки?

Здравствуйте!
Мне нужно сделать карусель товаров, которая имеет два блока: т.е. в верстке сначала выводится блок с картинками, а потом еще один блок с описаниями и характеристиками.
Два раза запускать [[!msProducts]] не хочется, поэтому решил сделать через fenom:
{set $items = '!msProducts' | snippet : [
    'parents' => 2,
   ....
]}

{foreach $items as $item}
    ...
{/foreach}
Но так, почему-то не работает — т.е. foreach не понимает массив $items… что делать?
Игорь
28 июля 2020, 18:25
modx.pro
2 007
0

Дополнительная защита учетной записи администратора

Привет, есть ли решения чтобы защитить учетную запись администратора, например: двухфакторной авторизацией (TOTP, USB-ключи), клиентские SSL сертификаты и т.д.?

Есть пакеты типа: GoogleAuthenticatorX, GAuthx, но как я понял это для других задач — пользовательская двухфакторная авторизация.
Сергей
28 июля 2020, 17:41
modx.pro
1 274
0

Вывод радиокнопок migx

Как правильно записать условие для «inputTVtype»:«listbox» в migx? Если значение == 1 — выводится контент, если значение не равно 1 не выводиться контент. Дайте пример работающего условия. Дело в том что у меня выводятся значение 1 или 2, а условие не работает.
Владислав
28 июля 2020, 17:27
modx.pro
527
0

Дублирование товаров Minishop вместе с галереей

Приветствую.
Суть проблемы.
Есть категория товаров ~ 200 штук, у каждого товара 3-5 изображений.
Потребовалось сделать 6 дубликатов этой категории, но с другими названиями.

Товары minishop понятное дело, скопировались без галереи.
Если способ копировать с картинками? Категорию с товарами целиком?
Denis
28 июля 2020, 16:46
modx.pro
664
0

Не отображаются ссылки на почте после заказа в минишопе

Всем привет. Никто не сталкивался с ситуацией? что после заказа
1. на почте не видно картинки
2. Ссылка на товар в письме не работает

Если в чанке прописать статически адрес сайта, то нормально отображается
Така конструкиця работать не хочет
<img src="{$site_url}{$product.image}">
Такая вообще на mail (в смысле на себя же в почте) ссылается
[[++site_url]]


Какая-то проблема со ссылками

Изменил link_tag_scheme на full и поставил в письме
[[++site_url]] 
[[!++site_url]] 
{$site_url}
В итоге в письме получаю
/ 
/
Modx 2.7.3 PHP 7.3 Все пакеты обновлены

Ладно бы в первый раз делал магазин, никогда такого не встречал
Сергей
28 июля 2020, 11:55
modx.pro
883
0