Допустим мы имеем ресурс некой страницы с шаблоном Main. Пусть у нас есть ресурс-контейнер с ID = 2,  в котором вложены дочерние ресурсы. Эти ресурсы мы планируем вывести на главной.


#. Создаем сниппет с именем GetRes с таким содержимым:

if ($_SERVER['HTTP_X_REQUESTED_WITH'] == 'XMLHttpRequest') {
$output = $modx->runSnippet('getResources',array(
'parents'=>$_REQUEST['parents'],
'tpl'=>'item',
'includeTVs'=>'1',
'processTVs'=>'1',
'limit'=>'0',
'showHidden'=>'0'
));
return $output; 
}

#. Создаем чанк с именем item: 


<a href="/[[~[[+id]]]]">[[+pagetitle]]</a> <br />


#. Создаем в дереве ресурсов страницу и в контенте пишем  

[[!GetRes]]
. Указываем ей псевдоним  ajaxitems .  
Например, адрес этого ресурса при дефолтных настройках  пусть  получается таким  http:// mysite.ru/ajaxitems.html 


#. Помещаем в шаблон Main (внутри head) такой код

<script type="text/javascript" src="<a href="https://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js">https://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js</a>"></script>


<script type="text/javascript" >

function AjaxLoadItems(url,parents_string) {  

    $("#ajax-items").addClass("loading");
    $.ajax({
        url: url,
        data: {parents: parents_string},
        success: function(data) {        
            $("#ajax-items").removeClass("loading");
            $('#ajax-items').html(data); 
        }
    });
} 
$(document).ready(functon() { 
     AjaxLoadItems("http:// mysite.ru/ajaxitems.html", "2"); 
    // 2 - это id нашего ресурса-контейнера
});
</script>


 


#. В нужном месте (где мы хотим вывести список) HTML-кода помещаем такой код:


<div id="ajax-items">Здесь появятся ресурсы с помощью AJAX</div>