Категорії Magento 2 групують ваші продукти за різними умовами: чоловічі товари, низ, верх, спорядження, спорт тощо. Однак іноді вам потрібно приховати категорії в Magento, якщо вони порожні, щоб уникнути проблем 404 сторінками і забезпечити безперебійний досвід користувачів.

На жаль, у Magento за замовчуванням для цього немає спеціальної опції. Але ви завжди можете покластися на розширення Magento 2 Dynamic Categories для виконання цього завдання.

Щоб приховати порожні категорії в Magento:

  1. Підіть у Catalog > Categories та виберть категорію для якої ви хочете ввімкнути відповідну опцію.
  2. Розгорніть секцію Dynamic Category та ввімкніть опцію Automatically Disable Categories Without Products.

Hide Empty Categories in Magento

Після того, як ви ввімкнете опцію приховувати порожні категорії в Magento, cron, який запускається щодня о 1 годині ночі, перевірить чи є продукти в категоріях.

Якщо там немає продуктів, категорія буде вимкнена, і ви отримаєте таке сповіщення про її вимкнення в адмін панель:

Disabled Category Notification

Але що станеться зі сторінкою категорії, чи не призведе це до помилки 404? - це чудове запитання.

Розширення Dynamic Category допоможе вам. Воно створює 301 редірект для вимкнених категорій за замовчуванням.

Якщо категорію вимкнено, розширення перевіряє, чи ця категорія має активну батьківську категорію, і перенаправляє користувачів до неї та відображає таке сповіщення:

Disabled Category Redirect Notification

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

Отже, ви бачите, щоб приховати пусті категорії в Magento та створити редіректи, вам потрібно ввімкнути лише одну опцію. Не потрібно йти і перевіряти, чи всі категорії мають призначені їм продукти, щоб вимкнути їх і створити редірект. Вам просто потрібен модуль Dynamic Categories, що зробить це за вас.