В принципе можно и с этими полями работать, но лучше создать два TV поля, причем с типом number, а не текст. В одно поле пишете min, в другое max, установить модуль Console и программно задать значения, что-то вроде этого:
<?php
$docs = $modx->getIterator('modResource', ['class_key' => 'msProduct', 'parent' => 3]); //вместо 3 поставьте ID родительской категории, если она у вас одна
foreach ($docs as $doc) {
if ($val = $doc->getTVValue(5)) { //вместо 5 поставьте ID TV, в которой сейчас хранятся значения вида 30-45
$temp = array_map('trim', explode('-', $val));
$doc->setTVValue('tvmin', $temp[0]); //вместо tvmin ID или ключ TV для min значения
$doc->setTVValue('tvmax', $temp[1]); //вместо tvmax ID или ключ TV для max значения
}
}
А далее просто по
примеру из доки расширяете модель и пишете кастомный фильтр. Который будет получать значения из слайдера и фильтровать по диапазону значений из двух полей. Можете не создавать два поля, а работать с текущим. Так и так придется расширять модель, если хотите отделаться одним слайдером