Вы что-то недоговариваете. Если у вас в сниппете это работает, и вы вызываете этот сниппет внутри другого сниппета через $modx->runSnippt() напрямую (а не через другие чанки и т.п.), то все должно нормально работать. Может вы что-то не так вызываете? Или не то пытаетесь вернуть? Приведите коды своих сниппетов (можно частично, только те места, где вызовы происходят).