Попробуйте прописать фильтрацию по шаблону (я так понимаю, что у товаров шаблон свой):
[[!getPage?
&element=`pdoResources`
&limit=`18`
&showHidden=`1`
&tpl=`tovar`
&includeTVs=`image-tovar,old-price-tovar,price-tovar` &where=`{"template:=":10}` - 10 - id шаблона для товара
&parents=`[[*id]]`
&includeContent=`1`
]]
Тут еще следует помнить, что MODX ближе к CMF, и, соответственно, качество сайта на выходе сильнее зависит от опытности разработчика, нежели на классических CMS, где нет такой гибкости как на MODX.
Как вариант - добавляете get параметр в url, который появляется в зависимости от действий пользователя, а в sortBy вызываете сниппет, которые будет обрабатывать эти get-параметры, и в зависимости от параметров выводить DESC или ASC.
Есть еще tvFilters для getResources, смотрите в ту сторону.
Была такая беда из-за несоответствия прав на папки, т.е. на одном хосте одни, а на новом другие стоят по-умолчанию.
Думаю, способ, который указал Михаил должен помочь.
Для seo вариант с поддоменами более выгоден, а в MODX поддомены можно реализовать через контексты (но это технически сложнее чем те же подпапки), вот тут подробно расписано про url и контексты - modx.ru/novosti-i-stati/article/91
Если у вас управление сайтами идет через одну админку, то можно было дублирующие материалы делать через "Символические ссылки", т.е. правите в одном месте, а меняются всюду.
Пока не попробуете - не узнаете, один из основных плюсов системы - ее гибкость, она действительно гибка, ничем не ограничивает разработчика, буквально ничем (т.е. например, я смогу вывести меню сайта в title страницы, за доли секунды, это конечно никому не нужно, но факт остается фактом :) ).
С умелыми руками - свернете горы! В общем, дерзайте, не пожалеете!