Тема: Структура урл на сайте
Сейчас имеем урл категории: сайт/каталог/категория
товара: сайт/продукт/ товар
Можно сделать такой вид:
сайт/категория/товар ?
Форум ReadyScript Вопросы по разработке модулей и API системы Структура урл на сайте
Страницы 1
Чтобы отправить ответ, вы должны войти или зарегистрироваться
Сейчас имеем урл категории: сайт/каталог/категория
товара: сайт/продукт/ товар
Можно сделать такой вид:
сайт/категория/товар ?
Простого способа это сделать - нет. Так как вы хотите убрать якорь из маршрута, который придает ему уникальность по сравнению с другими урлами на сайте. Будет необходимо влазить в глубины маршрутизации. Ну и конечно все URL_имена категорий перечислять в маршруте к категории и товару.
Если с категориями все не так сложно, можно видоизменить маршрут
//Просмотр категории продукции
$routes[] = new \RS\Router\Route('catalog-front-listproducts', array(
'/catalog/{category}/',
'/catalog/'
), null, t('Просмотр категории продукции'));
Примерно таким образом (перечислив все идентификаторы категорий, чтобы обойти конфликты с другими маршрутами):
//Просмотр категории продукции
$routes[] = new \RS\Router\Route('catalog-front-listproducts', array(
'/{category:(demo-produkty|elektronika)}/',
'/catalog/'
), null, t('Просмотр категории продукции'));
То с формированием Урлов для товара придется переделать его стандартный маршрут, примерно на такой:
//Карточка товара
$routes[] = new \RS\Router\Route('catalog-front-product',
'/{category:(demo-produkty|elektronika)}/{id}/', null, t('Карточка товара'));
И переделать метод getUrl у объекта \Catalog\Model\Orm\Product, необходимо дописать передачу
параметра category в маршрут, так как стандартно там передается только id
Но правда могут повылазить проблемы в непредсказуемых местах, ну и производительность будет немного меньше, если у вас слишком много категорий, так что пробуйте.
На практике мы делали однажды подобную работу для одного клиента, выгоды никакой не получили абсолютно для поисковой выдачи.
Сайт сейчас на Host cms, присматриваюсь к Вашему движку.
Но слишком много костылей.
Намного проще сделать 301 редиректы со старых урлов товаров на новые. Возможно вам данный вариант подойдет?
Страницы 1
Чтобы отправить ответ, вы должны войти или зарегистрироваться
Форум ReadyScript Вопросы по разработке модулей и API системы Структура урл на сайте