Перейти к содержанию

Рекомендуемые сообщения

Подскажите, кто-то может уже реализовывал такое. Что бы у категорий и подкатегорий были урлы 2ув, то есть

не привязанные к родительским категориям.

Есть такое решение:

 

Редактируем seo_pro

Открываем файл «catalog/controller/common/seo_pro.php», в функции rewrite() находим код:

case 'path':
	$categories = explode('_', $value);
	foreach ($categories as $category) {
		$queries[] = 'category_id=' . $category;
	}
	unset($data[$key]);
	break;

Заменяем его на:

case 'path':
	$categories = explode('_', $value);
	$queries[] = 'category_id=' . end($categories);
	unset($data[$key]);
	break;

Способ рабочий, но одна проблема, меняется и структура хлебных крошек.

Как можно так сделать что бы хлебные крошки показывали полный путь, а урл был 2ув?

Спасибо.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

я уже много раз говорил. Привязывание крошек к урлу стратегическая ошибка.

Переписывайте на получение пути не из урла. а из запроса к базе дерева категорий.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

сам код можно выдрать из seo_pro

			$sql = "SELECT CONCAT_WS('_'";
			for ($i = $max_level-1; $i >= 0; --$i) {
				$sql .= ",t$i.category_id";
			}
			$sql .= ") AS path FROM " . DB_PREFIX . "category t0";
			for ($i = 1; $i < $max_level; ++$i) {
				$sql .= " LEFT JOIN " . DB_PREFIX . "category t$i ON (t$i.category_id = t" . ($i-1) . ".parent_id)";
			}
			$sql .= " WHERE t0.category_id = '" . $category_id . "'";

			$query = $this->db->query($sql);

			$path[$category_id] = $query->num_rows ? $query->row['path'] : false;

  • +1 1

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

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

 

1. нужно научить сеопро формировать плоский url - обсуждалось не раз (rewrite)

2. а index вернет правильный path

 

то что такое делается - пример, на форуме уже приводился http://shalash.slasoft.kharkov.ua/catalog/boundary-line/

  • +1 1

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Если не сложно, может есть уже готовое решение данного вопроса?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Ну, если есть пример, то значит есть и готовое решение. :)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Ну, если есть пример, то значит есть и готовое решение. :)

:-) вы можете поделиться готовым решением?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Нет, поделиться не могу...
потому что там работа не моя, и я даже не знаю, что там сделано

 

А мое, вот

http://demo.slasoft.kharkov.ua/mac/

  • +1 1

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти

  • Последние посетители   0 пользователей онлайн

    Ни одного зарегистрированного пользователя не просматривает данную страницу

×

Важная информация

На нашем сайте используются файлы cookie и происходит обработка некоторых персональных данных пользователей, чтобы улучшить пользовательский интерфейс. Чтобы узнать для чего и какие персональные данные мы обрабатываем перейдите по ссылке. Если Вы нажмете «Я даю согласие», это означает, что Вы понимаете и принимаете все условия, указанные в этом Уведомлении о Конфиденциальности.