Не секрет, что хлебные крошки здесь строятся на основе истории просмотра страниц, т.е. откуда переход, то и в хлебных крошках. Как можно отключить данное поведение и строить хлебные крошки исключительно на структуре сайта (категориях)?
Для меня секрет. )) На чем основывается Ваше утверждение? Без сторонних модулей хлебные крошки строятся по структуре категорий относительно текущей.
Добавьте товар в несколько категорий и посмотрите как изменятся крошки в зависимости от того, из какой категории перейти в товар.
Когда товару назначена категория (главная), то на карточке товара в хлебных крошках отображается весь путь от корневой категории до страницы продукта, по сути, это его физический URL. Когда добавлена дополнительная категория, то она является виртуальной – товар будет лишь отображаться в списке товаров какой-то другой категории, но его URL по прежнему будет всегда останется неизменным. Сколько бы не было добавлено дополнительных категорий всё равно расположение товара будет в главной категории. Если в вашей установке иначе, значит это баг.
хлебные крошки, это не url, я про хлебные крошки спрашиваю.
Товар в категориях:
категория - главная категория
категория 1 - дополнительная
категория 2 -дополнительная
хлебная крошка должна строиться так:
категория - товар
если открыть страницу товара из категории 1 или 2, то хлебные крошки будут:
категория1 - товар или категория2 - товар в зависимости от того, откуда был совершен переход.
Оно похоже где то тут app/controllers/frontend/products.php но я не понимаю, что отсюда выпилить надо.
Вы противоречите самому себе. Изначально вы написали:
А теперь пишите противоположное:
Вы уже определитесь, что вам нужно и качественно изложите свои мысли.
Я пишу ровно тоже самое:
Хлебные крошки строятся на основе истории просмотра, т.е. откуда был совершен переход, та категория и окажется в хлебных крошках. Я хочу узнать, как сделать так, чтобы хлебная крошка строилась исключительно на основе структуры сайта. т.е. была неизменной, независимо от того, откуда был совершен переход на странцу товара.
Вы невнимательно читаете.
Я не только внимательно читаю, я еще и знаю что пишу:
Демо. В зависимости из какой категории я перешел на страницу товара в хлебных крошках компьютеры и велосипеды.
Чтобы вас можно было понять однозначно, вот именно в таком формате и надо было изначально задавать вопрос.
В модуле “SEO” в поле “Формат SEO URL категорий” замените:
/parent-category/category/[page-2/]
на:
/category/[page-2/]
app/controllers/frontend/products.php
после
if ((empty(Tygh::$app['session']['current_category_id']) || empty($product['category_ids'][Tygh::$app['session']['current_category_id']])) && !empty($product['main_category'])) {
if (!empty(Tygh::$app['session']['breadcrumb_category_id']) && in_array(Tygh::$app['session']['breadcrumb_category_id'], $product['category_ids'])) {
Tygh::$app['session']['current_category_id'] = Tygh::$app['session']['breadcrumb_category_id'];
} else {
Tygh::$app['session']['current_category_id'] = $product['main_category'];
}
}
добавьте
Tygh::$app['session']['current_category_id'] = $product['main_category'];
Это должно решить вашу задачу с крошками
добавьте
Tygh::$app[‘session’][‘current_category_id’] = $product[‘main_category’];
Это должно решить вашу задачу с крошками
Спасибо! Решает.
Вы все равно ничего не поняли, я сразу написал все понятно, ни разу не написал, что меня интересует url, потом даже уточнил, что меня не интересует url. Эта проблема не имеет вообще ни какого отношения к адресам страниц. Но вы упорно предлагаете что то решить с адресами страниц и еще пишете, что непонятно мысль изложена
В том виде как это реализовано, это неудачный закос под амазон, увидеть увидели, а подумать как оно работает там, не подумали. Основная проблема, которая появляется в текущей реализации в том, что ссылочное на страницы абсолютно хаотично и неуправляемо, т.е. понять и просчитать какой странице какой вес передать вы не сможете, в то время как в том же амазон, с которого сделала попытка слизать это решение, сделано правильно, для роботов крошки всегда неизменны. Для тех, кому важен поисковый трафик, это решение необходимо. Ну и еще это тянет за собой несколько белее мелких, но неприятных проблем.
Если нужно, то можно повторить в этом плане Амазон и отдавать ботам одинаковые крошки всегда, а пользователям так как сейчас в карте из коробки.
Тут еще нужно будет переделывать бренды если они используются в крошках. Вообще решение основанное на истории посещения сильно на любителя с очень спорным удобством, мне вот не нравится ни тут, ни на амазоне.
Как по мне, то очень удобно)
Если я смотрел, условно, аксессуары к компам, то хотел бы по крошкам вернутся ко всем аксессуарам (мышки, клавы, роутеры), а не, условно, только к мышкам.
Это если все четко расположено, в том же амазоне эта мышка может быть в газонокосилках и попасть куда нужно невозможно.
Ну тут да