Каждый ресурс в системе MODx должен иметь свой уникальный тип. Это нужно для разделения ресурсов на разные категории и для дальнейшей работы с ними через сниппеты или итераторы. По умолчанию все ресурсы имеют тип «Документ».

Всего в MODx присутствует 4 типа ресурсов:

  1. Документ (documents)
  2. Статический ресурс (static resources)
  3. Ссылка (weblinks)
  4. Символическая ссылка (symlinks)

Например, при установке компонента miniShop2, добавляются 2 новых типа ресурсов

  1. Категория товаров (msCategory)
  2. Товар магазина (msProduct)

Это позволяет не только разделять ресурсы, задавая им разные настройки, поля и т. д. Но и писать свои собственные плагины или сниппеты и работать только с ними, указав в скрипте нужный тип ресурса.

Узнать тип ресурса программно, можно так:

<?php
$resource = $modx->getObject('modResource', 1);
$output = $resource->get('class_key');
return $output;

Выполнить проверку на соответствие типа ресурса, можно так:

<?php
$resource = $modx->getObject('modResource', 1);
$output = $resource->get('class_key');
if ($resource->get('class_key') != 'msProduct') return;
return $output;

Статьи