How to disable category in magento 2 programmatically
.everyoneloves__top-leaderboard:empty,.everyoneloves__mid-leaderboard:empty,.everyoneloves__bot-mid-leaderboard:empty{ margin-bottom: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.
magento-2.1 category-products navigation
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.
add a comment |
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
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.
add a comment |
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
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
magento-2.1 category-products navigation
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.
add a comment |
add a comment |
2 Answers
2
active
oldest
votes
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();
?>
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
add a comment |
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.
add a comment |
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
});
}
});
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
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
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();
?>
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
add a comment |
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();
?>
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
add a comment |
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();
?>
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();
?>
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
add a comment |
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
add a comment |
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.
add a comment |
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.
add a comment |
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.
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.
edited Jul 3 '18 at 7:17
answered Jul 3 '18 at 6:54
GideonGideon
305316
305316
add a comment |
add a comment |
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.
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
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
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
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