Ну да. Поэтому через одно место :)
В админке же хранится структура, какая должна быть.
Поэтому мы определяем текущий элемент - символьный код (он уникален для каждого элемента, как и ID, но в адресной строке у меня используется символьный код).
Для этого элемента вытаскиваю его родительский подраздел (в твоем примере - подраздел 1-1-1)
Потом для полученного подраздела выстраиваю дерево разделов (GetNavChain работает для разделов, не для элементов).
Следующие танцы с бубном - это у меня заморочки с этим символьным кодом - он составной. Не знаю какого черта, но видимо так надо зачем-то. Через всю админку так насквозь прописано.
Ну и вот. В итоге сочиняем адрес, который считаем правильным. И сравниваем с текущим.
В админке же хранится структура, какая должна быть.
Поэтому мы определяем текущий элемент - символьный код (он уникален для каждого элемента, как и ID, но в адресной строке у меня используется символьный код).
Для этого элемента вытаскиваю его родительский подраздел (в твоем примере - подраздел 1-1-1)
Потом для полученного подраздела выстраиваю дерево разделов (GetNavChain работает для разделов, не для элементов).
Следующие танцы с бубном - это у меня заморочки с этим символьным кодом - он составной. Не знаю какого черта, но видимо так надо зачем-то. Через всю админку так насквозь прописано.
Ну и вот. В итоге сочиняем адрес, который считаем правильным. И сравниваем с текущим.