Здравствуйте, industry.
Задача модефецировать формирующиеся url в плагине zoo cms joomla.
в плагине существует router.php в котором 2 функции:
BuildRoute
и ParseRoute
BuildRoute получает массив query содержащий все требуемые параметры
для ссылки на нужный матерьял.
Эти параметры передаются в массив segments после чего из этого массива
формируется url посредствам расставления слешей между его value т.е.
из
$segments[] ='category';
$segments[] ='computers';
в последствии сформируется
href="category/computers".
вся эта передача из массива в массив нужна лишь потому что исходный
массив query содержал в себе множество параметров необязательных в
url.
Далее когда пользователь нажимает на какую-либо из ссылок эту ссылку,
уже ввиде массива $segments получает функция ParsRoute.
Её задача расспознать что должен вызывать этот url и передать
параметры в массив vars для обработки.
например так:
if $segments[0] =='category')
$vars['task'] ='category';
$vars['category_name'] =$$segments['category_name'];
В плагине существует несколько типов контента, который храниться в
разных таблицах.
Например контент типа item category и пр.
Поумолчанию сделано так, что урл содержит в себе тип вызываемого
контента и после обработки функцией ParsRoute плагин знает к какой
таблице обращаться, но мне требуется сделать url обсалютно чистым так,
чтобы он состоял только из имени нужного контента.
И хотя у меня точно не будет двух категорий с одинаковыми именами, но
вполне могут попасться и item и category с обсалютно одним и тем же
именем так, что без указания на тип контента невозможно будет понять,
что это
Возможно ли
как-нибудь реализовать так, чтобы url category/computers превратился
просто в computers и корректно это обработать даже если существует
item/computers.
И если никак не возможно, кроме того чтобы несколько поменять url или
имя категории так чтобы была видна её пренадлежность к типу категории,
как это можно изменить чтобы url после был максимально валидным с
точкизрения сео оптимизации.
Зарание очень благодарен.