так они выводятся:
{set $news}
{'!pdoResources' | snippet : [
'parents' => 3,
'loadModels' => 'tagger',
'limit' => 4,
'resources' => '-' ~ $_modx->resource.id,
'groupby' => 'id',
'where' => [
'TaggerTagResources.tag:IN' => 'getTagIDs' | snippet
],
'leftJoin' => [
'TaggerTagResources' => [
"class" => "TaggerTagResource",
"on" => "modResource.id = TaggerTagResources.resource"
]
],
'select' => [
'modResource' => '*',
'TaggerTagResources' => 'COUNT(TaggerTagResources.resource) as weight'
],
'sortby' => 'weight',
'sortdir' => 'DESC',
'tpl' => 'articlesRelatedTpl'
'includeTVs' => 'imageArticle'
]}
{/set}
{if 'pagetitle' in keys $news}
<h4>Похожие новости:</h4>
<div class="related-posts row posts-md col-mb-30">
{$news}
</div>
{/if}
Подумал что проверку на присутствие данных надо делать именно так, через in потому что просто проверка на пустоту {if $news != ''}почему-то не прокатывает, блок выводится в любом случае, чисто заголовок, без контента. Видимо там не совсем пусто что ли...
Что не так? Если я правильно понимаю, на выходе мы имеем массив, в нем проверяем присутствие ключа pagetitle. Но так не прокатывает, блок не выводится. @Advanc8d сенсей? :)
Это ты фигню какую то делаешь)
Я так и думал 😂
делайте {set $varka = 'pdoPage' |snippet : []} и потом проверяйте. потому что {set $var} {/set} попадают и пробелы...
{if $news != ''}
Надо же, какие нюансы. {set $news = '!pdoResources' | snippet : [ 'parents' => 3, 'loadModels' => 'tagger', 'limit' => 4, 'resources' => '-' ~ $_modx->resource.id, 'groupby' => 'id', 'where' => [ 'TaggerTagResources.tag:IN' => 'getTagIDs' | snippet ], 'leftJoin' => [ 'TaggerTagResources' => [ "class" => "TaggerTagResource", "on" => "modResource.id = TaggerTagResources.resource" ] ], 'select' => [ 'modResource' => '*', 'TaggerTagResources' => 'COUNT(TaggerTagResources.resource) as weight' ], 'sortby' => 'weight', 'sortdir' => 'DESC', 'tpl' => 'articlesRelatedTpl' 'includeTVs' => 'imageArticle' ]} {if $news != ''} <h4>Похожие новости:</h4> <div class="related-posts row posts-md col-mb-30"> {$news} </div> {/if} Вот так сделал, ничего не выводится
Обсуждают сегодня