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