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

Удаление вложенности урлов категории


defender

Recommended Posts

добрый день. у меня включен sep pro а админке, версия движка 1.5.3.1 и большая вложенность категорий, я бы хотел чтобы вся эта вложенность пропала из урлов и отображалось бы там только категория в которой сейчас нахожусь

 

так есть

site.ru/category1/podcategory1/podpodcategory1/

надо надобы
site.ru/category1/
site.ru/podcategory1/
site.ru/podpodcategory1/

site.ru/tovar/

 

в админке смог добиться только чтобы у товара не отображалась эта вложенность в урле там надо просто галку поставить, а как можно сделать такоеже с категориями?

нашел похожие темы, но ответа там так и нет, хотя в одной есть частичное решение,вот здесь https://opencartforum.com/topic/11217-udalenie-vlozhennosti-kategorii/

но тогда вложенность пропдает из хлебных крошек что совсем плохо. прошу помощи знатоков опенкарта

 

 

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


попробуйте так (catalog\controller\common\seo_url.php):

elseif ($key == 'path') {
					$categories = explode('_', $value);
					
					foreach ($categories as $category) {
						$query = $this->db->query("SELECT * FROM " . DB_PREFIX . "url_alias WHERE `query` = 'category_id=" . (int)$category . "'");
				
						if ($query->num_rows) {
							$url .= '/' . $query->row['keyword'];
						}							
					}
					
					unset($data[$key]);
				}

после

$categories = explode('_', $value);

добавьте

$categories = array(end($categories));

теперь url'ы категорий и подкатегорий должны быть 1-уровневые

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

попробуйте так (catalog\controller\common\seo_url.php):



elseif ($key == 'path') {
					$categories = explode('_', $value);
					
					foreach ($categories as $category) {
						$query = $this->db->query("SELECT * FROM " . DB_PREFIX . "url_alias WHERE `query` = 'category_id=" . (int)$category . "'");
				
						if ($query->num_rows) {
							$url .= '/' . $query->row['keyword'];
						}							
					}
					
					unset($data[$key]);
				}

после



$categories = explode('_', $value);

добавьте



$categories = array(end($categories));

теперь url'ы категорий и подкатегорий должны быть 1-уровневые

думаю проблема с хлебными крошками останется

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

 

 

думаю проблема с хлебными крошками останется

не увидел :)

 

тогда надо логику переписывать для хлебных крошек (писать рекурсивную функцию, которая по ID категории выводит всех родителей)

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

думаю проблема с хлебными крошками останется

 

не увидел :)

 

тогда надо логику переписывать для хлебных крошек (писать рекурсивную функцию, которая по ID категории выводит всех родителей)

 

вы сможете помочь с этим??? готов оплатить

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


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

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

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

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

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

Вхід

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

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

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

×
×
  • Створити...

Important Information

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