Валентин, не обязательно писать код под каждую задачу. Во-первых, есть готовые процессоры (типа того же site/web/getdata), которые можно использовать. К тому же процессоры лучше сниппетов тем, что их можно расширять. Вот сниппеты как правило используются под конкретные задачи, так как их можно использовать только в том виде, в каком они поставляются. Вы не можете их модифицировать, иначе как сделать копию и там уже вносить правки. А вот процессоры запросто расширить и можно, к примеру, переопределить нужный метод. Во-вторых, у нас используется Smarty-шаблонизация, что позволяет во многих случаях вообще отказаться от вызова сниппетов, чанков и тех же процессоров, если задача простая. Простой пример: не раз видел вызов сниппета типа [[year]], который возвращает значение текущего года ( return date('Y'); ). От чего это происходит? От того, что ни в MODX-шаблонах, ни в чанках нет возможности выполнить php-код (то есть какую-то логику). В Смарти-шаблоне я просто напишу {date('Y')} и все. Не надо никаких сниппетов или чанков.
То есть призыв отказываться от чанков и сниппетов, это не какая-то тотальная борьба с ними, а просто такая парадигма разработки в рамках наших технологий. То есть если вы используете чистый MODX, то иначе как на чанках и сниппетах вы и не сможете работать. А если у вас phpTemplates+modxSmarty, то вы можете так же работать на чанках и сниппетах, но это уже не так эффективно. Зачем тогда вообще использовать phpTemplates+modxSmarty?
И справедливости ради следует отметить, что совсем от чанков и сниппетов не получится отказаться. Во-первых, как минимум чанки нужны для модулей Login и Wayfinder, от которых мы пока не отказались. Во-вторых, элементарно для вызова некешируемого Смарти-шаблона по прежнему используется некешируемый вызов сниппета [[!smarty?tpl=`...`]]. Но относительно традиционных методов разработки на MODX-е, когда чанков и сниппетов порой больше двух-трех сотен штук, можно сказать что мы не используем чанки и сниппеты.