это потму что вы при формировании ссылки для тега используете относительный путь от текущей папки (значение параметра href начинается с точки) а надо использовать относительный путь от корня.
запись
{shop/path}
действительно означает корень магазина, и ее нужно оставить.
А вот с группой есть нюанс.
В xml каталога товаров магазина есть информация о группах, и есть идентификатор текущей группы.
Поэтому в XSL-шаблоне, в темплейте, отвечающем за построение меток, перед тегом <a> нужно добавить примерно такой код:
<xsl:variable name="group_url" select="/shop//group[@id = /shop/@current_group_id]/fullpath" />
а внутри тега, после пути к корню магазина вывести значение этой переменной:
href="{/shop/path}{$group_url}tag/{tag_path_name}/"
(Этот код, правда не совсем рационален, с точки зрения производительности xslt-шаблона - переменная будет вычисляться столько раз, сколько у вас тегов на этой странице, а значение у нее будет всегда одно и то же. То есть лучше, конечно, вынести вычисление этой переменной в вышестоящий темплейт, где она будет вычисляться только 1 раз, и передавать это значение в теплейт для построения тегов в виде параметра. Но это уж если вы сами осилите

)