Если кто-то вдруг столкнется с подобной проблемой, то нашел пока такое временное решение:
В директории компонента есть файл
class.php, который содержит следующий метод
fillItemValues. В нём на приблизительно 500й строке есть определение:
Код |
---|
$url_id = toLower($enum["XML_ID"]); |
Если сменить заменить XML_ID на ID:
Код |
---|
$url_id = toLower($enum["ID"]); |
Тогда в URL будет подставляться ID свойства, а не пугающий XML_ID код.
Решение не изящное , но на данном этапе устраивает. В идеале нужно транслитерировать значение свойства и где-то хранить его транслитерированное значение с привязкой к ID родителя. Хранить отдельно на тот случай, если изменится само знание (на кириллице. Допустим, сменится буква или добавится пробел). А для этого всего нужно дописывать сам компонент и детально разбираться в его работе.