Вася

Вася

Был в сети 12 декабря 2022, 19:54
Заказы не принимаю
Спасибо, Василий.
Еще правда вопрос возник, почему вот так не работает?

<?
$q = $modx->newQuery('modResource', array('template' => 6));
$q->innerJoin('modTemplateVarResource', 'mTV', 'mTV.contentid = modResource.id');
$q->where(array('mTV.tmplvarid' => 2,  'mTV.value' => NULL));
$res = $modx->getCollection('modResource', $q);
foreach ($res as $v) {
echo $v->get('id')." ".$v->get('pagetitle');
echo '
';
}
Если я правильно понял задачу
<?php
// onDocFormSave
$q = $modx->newQuery('modResource');
$q->where(array(
	'parent' => 409
)); // можно  задать какое то условие например родителя где создаются ресурсы  с нужными tv
$q->sortby('id', 'DESC');
$q->limit(1);
$res = $modx->getCollection('modResource', $q);

foreach($res as $v)
	{
	$lastIdClient = $v->getTvValue('id_client'); // получаем значение TV  у последнего ресурса,  для примера я назвал его "id_client"  у вас должен быть свой
	}

$nextIdClient = $lastIdClient + 1; // прибавляем один и дальше делаем, что хотим, например сохраняем это значение у нового ресурса в нужном нам TV
Наехал, на своего хостер провайдера.

Он прислал следующее

У вас в папке ./assets вашего сайта находится .htaccess файл следующего содержания:
"<Files *.php>
Order Deny,Allow
Deny from all

Он блокирует чтение php-файлов в этой папке абсолютно для всех.
Насколько мы понимаем, это было сделано в целях безопасности, однако это ломает логику вашего сайта. Мы закомментировали данные строки и сайт заработал нормально. Проверьте, пожалуйста."

Я этот файл правил и кинул как думал в папку core — перепутал, блин. Наверное пора в отпуск )

Благодарю.
Если кому то понадобится, то примерно так

$parent = $modx->resource->get('id');
$childs = $modx->getChildIds($parent);
$q = $modx->newQuery('modResource');

$q->innerJoin('modTemplateVarResource','mTV','mTV.contentid = modResource.id');
$q->where(array('id:IN' => $childs,'mTV.tmplvarid'=>22));
$q->groupby('mTV.value');
$q->limit(1000);

$res = $modx->getCollection('modResource', $q);
foreach ($res as $v) {
        echo $v->getTVValue('manufacturer').'
';
}
Ну я нащупал корень зла, спасибо!
В общем у меня на сайте системная настройка если url не существует то перенаправляет на определенную страницу. И так как таких урлов нет типа: «query=то что я ищу» то и кидает на эту страницу установил на нее вызов все сработало ). Сейчас подумаю как избавится от этого).
А комментарии не проходят через фильтр Jevix? Если проходят то там есть метод который добавляет
вот он
// 8. Устанавливаем атрибуты тегов, которые будут добавляться автоматически
$this->cfgSetTagParamsAutoAdd('a', array('rel' => 'nofollow'));