Создать ЧПУ

Алексей Е
встречал сайты, в которых посты, категории , метки ,выглядят так:
site.ru/nazvanie-categorii/
site.ru/nazvanie-metki/
site.ru/nazvanie-posta/
т.е. вне зависимости от назначения , интернет страница всегда будет 1 уровня. (за исключением page):
site.ru/nazvanie-categorii/1/
site.ru/nazvanie-metki/1/
Придумал решение,но мой вариант  кажется тормознутым, с точки зрения скорости. Представим что мы находимся на странице :
site.ru/nazvanie-categorii
1) Считываем URI строку.
2) парсим все до "/"  и кладем результат в $name_post, т.е. nazvanie-categorii
3) теперь нужно узнать, что же мы такое спарсили! (категорию, метку или название поста) для этого:
4) select * posts where translate_name="nazvanie-categorii" {нашли, это пост, подключаем нужны контроллер} else {будем искать в других таблицах}
4) select * tags where translate_name="nazvanie-categorii"{нашли, это метка, подключаем нужны контроллер} else {будем искать в других таблицах}
4) select * category where translate_name="nazvanie-categorii"{нашли, это пост, подключаем нужны контроллер} else {будем искать в других таблицах}
Работать то работает, но нам пришлось проанализировать целых 3 таблицы.
Подскажите, пожалуйста, есть ли другие варианта решения этой задачи?
Нужны именно такая ЧПУ...
Алексей Е почти 2 года назадСпасибо 0
0 чел.