How to disable category in magento 2 programmatically





.everyoneloves__top-leaderboard:empty,.everyoneloves__mid-leaderboard:empty,.everyoneloves__bot-mid-leaderboard:empty{ margin-bottom:0;
}







0















I would like to disable category from navigation bar under some conditions like for certain customer groups I would like to show certain categories. Is there any way to do that and how can I do that.










share|improve this question
















bumped to the homepage by Community 7 mins ago


This question has answers that may be good or bad; the system has marked it active so that they can be reviewed.






















    0















    I would like to disable category from navigation bar under some conditions like for certain customer groups I would like to show certain categories. Is there any way to do that and how can I do that.










    share|improve this question
















    bumped to the homepage by Community 7 mins ago


    This question has answers that may be good or bad; the system has marked it active so that they can be reviewed.


















      0












      0








      0








      I would like to disable category from navigation bar under some conditions like for certain customer groups I would like to show certain categories. Is there any way to do that and how can I do that.










      share|improve this question
















      I would like to disable category from navigation bar under some conditions like for certain customer groups I would like to show certain categories. Is there any way to do that and how can I do that.







      magento-2.1 category-products navigation






      share|improve this question















      share|improve this question













      share|improve this question




      share|improve this question








      edited Jul 3 '18 at 7:02









      Teja Bhagavan Kollepara

      2,99341949




      2,99341949










      asked Mar 23 '17 at 9:36









      The Lord Of The ShellsThe Lord Of The Shells

      156




      156





      bumped to the homepage by Community 7 mins ago


      This question has answers that may be good or bad; the system has marked it active so that they can be reviewed.







      bumped to the homepage by Community 7 mins ago


      This question has answers that may be good or bad; the system has marked it active so that they can be reviewed.
























          2 Answers
          2






          active

          oldest

          votes


















          0














          You can disable the category with this code.



          <?php 

          $objectManager = MagentoFrameworkAppObjectManager::getInstance();
          $category_id = 'your_category_id';
          $collection = $objectManager ->get('MagentoCatalogModelCategory')->load($category_id);
          $collection->setData('is_active', 0);
          $collection->save();

          ?>





          share|improve this answer
























          • Is there any other way to disable category in navigation without changing is_active status? I just want to hide category with some conditions like customer group.

            – The Lord Of The Shells
            Mar 23 '17 at 10:24











          • You can create a phtml file with above code and your desired conditions, and then call this phtml file in defau.xml of your theme. This might help you.

            – Dinesh Yadav
            Mar 23 '17 at 10:39











          • One more question. Do you know which event will be evoked when top menu is rendering?

            – The Lord Of The Shells
            Mar 23 '17 at 10:45











          • there are two events for category collection. 1. _load_before 2. _load_after

            – Dinesh Yadav
            Mar 23 '17 at 10:53





















          -1














          First, create a custom attribute for categories like "show for customer [group]" with yes-no field then you can make use of plugin/interceptor in Magento to achieve this. In the plugin, check the current customer group and filter the categories that are enabled with the custom attribute you just created.



          In this way, you can achieve your requirement. I think this is an ideal way to achieve this.






          share|improve this answer


























            Your Answer








            StackExchange.ready(function() {
            var channelOptions = {
            tags: "".split(" "),
            id: "479"
            };
            initTagRenderer("".split(" "), "".split(" "), channelOptions);

            StackExchange.using("externalEditor", function() {
            // Have to fire editor after snippets, if snippets enabled
            if (StackExchange.settings.snippets.snippetsEnabled) {
            StackExchange.using("snippets", function() {
            createEditor();
            });
            }
            else {
            createEditor();
            }
            });

            function createEditor() {
            StackExchange.prepareEditor({
            heartbeatType: 'answer',
            autoActivateHeartbeat: false,
            convertImagesToLinks: false,
            noModals: true,
            showLowRepImageUploadWarning: true,
            reputationToPostImages: null,
            bindNavPrevention: true,
            postfix: "",
            imageUploader: {
            brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
            contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
            allowUrls: true
            },
            onDemand: true,
            discardSelector: ".discard-answer"
            ,immediatelyShowMarkdownHelp:true
            });


            }
            });














            draft saved

            draft discarded


















            StackExchange.ready(
            function () {
            StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fmagento.stackexchange.com%2fquestions%2f165774%2fhow-to-disable-category-in-magento-2-programmatically%23new-answer', 'question_page');
            }
            );

            Post as a guest















            Required, but never shown

























            2 Answers
            2






            active

            oldest

            votes








            2 Answers
            2






            active

            oldest

            votes









            active

            oldest

            votes






            active

            oldest

            votes









            0














            You can disable the category with this code.



            <?php 

            $objectManager = MagentoFrameworkAppObjectManager::getInstance();
            $category_id = 'your_category_id';
            $collection = $objectManager ->get('MagentoCatalogModelCategory')->load($category_id);
            $collection->setData('is_active', 0);
            $collection->save();

            ?>





            share|improve this answer
























            • Is there any other way to disable category in navigation without changing is_active status? I just want to hide category with some conditions like customer group.

              – The Lord Of The Shells
              Mar 23 '17 at 10:24











            • You can create a phtml file with above code and your desired conditions, and then call this phtml file in defau.xml of your theme. This might help you.

              – Dinesh Yadav
              Mar 23 '17 at 10:39











            • One more question. Do you know which event will be evoked when top menu is rendering?

              – The Lord Of The Shells
              Mar 23 '17 at 10:45











            • there are two events for category collection. 1. _load_before 2. _load_after

              – Dinesh Yadav
              Mar 23 '17 at 10:53


















            0














            You can disable the category with this code.



            <?php 

            $objectManager = MagentoFrameworkAppObjectManager::getInstance();
            $category_id = 'your_category_id';
            $collection = $objectManager ->get('MagentoCatalogModelCategory')->load($category_id);
            $collection->setData('is_active', 0);
            $collection->save();

            ?>





            share|improve this answer
























            • Is there any other way to disable category in navigation without changing is_active status? I just want to hide category with some conditions like customer group.

              – The Lord Of The Shells
              Mar 23 '17 at 10:24











            • You can create a phtml file with above code and your desired conditions, and then call this phtml file in defau.xml of your theme. This might help you.

              – Dinesh Yadav
              Mar 23 '17 at 10:39











            • One more question. Do you know which event will be evoked when top menu is rendering?

              – The Lord Of The Shells
              Mar 23 '17 at 10:45











            • there are two events for category collection. 1. _load_before 2. _load_after

              – Dinesh Yadav
              Mar 23 '17 at 10:53
















            0












            0








            0







            You can disable the category with this code.



            <?php 

            $objectManager = MagentoFrameworkAppObjectManager::getInstance();
            $category_id = 'your_category_id';
            $collection = $objectManager ->get('MagentoCatalogModelCategory')->load($category_id);
            $collection->setData('is_active', 0);
            $collection->save();

            ?>





            share|improve this answer













            You can disable the category with this code.



            <?php 

            $objectManager = MagentoFrameworkAppObjectManager::getInstance();
            $category_id = 'your_category_id';
            $collection = $objectManager ->get('MagentoCatalogModelCategory')->load($category_id);
            $collection->setData('is_active', 0);
            $collection->save();

            ?>






            share|improve this answer












            share|improve this answer



            share|improve this answer










            answered Mar 23 '17 at 10:20









            Dinesh YadavDinesh Yadav

            4,0831937




            4,0831937













            • Is there any other way to disable category in navigation without changing is_active status? I just want to hide category with some conditions like customer group.

              – The Lord Of The Shells
              Mar 23 '17 at 10:24











            • You can create a phtml file with above code and your desired conditions, and then call this phtml file in defau.xml of your theme. This might help you.

              – Dinesh Yadav
              Mar 23 '17 at 10:39











            • One more question. Do you know which event will be evoked when top menu is rendering?

              – The Lord Of The Shells
              Mar 23 '17 at 10:45











            • there are two events for category collection. 1. _load_before 2. _load_after

              – Dinesh Yadav
              Mar 23 '17 at 10:53





















            • Is there any other way to disable category in navigation without changing is_active status? I just want to hide category with some conditions like customer group.

              – The Lord Of The Shells
              Mar 23 '17 at 10:24











            • You can create a phtml file with above code and your desired conditions, and then call this phtml file in defau.xml of your theme. This might help you.

              – Dinesh Yadav
              Mar 23 '17 at 10:39











            • One more question. Do you know which event will be evoked when top menu is rendering?

              – The Lord Of The Shells
              Mar 23 '17 at 10:45











            • there are two events for category collection. 1. _load_before 2. _load_after

              – Dinesh Yadav
              Mar 23 '17 at 10:53



















            Is there any other way to disable category in navigation without changing is_active status? I just want to hide category with some conditions like customer group.

            – The Lord Of The Shells
            Mar 23 '17 at 10:24





            Is there any other way to disable category in navigation without changing is_active status? I just want to hide category with some conditions like customer group.

            – The Lord Of The Shells
            Mar 23 '17 at 10:24













            You can create a phtml file with above code and your desired conditions, and then call this phtml file in defau.xml of your theme. This might help you.

            – Dinesh Yadav
            Mar 23 '17 at 10:39





            You can create a phtml file with above code and your desired conditions, and then call this phtml file in defau.xml of your theme. This might help you.

            – Dinesh Yadav
            Mar 23 '17 at 10:39













            One more question. Do you know which event will be evoked when top menu is rendering?

            – The Lord Of The Shells
            Mar 23 '17 at 10:45





            One more question. Do you know which event will be evoked when top menu is rendering?

            – The Lord Of The Shells
            Mar 23 '17 at 10:45













            there are two events for category collection. 1. _load_before 2. _load_after

            – Dinesh Yadav
            Mar 23 '17 at 10:53







            there are two events for category collection. 1. _load_before 2. _load_after

            – Dinesh Yadav
            Mar 23 '17 at 10:53















            -1














            First, create a custom attribute for categories like "show for customer [group]" with yes-no field then you can make use of plugin/interceptor in Magento to achieve this. In the plugin, check the current customer group and filter the categories that are enabled with the custom attribute you just created.



            In this way, you can achieve your requirement. I think this is an ideal way to achieve this.






            share|improve this answer






























              -1














              First, create a custom attribute for categories like "show for customer [group]" with yes-no field then you can make use of plugin/interceptor in Magento to achieve this. In the plugin, check the current customer group and filter the categories that are enabled with the custom attribute you just created.



              In this way, you can achieve your requirement. I think this is an ideal way to achieve this.






              share|improve this answer




























                -1












                -1








                -1







                First, create a custom attribute for categories like "show for customer [group]" with yes-no field then you can make use of plugin/interceptor in Magento to achieve this. In the plugin, check the current customer group and filter the categories that are enabled with the custom attribute you just created.



                In this way, you can achieve your requirement. I think this is an ideal way to achieve this.






                share|improve this answer















                First, create a custom attribute for categories like "show for customer [group]" with yes-no field then you can make use of plugin/interceptor in Magento to achieve this. In the plugin, check the current customer group and filter the categories that are enabled with the custom attribute you just created.



                In this way, you can achieve your requirement. I think this is an ideal way to achieve this.







                share|improve this answer














                share|improve this answer



                share|improve this answer








                edited Jul 3 '18 at 7:17

























                answered Jul 3 '18 at 6:54









                GideonGideon

                305316




                305316






























                    draft saved

                    draft discarded




















































                    Thanks for contributing an answer to Magento Stack Exchange!


                    • Please be sure to answer the question. Provide details and share your research!

                    But avoid



                    • Asking for help, clarification, or responding to other answers.

                    • Making statements based on opinion; back them up with references or personal experience.


                    To learn more, see our tips on writing great answers.




                    draft saved


                    draft discarded














                    StackExchange.ready(
                    function () {
                    StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fmagento.stackexchange.com%2fquestions%2f165774%2fhow-to-disable-category-in-magento-2-programmatically%23new-answer', 'question_page');
                    }
                    );

                    Post as a guest















                    Required, but never shown





















































                    Required, but never shown














                    Required, but never shown












                    Required, but never shown







                    Required, but never shown

































                    Required, but never shown














                    Required, but never shown












                    Required, but never shown







                    Required, but never shown







                    Popular posts from this blog

                    What other Star Trek series did the main TNG cast show up in?

                    Berlina muro

                    Berlina aerponto