Как я понял «template» => 2 это означает что выбир

Как я понял «template» => 2 это означает что выбираем только категории.

Это выборка документов с шаблоном 2 (Категория). Собственно, у нас только категории с таким шаблоном. По этому принципу можно выбирать любые документы с определенными шаблонами.

переменной $parent у меня не оказалось) но поставил статичную — нормально.

Собственно да, так и предполагалось, что вы укажите там какую-то свою переменную.

Теперь еще вопрос как узнать если у категории подкатегории? можно конечно перебрать каждую категорию такие же процессором, но вдруг еще как то можно?

У всякого документа есть переменная parent, в которой указан id родителя, и по ней можно понять в корне сайта документ находится или нет. А вот признака есть дети или нет — такого нет. Поэтому только через выборку. Самый простой способ — через $modx->getCount();

$modx->getCount('modResource', array(
    "parent"       => $resource_id,
    "deleted"      => 0,
    "hidemenu"     => 0,
    "published"    => 1
));