Павел Левин

Павел Левин

С нами с 30 августа 2013; Место в рейтинге пользователей: #148
t.g
t.g
23 июля 2017, 22:47
2
+1
Делал AMP страници через подмену шаблона при наличии get параметра ?amp, только со страницами блога.
Пример url:
https://sitename.com/articles/articles-name.html?amp
Условие замены шаблона. (возможно кто-то подскажет как его немножко улучшить, не знал как взять id шаблона текущей страницы одним запросом)

$id = $modx->resource->get('id'); // Get current page id
$resource = $modx->getObject('modResource',$id); // Get current object
$template = $resource->get('template'); // Get current page template

if($template == 5 && isset($_GET['amp'])) {
    
    $modx->resource->set('template', 23); 
    
} 

$modx->resource->cacheable = false; // Disable cache
Важно выключить кэширование, чтобы изменение шаблона не закешировалось.
Повесил на событие (OnLoadWebDocument)

Валидацию с get параметром проходит.
search.google.com/test/amp
Василий Наумкин
14 марта 2016, 06:04
1
0
Многое уже и так есть, только называется иначе. Если что, вот все модификаторы MODX, в которых добрая часть это if, else, then и прочее, что в Fenom называется тегами, а не модификаторами.

Единственное, что я вижу действительно нужного, это userinfo. И то, правильнее на мой взгляд, выбирать данные юзера сразу через join таблиц, а не отдельными запросами после.

Смотрите, чего не хватает, и шлите PR. В новой версии загрузка модификаторов не зря вынесена в отдельный метод.

Павел Левин
23 марта 2015, 14:35
2
0
Есть идея по созданию нормального дефолтного шаблона для магазина?

Вот отличный пример реализации категории с быстрым просмотром и т.п. включая добавление в корзину.

Пример + код разметки | Virgil Pana
Илья Ершов
06 октября 2014, 22:49
1
+2
Принимай Как защитить MODX Revolution от возможных взломов
Я писал об этом ещё в марте.