Меню навигации Magento 2 не отображается

12

Я новичок в Magento, поэтому, пожалуйста, потерпите меня: D

Я успешно создал тему, которая является дочерней по отношению к пустой теме.

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

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

Я правильно делаю, просто добавив категорию, и она покажет?

Спасибо

Кажется, у меня нет категории по умолчанию - см. Скриншот ниже

введите описание изображения здесь

ОБНОВИТЬ

Я переустановил Magento на моей локальной машине. Меню хорошо отображается на тему Luma и Blank, но на моей собственной, оно не отображается. Есть что-нибудь, что мне нужно включить или проверить?

Спасибо за помощь

Питер Уилкинсон
источник
Меню работает на пустую тему или тему Luma?
Devtype
Не пробовал это. Просто включил тему Luma и нет, это не показывает. Любая идея, почему он не показывает?
Питер Уилкинсон

Ответы:

18

Решение 1:

Вы должны иметь все свои категории под "Категория по умолчанию" . Тогда они должны показать.

введите описание изображения здесь

Решение 2:

Убедитесь, что категория по умолчанию активна (включите категорию = «да») и « Включить в меню навигации » на « Да» .

введите описание изображения здесь

Очистите кеш, запустив команду php bin / magento cache: clean и проверьте, будет ли она работать.

Обновить :

Просто зайдите в «Магазины» -> «Все магазины» -> «Кликнуть по магазину» (главный магазин веб-сайта) -> там вы увидите опцию «Корневая категория» с названием вашей категории -> выберите эту («Тест», «Коллекция», что вы хотите) -> нажмите на сохранить и проверить.

Смотрите ниже скриншот :

введите описание изображения здесь

введите описание изображения здесь

Мантан Дэйв
источник
Спасибо за это. Я проверил и, кажется, у меня нет "Caregory по умолчанию". Однако я добавил коллекцию или категорию теста в качестве «имени категории» в вашем решении 2. Я также убедился, что активировать категорию «Включить» и «Включить в меню». Смотрите изображение, которое я добавил в свой вопрос. Любые идеи о том, почему у меня нет категории по умолчанию и нужна ли она мне, если да - как я могу ее получить? Спасибо
Питер Уилкинсон
Спасибо за помощь. Я пробовал это раньше, но сделал это снова, чтобы проверить, и все еще не радости Я так потерян, почему это происходит :(
Питер Уилкинсон
1
Я такая потеря здесь. Я сделал именно то, что вы сказали. Убедитесь, что у меня есть корневая категория, убедитесь, что включено и включено в меню. Я тогда удостоверился, что это включено в информацию о магазине. Почистил кеш, пробовал даже тему Luma и до сих пор не радуюсь. Знаете ли вы, нужно ли мне создавать или включать блок в мою тему, или проверять, находится ли он в теме Luma или Blank? Я просто не знаю, куда идти отсюда.
Питер Уилкинсон
Спасибо. Сделал, как ты сказал, и ничего не показывая до сих пор .. Я просто хочу сдаться в этот момент: D
Питер Уилкинсон
Спасибо Дэйв за помощь. Я сделал обновление на мой вопрос - вы можете посмотреть?
Питер Уилкинсон
3

Если вы опробовали все другие решения и проверили все остальные базовые вещи (включены, правильная корневая категория ...), тогда у меня может быть решение для вас!

Если категория была удалена из меню («Включить в меню» = «Выкл.» В админке), а затем снова включена; Кажется, здесь есть ошибка в Magento 2. В Magento 2 атрибут «include_in_menu» будет установлен только на 1 для хранилища администратора, а не для любых других хранилищ внешнего интерфейса, он оставит их равными 0. Поэтому Magento считает, что они по-прежнему отключены из меню.

Решение легко:

  1. Выяснить attribute_id атрибута «include_in_menu»; в моем случае это 69.
  2. Выясните entity_id категории, с которой вы работаете; в моем случае это 47.
  3. Посмотрите таблицу «catalog_category_entity_int» для этой категории (entity_id) и атрибута (attribute_id). Убедитесь, что «значение» = 1 для всех магазинов внешнего интерфейса. В моем случае store, 0 - это администратор, а store 1 и 2 - это два внешних магазина.
  4. Переиндексировать и очистить кэш

Надеюсь, что это работает для вас. Мне потребовался час, чтобы воссоздать структуру категории, затем, когда это случилось снова, я копался в коде и нашел это. Если это работает для вас, дайте этот ответ. Мы используем Magento 2 в нашем магазине GoToTags . Путешествие было "забавным" из-за подобных проблем.

Удачи!

введите описание изображения здесь

введите описание изображения здесь

craig.tadlock
источник
Именно в моем случае, чтобы найти подходящую строку для изменения значения на 1, я использовал SELECT * FROM catalog_category_entity_int WHERE attribute_id = (SELECT attribute_id FROM eav_attribute WHERE attribute_code = 'include_in_menu') AND entity_id = 3
Лиам Митчелл