03
сентября
2019

ZOO - как убрать item и category из url сайта
По умолчанию в ZOO url материала на сайте имеет вид:
https://<site>/menu/item/article
https://<site>/menu/category/category-article а хочется, чтобы ссылка была короче, так как "item" или "category" в url никакой функциональной нагрузки не несет: https://<site>/menu/article
https://<site>/menu/category-article Изменения будем делать в файле ZOO router.php ( /components/com_zoo/router.php)
В этом методе есть минус: при обновлении ZOO файл будет переписан, поэтому его нужно скопировать в папку template и переназначить. Испытания проводились на следующих версиях:
ZOO 3.3.33
Joomla 3.9.16
https://<site>/menu/category/category-article а хочется, чтобы ссылка была короче, так как "item" или "category" в url никакой функциональной нагрузки не несет: https://<site>/menu/article
https://<site>/menu/category-article Изменения будем делать в файле ZOO router.php ( /components/com_zoo/router.php)
В этом методе есть минус: при обновлении ZOO файл будет переписан, поэтому его нужно скопировать в папку template и переназначить. Испытания проводились на следующих версиях:
ZOO 3.3.33
Joomla 3.9.16
Роутер, состоит из двух методов ZooBuildRoute() и ZooParseRoute()
В первом создается строка запроса, во втором происходит ее разбор.
В первом создается строка запроса, во втором происходит ее разбор.
Перед тем, как изменять файл router.php, сохраните его копию!
Убрать item из url сайта в ZOO.
В методе ZooBuildRoute() находим место где формируется ссылка на материал (item) и комментируем строку $segments[] = $task;:
В методе ZooParseRoute() находим раздел item и меняем следующие строки:
Убрать category из url сайта в ZOO.
В методе ZooBuildRoute() находим место где формируется ссылка на категорию и комментируем строку $segments[] = $task;:
В методе ZooParseRoute() находим раздел category и меняем следующие строки:
No video selected.