Посмотрел в версии Modx 2.3 кэш такой же как и при использовании ModxSDK, т.е тэгов там тоже нету. Вопрос. При грамотном использовании ModxSDK скорость страницы всё равно будет быстрее, чем у обычных шаблонов?

Окей, мы немного ушли в оффтоп :) Благодарю за беседу.

Я хотел бы взять ModxSDK и начать делать сайт так же как я раньше их делал обычными средствами Modx. Вот очень сомневаюсь, что вы когда-то взяли MODX и сразу начали фигачить на нем сайты. У меня на сайтах всегда много шаблонов, поэтому это принципиально важно. Работайте над тем, чтобы их не было много. В любом случае полезно будет.

Мне это не нужно слишком долго. Я хотел бы взять ModxSDK и начать делать сайт так же как я раньше их делал обычными средствами Modx. С include разобрался. Остались вопросы по использованию родных шаблонов Modx. Допустим я назначил ресурсу другой шаблон — как это работает через ModxSDK — в видюхе сказано только что там шаблон динамически меняется через controller. У меня на сайтах всегда много шаблонов, поэтому это принципиально важно.

Скачайте свежую сборку ShopModxBox и смотрите как и что там работает. Так же все очень подробно расписано здесь.

Дальше начал копать никак не пойму как подключать несколько файлов Запись вида {extends file=«blocks/head.tpl»} {extends file=«blocks/footer.tpl»} не работает Через include тоже не работает! {include file='blocks/head.tpl'} Я так понял там один файл только можно подключать и после него ничего не выводится, так как return возврощается :)

Вообще отлично… особенно устроила скорость Вот окончательный вариант запроса $q = $modx->newQuery('ProductsNomenclature'); $q->select( array( "ProductsNomenclature.name as product", "ProductsNomenclature.code as code", "ProductsGroup.name as groupname", "CONCAT('[', GROUP_CONCAT( CONCAT('{"shop":"',Shop.name,'",'), CONCAT('"count":', IFNULL(WarehouseProducts.count, 0),','), CONCAT('"unit":"', ProductsNomenclature.unit_measure,'"}') ) ,']') as data", ) ); $q->innerJoin('Shops', 'Shop', 'Shop.active = 1'); $q->innerJoin('ProductsGroup', 'ProductsGroup', 'ProductsGroup.id = ProductsNomenclature.group_id'); $q->leftJoin('WarehouseProducts', 'WarehouseProducts', 'Shop.warehouse_id = WarehouseProducts.warehouse_id and ProductsNomenclature.id = WarehouseProducts.product_id'); $q->where( array( 'active' => 1, ) ); $q->sortby('ProductsNomenclature.group_id', 'ASC'); $q->groupby('ProductsNomenclature.id');

А я бы объяснил, что лучше лететь на самолете. Во-первых, надежней, ибо способ проверенный. Во-вторых, результат быстрее достигается (сегодня ведь уже лететь надо, а за несколько часов кобыла не вырастает). В-третьих, профит выше, ведь билет на самолет дешевле обходится, чем генетические исследования. Даже если бюджет такой классный, почему не понести при этом по возможности минимальные потери? Сосредотачиваться надо на результате, а не на поиске наиболее интересного решения. Но, опять-таки, все на ваше усмотрение. А это просто мое ИМХО.