Перейти до вмісту
Пошук в
  • Детальніше...
Шукати результати, які ...
Шукати результати в ...

Убрать вложенность URL для категорий и товаров


Recommended Posts

Есть 5 магазинов, один на ocStore, 4 на opencart (и еще несколько будет).

 

Нужно убрать вложенность SEO Url

 

Стандартный opencart делает так:

категория site.ru/cat

подкатегория site.ru/cat/subcat, site.ru/subcat

товар site.ru/cat/subcat/prod, site.ru/cat/prod, site.ru/subcat/prod, site.ru/prod

- url зависит от пути по сайту.

 

Нужно сделать, чтобы были отовсюду ссылки на 

подкатегория site.ru/subcat

товар site.ru/prod

 

И при этом правильно отображались breadcrumbs + работал модуль категорий.

Для подкатегории хлебные крошки - Главная -> Родительская -> Подкатегория

Для товара - максимальный по вложенности путь.

 

Желательно, но не обязательно, добавить со всех других видов url 301 редирект на нужный.

 

На сайтах стоит Seo Pack Pro, если это важно.

 

Работы готов оплатить.

Надіслати
Поділитися на інших сайтах


А этот Seo Pack Pro - он не участвует в переименовании урлов? Вроде у него такая опция есть

Нет. Он добавляет seo keywords и мета-тег canonical, но с самими url ничего не делает.

 

По факту, уже часть сделал:

1) Нужно убрать просто из формирования ссылок все вложенности (это делается легко)

2) Нужно в подкатегории добавить статические хлебные крошки (с родительской категорией) - нашел решение:

в файле catalog/controller/product/category.php после   $parts = explode('_', (string)$this->request->get['path']);  добавить        

      /* add breadcrumbs for all categories! */
                    if (count($parts) <= 1){
                         $current_category = $this->model_catalog_category->getCategory((string)$this->request->get['path']);
                         $parts[] = $current_category['parent_id'];
                        
                         $parent = $current_category['parent_id'];
                         while ($parent != '0'){
                              $parent = $this->model_catalog_category->getCategory($parent);
                              $parent = $parent['parent_id'];
                              $parts[] = $parent;
                         }
                         $parts = array_reverse($parts);
                    }
               /* add breadcrumbs for all categories! */ 

3) для карточки товара нашел временное решение на opencart.com. Берет первую попавшуюся категорию, к которой принадлежит товар, и через нее пишет путь к главной. 

Нужно доработать это решение - взять все категории и выбрать ту, у которой максимальная вложенность.

4) Нужно доработать модуль категорий, чтобы он выделял категории по максимальному пути.

Надіслати
Поділитися на інших сайтах


За тем лишь исключением, что здесь товар находится только в 1 категории.

 

У меня, например:

товар находится в категории "Коньки"

и в категории "Раздвижные коньки" (подкатегория Коньков)

и в категории "Подарок ребенку"

К нему путь может быть Коньки -> Товар

Может быть Коньки -> Раздвижные коньки -> Товар

Может быть Подарок ребенку -> Коньки.

 

Правильный путь в breadcrumbs - Коньки -> Раздвижные коньки -> Товар (самый длинный путь).

 

В opencart, в отличие от ocstore, "главной категории" товара нет.

Надіслати
Поділитися на інших сайтах


  • 6 months later...

Створіть аккаунт або увійдіть для коментування

Ви повинні бути користувачем, щоб залишити коментар

Створити обліковий запис

Зареєструйтеся для отримання облікового запису. Це просто!

Зареєструвати аккаунт

Вхід

Уже зареєстровані? Увійдіть тут.

Вхід зараз
  • Зараз на сторінці   0 користувачів

    • Ні користувачів, які переглядиють цю сторінку
×
×
  • Створити...

Important Information

На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність.