In this blog, we are going through how to add custom category attributes in Magento 2.

Why Create a Custom Category Attribute in Magento 2? Because in a category you need to add some external text, numbers, multiple choice categories, etc. you can create category attribute

In this blog, we create category attributes using the latest technology  “data/patch”.let’s start with how to create categories attribute.

⇒    First of all, you create “CategoryAttribute.php”  in this directory “Vendor_name/Module_name/Setup/Patch/Data/”.

<?php
/**
* @author CynoInfotech Team
* @package vendor_module
*/
declare (strict_types = 1);
namespace vendor\module\Setup\Patch\Data;
use Magento\Eav\Model\Entity\Attribute\ScopedAttributeInterface;
use Magento\Eav\Setup\EavSetup;
use Magento\Eav\Setup\EavSetupFactory;
use Magento\Framework\Setup\ModuleDataSetupInterface;
use Magento\Framework\Setup\Patch\DataPatchInterface;
use Magento\Catalog\Model\Category;
/**
 * Class CategoryAttribute for Create Custom Category Attribute using Data Patch.
 */
class CategoryAttribute implements DataPatchInterface {
    /**
     * ModuleDataSetupInterface
     *
     * @var ModuleDataSetupInterface
     */
    private $moduleDataSetup;
    /**
     * EavSetupFactory
     *
     * @var EavSetupFactory
     */
    private $eavSetupFactory;
    /**
     * @param ModuleDataSetupInterface $moduleDataSetup
     * @param EavSetupFactory          $eavSetupFactory
     */
    public function __construct(
        ModuleDataSetupInterface $moduleDataSetup,
        EavSetupFactory $eavSetupFactory
    ) {
        $this->moduleDataSetup = $moduleDataSetup;
        $this->eavSetupFactory = $eavSetupFactory;
    }
    /**
     * {@inheritdoc}
     */
    public function apply() {
        /** @var EavSetup $eavSetup */
        $eavSetup = $this->eavSetupFactory->create(['setup' => $this->moduleDataSetup]);
        $eavSetup->addAttribute(Category::ENTITY, 'category_attribute', [
            'type' => 'text',
            'label' => 'Custom Category Attribute',
            'input' => 'text',
            'default' => 0,
            'sort_order' => 5,
            'global' => ScopedAttributeInterface::SCOPE_STORE,
            'group' => 'General Information',
            'visible_on_front' => true
        ]);
    }
    /**
     * {@inheritdoc}
     */
    public static function getDependencies() {
        return [];
    }
    /**
     * {@inheritdoc}
     */
    public function getAliases() {
        return [];
    }
}

⇒ After that you need to create “category_form.xml” in this directory “vendor_name/module_name/view/adminhtml/ui_component“.

<?xml version="1.0" ?>
<!--
/**
* @author CynoInfotech Team
* @package vendor_module
*/
-->
<form xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:noNamespaceSchemaLocation="urn:magento:module:Magento_Ui:etc/ui_configuration.xsd">
    <fieldset name="general">
        <field name="category_attribute">
            <argument name="data" xsi:type="array">
                <item name="config" xsi:type="array">
                    <item name="required" xsi:type="boolean">false</item>
                    <item name="validation" xsi:type="array">
                        <item name="required-entry" xsi:type="boolean">false</item>
                    </item>
                    <item name="sortOrder" xsi:type="number">100</item>
                    <item name="dataType" xsi:type="string">string</item>
                    <item name="formElement" xsi:type="string">input</item>
                    <item name="label" translate="true" xsi:type="string">Custom Category Attribute</item>
                </item>
            </argument>
        </field>
    </fieldset>
</form>

⇒ and last you need to run this command in the root directory

  • php -dmemory_limit=2G bin/magento setup:upgrade
  • php -dmemory_limit=2G bin/magento setup:static-content:deploy -f -j
  • php -dmemory_limit=2G bin/magento cache:flush

⇒ after checking the custom category created successfully.  If you have any questions regarding this blog let me know in the comment section.

Thank You !!!!

4 responses to “MAGENTO 2 HOW TO CREATE CUSTOM CATEGORY ATTRIBUTE”

  1. Mon_hzml Avatar

    Всем привет, вопрос такой — давно смотрю разные онлайн-казино. Попался в ленте tiktokk.ru/ — у них 250 фриспинов за регистрацию — это реально работает?
    Зарегистрировался там недели три назад. Регистрация простая — почта или телефон, пароль и пара кликов, минут пять максимум. Данные в профиле дозаполнил позже, при первом выводе.
    Бонус взял — 250 FS сразу после регистрации, условия терпимые. Вейджер есть, но не 50x как в некоторых местах — отыграть реально. Регулярные промоакции обновляются, не только приветственный бонус.
    Провайдеры нормальные: Pragmatic Play, Evolution, Play’n GO, Yggdrasil. Thunderstruck II нашел, Gonzo’s Quest там тоже есть — классика. Live-столы без демо, там сразу реальные ставки — это стандарт.
    Деньги вывел за сутки, всё пришло без проблем. Депозит от 300 рублей, вывод от 500 — порог небольшой. Visa, Mastercard, СБП, Sky Pay, крипта — большинство методов закрыто.
    Если основной домен вдруг заблокируют — есть зеркало, аккаунт тот же. Приложение есть для Android и iOS — скачал с главной страницы, работает.
    Для себя решил остаться — всё устраивает пока что. Кто-то ещё пробовал Monro Casino — поделитесь опытом?

  2. Sel_muml Avatar

    Ребят, подскажите — уже пару месяцев слежу за новыми сайтами. Случайно нашел Selector — цены адекватные и бонусы норм — кто-то пробовал?
    Пару недель назад решил попробовать. Рега заняла минут пять, ничего лишнего не просили. Паспорт не просили на старте — стандартная практика.
    Бонус взял — 5к на счёт и фриспины при депозите от трёх тысяч. Главное — читайте условия перед активацией, потом сюрпризов не будет. Акции периодически появляются, не только для новичков.
    Каталог огромный, я сначала даже растерялся от выбора. Живые дилеры от Evolution есть — это уже уровень. Демо-режим доступен без регистрации, можно сначала потыкать.
    Выводил на карту, пришло быстро — около суток. Минималка на вывод 500 рублей — это адекватно. Visa, Mastercard, СБП, ЮMoney, крипта — большинство методов закрыто.
    На случай блокировок зеркало сохраняет доступ к аккаунту и балансу. Приложения отдельного нет, но мобильная версия в браузере вполне достаточно.
    В общем для меня пока норм, продолжаю пользоваться. А вы где обычно играете, есть нормальные альтернативы?

  3. Cac_xmml Avatar

    Народ, есть кто в теме — искал нормальное казино и наткнулся казино кактус — условия интересные, хочу реальных отзывов.
    Недавно завел аккаунт. Зарегу прошел быстро, даже удивился насколько коротко. Можно войти через соцсеть, это удобно.
    Стартовый пакет до 200% плюс 230 фриспинов — взял, условия читал, отыгрыш адекватный. Кэшбэк тоже есть, плюс регулярные акции для постоянных — это приятно.
    Провайдеры нормальные: Pragmatic, Evolution, BGaming, Amatic — выбор есть. Live-столы от Evolution — рулетка, блэкджек, баккара, всё стандартно. Поиск по слотам работает быстро, сразу нашел что хотел.
    Заявка на вывод обработалась за сутки, нормально. Минималка на вход и вывод адекватная, 300 и 500 рублей соответственно. Зеркало обновляют, при блокировке основного адреса проблем не было.
    С телефона играю чаще чем с компа — мобилка шустрая.
    Для себя выбрал это казино, пока претензий нет. Кто-нибудь ещё здесь из Кактус — как впечатления?

  4. Drag_vyml Avatar

    Коллеги, вопрос по теме — давно ищу нормальный сайт для слотов и знакомый кинул ссылку на dragon money — отзывы разные нашел, хочу из первых уст.
    Попробовал недавно — где-то месяц назад. Регистрация через почту или телефон — минут пять, всё просто. Верификация нужна перед выводом, лучше сделать заранее чтобы не тормозить.
    Бездепозитный фрибет по промокоду SPRING2026 получил, условия читал — терпимо. Система квестов реально работает — выполняешь задания, получаешь дополнительные награды.
    Каталог приличный, и слоты и live-столы, и быстрые форматы. Live-раздел с настоящими крупье есть — рулетка, блэкджек, баккара. VIP-программа есть — уровни растут от активности, персональные офферы начинают приходить.
    Заявку обработали часов за шесть — нормально. Лимиты в кассе видны сразу, без сюрпризов. Зеркало есть если основной домен лег — тот же аккаунт и баланс.
    Мобильная версия в браузере тоже ок, приложение необязательно.
    Честно и стабильно — большего не надо. А вы где сейчас, есть что посоветовать из казино?

Leave a Reply

Your email address will not be published. Required fields are marked *

CynoInfotech was founded in 2019, in Ahmedabad, Gujrat. CynoInfotech is a Magento module development company that grow up over this year with outsourcing clients.