Просмотренные ресурсы на MODX
Для реализации истории просмотренных страниц пользователя на CMF MODX, создадим простой сниппет, который будет это делать.
 
 Для начала нам потребуется создать новый сниппет в MODX и назвать его ViewedPages:
$id = $modx->resource->id;
 $template = $modx->resource->template;
 if (isset($_SESSION['viewed'])) {
     if (!in_array($id, $_SESSION['viewed'])) {
         if (count($_SESSION['viewed']) > 10) {
             $_SESSION['viewed'] = array();
         }
         if ($template ==2) {
             $_SESSION['viewed'][] = $id;
         }
     }
     if (!isset($_SESSION['viewed'])) {
         return;
     }
     $ids = array_reverse($_SESSION['viewed']);
     if (!empty($ids)) {
         $res = implode(",", $ids);
         $snippet = 'pdoResources';
         $config = array(
             'resources' => $res,
             'parents' => $parents,
             'limit' => $limit,
             'tpl' => $tpl
         );
         return $modx->runSnippet($snippet, $config);
     }
 } else {
     $_SESSION['viewed'] = array();
     if ($template ==2) {
         $_SESSION['viewed'][] = $id;
     }
 }
Вызвать данный сниппет на любой странице или в шаблоне(Вызывать его нужно без кеширования):
 MODX Актуальная версия 3.0.5
 MODX Актуальная версия 3.0.5