fenom + pdopage
        Возникли некоторый глюки при работе связки pdoPage + fenom:
1. непонятно как вывести плэйсхолдер [[!+page.nav]] через fenom
2. не работает ajax пагинация pdotools
3. совсем никак не работает mFilter2
под катом немного подробнее и мои некоторые соображения по такому странному поведению.
1. непонятно как вывести плэйсхолдер [[!+page.nav]] через fenom
пытаюсь сделать так:
2. при ajax пагинации на запрос с заголовком
3. При вызове mFilter2 он просто выдает:
Дак вот это только у меня такие глюки? Или пока мало кто опробовал все прелести скорости и гибкости работы fenom'а как шаблонизатора для modx?
    
    
                                                                                
            1. непонятно как вывести плэйсхолдер [[!+page.nav]] через fenom
2. не работает ajax пагинация pdotools
под катом немного подробнее и мои некоторые соображения по такому странному поведению.
1. непонятно как вывести плэйсхолдер [[!+page.nav]] через fenom
пытаюсь сделать так:
{$_modx->getPlaceholder('page.nav')}но ничего не выходит2. при ajax пагинации на запрос с заголовком
$_SERVER['HTTP_X_REQUESTED_WITH'] == 'XMLHttpRequest'сервер отдает часть странички, затем только {"output":" ....с результатами выборки для pdoTools — видимо это свзязано с тем, что fenom включен для шаблонов modx, и шаблон на лету, до вызова сниппета pdoPage генерит страничку и сразу отдает клиенту, а когда натыкается на pdoPage — выводит JSON ответ на AJAX запрос и завершает работу по коду:session_write_close();
exit($modx->toJSON($data));string(14) "XMLHttpRequest"Дак вот это только у меня такие глюки? Или пока мало кто опробовал все прелести скорости и гибкости работы fenom'а как шаблонизатора для modx?
Комментарии: 10
                я так и думал) довольно таки простое решение — вынести pdoPage в начало странички, чтобы во время прервать её передачу и, тем самым, не подгадить AJAX ответ.
Спасибо!
а как быть с
и для mFilter2:
синтаксис fenom никак не хочет работать, даже с подтягиванием данных из плэйсхолдеров modx.
                    Спасибо!
а как быть с
[[!+page.nav]] 
{$_modx->getPlaceholder('page.nav')}для pdoPageи для mFilter2:
{$_modx->getPlaceholder("my.results")}
[[!+my.results]]??синтаксис fenom никак не хочет работать, даже с подтягиванием данных из плэйсхолдеров modx.
                Полагаю, что синтаксис здесь не при чем, а просто нечего получать.
Я не могу ответить на все вопросы на свете, извини.
                    Я не могу ответить на все вопросы на свете, извини.
                Василий скинул же ответ. Вам нужно вызов сниппета сохранить в переменную, но вызывать это в самом начале чанка/шаблона, а потом уже использовать getPlaceholder(), а потом вставлять в нужное место сам сниппет.            
                    
                Думаете, за полтора года он не разобрался?            
                    
                А че бы нет?)            
                    
                Ответ на первый вопрос: 
                    {'page.nav' | placeholder}            
                Вот я пытаюсь сделать так:
                    {set $block1 = $_modx->runSnippet('pdoPage@msFilterParams', [
	'element' => 'msProducts'
	'sortby'  => 'menuindex'
	'limit'   => '9'
	'ajaxMode'=> 'scroll'
	'tpl'     => 'tpl.shop.Products.row'
	'tplPageWrapper' => '@INLINE <ul id="mse2_pagination" class="pagination list-unstyled">[[+first]][[+prev]][[+pages]][[+next]][[+last]]</ul>'
	'tplPageActive' => '@INLINE <li class="active"><span class="active-text">[[+pageNo]]</span></li>'
	])}
{set $block2 = $_modx->getPlaceholder('page.nav')}А потом собственно вывожу данные переменные. Вопрос: Почему не работает ajax подгрузка?            
                предлагаю рабочее решение pdoPage под fenom с загрузкой ajax
                    <div id="pdopage">
    <div class='row'>
	{'!pdoPage' | snippet : [
		'parents' => '0',
		'limit' => '10',
		...			
		'toPlaceholder' => 'result',
		'ajaxMode' => 'button',
                'ajaxElemWrapper' => '#pdopage'
                'ajaxElemRows' => '#pdopage .row'
                'ajaxElemPagination' => '#pdopage .pagination'
                'ajaxTplMore' => '@INLINE <div class="text-center"><button class="btn btn-primary btn-more">Загрузить еще</button></div>'
	]}
        {'result' | placeholder}			
    </div>
     {'page.nav' | placeholder}
</div>            
                ну и не забываем включить jquery на сайте            
                    
                            Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.