Для ростовки одежды такое делал. Размер "от" и "до" был указан в товаре, а в фильтре диапазон выбирался.
Поля заполнялись автоматически исходя из максимальной и минимальной ростовки в комплектациях.
Делал для старой версии, может сейчас уже поменялось.
90 и 89 - id "ростовка от" и "ростовка до".
Файл templates/theme/moduleview/catalog/blocks/sidefilters/type/int.my.tpl
{if $prop.id==90}
<div class="filter typeInterval">
<h4>{$prop.title}:</h4>
<table class="fullwidth fromToLine">
<tr>
<td>{t}от{/t}</td>
<td class="p50"><input type="text" class="textinp fromto" name="pf[{90}][from]" value="{$filters[89].from|default:$prop_from.interval_from}" data-start-value="{$prop_from.interval_from}"></td>
<td>{t}до{/t}</td>
<td class="p50"><input type="text" class="textinp fromto" name="pf[{89}][to]" value="{$filters[90].to|default:$prop.interval_to}" data-start-value="{$prop.interval_to}"></td>
<td>{$prop.unit}</td>
</tr>
</table>
<input type="hidden" data-slider='{ "from":{$prop_from.interval_from}, "to":{$prop.interval_to}, "step": "{$prop.step}", "round": {$prop->getRound()}, "dimension": " {$prop.unit}", "heterogeneity": [{$prop->getHeterogeneity()}], "scale": ["{$prop_from.interval_from}", "{$prop.interval_to}"] }' value="{$filters[89].from|default:$prop_from.interval_from};{$filters[90].to|default:$prop.interval_to}" class="pluginInput" data-start-value="{$prop_from.interval_from};{$prop.interval_to}">
</div>
{elseif $prop.id!=89}
<div class="filter typeInterval">
<h4>{$prop.title}:</h4>
<table class="fullwidth fromToLine">
<tr>
<td>{t}от{/t}</td>
<td class="p50"><input type="text" class="textinp fromto" name="pf[{$prop.id}][from]" value="{$filters[$prop.id].from|default:$prop.interval_from}" data-start-value="{$prop.interval_from}"></td>
<td>{t}до{/t}</td>
<td class="p50"><input type="text" class="textinp fromto" name="pf[{$prop.id}][to]" value="{$filters[$prop.id].to|default:$prop.interval_to}" data-start-value="{$prop.interval_to}"></td>
<td>{$prop.unit}</td>
</tr>
</table>
<input type="hidden" data-slider='{ "from":{$prop.interval_from}, "to":{$prop.interval_to}, "step": "{$prop.step}", "round": {$prop->getRound()}, "dimension": " {$prop.unit}", "heterogeneity": [{$prop->getHeterogeneity()}], "scale": [{$prop->getScale()}] }' value="{$filters[$prop.id].from|default:$prop.interval_from};{$filters[$prop.id].to|default:$prop.interval_to}" class="pluginInput" data-start-value="{$prop.interval_from};{$prop.interval_to}">
</div>
{/if}
Код грязный, делал давно.