Мне нужно создать сайт (интернет-магазин) в Laravel, используя оптимизированные для SEO и иерархические URL.
Некоторые примеры:
www.example.com/cat1/cat11
(который указывает на товарный список категории)
www.example.com/cat1/cat11/cat111
(указывает на товарный список категории)
www.example.com/cat1/cat11/cat111/product-title
(указывает на страницу с описанием товара)
www.example.com/contact-us
(который указывает на страницу)
Я могу проанализировать вышеупомянутые URL-адреса и найти нужный слаг, но я не уверен, какой контроллер будет отвечать за каждый маршрут.
Возможные мысли:
1) Добавьте префикс к каждому типу URL, чтобы узнать контроллер
* например, * 1023
www.example.com/categories/cat1/cat11/cat111
> CategoryController
www.example.com/products/cat1/cat11/cat111/product-title
> ProductController
www.example.com/page/contact-us
> PageController
2) Предварительно сгенерируйте и сохраните в таблице все URL сайта. Таблица может содержать два столбца: URL (cat1 / cat11 / cat111) и модель: id (категория: 8)
Глобальный контроллер проанализирует URL-адрес и с помощью таблицы может загрузить требуемую модель и идентификатор.
Есть еще идеи?