magento 2 store manager always returns default store id
I'm implementing module which have to store different data for all stores, so i need get current store id and set id to db with new records. I'm trying get store id this way
$storeId = $this->_storeManager->getStore()->getId();
But when i change scope to another store (which has id "2") then $storeId still has value "1" (default store). I see that last param in my url has changed
store/2/
but in code has returned default store id. Any idea what causing that problem?
My sourcecode
<?php
namespace SampleModuleBlockAdminhtmlCategoryTree;
use MagentoCatalogModelResourceModelCategoryCollection;
use MagentoFrameworkDataTreeNode;
use MagentoStoreModelStoreManagerInterface;
/**
* Category container block
*/
class Supplier extends MagentoFrameworkViewElementTemplate
{
/**
* Category Map collection
*
* @var SampleModuleModelResourceCategoryMapCollectionFactory
*/
protected $_categoryMapCollectionFactory;
/**
* @var StoreManagerInterface
*/
protected $_storeManager;
/**
* @param MagentoBackendBlockTemplateContext $context
* @param SampleModuleModelResourceCategoryMapCollectionFactory $categoryMapCollectionFactory
* @param StoreManagerInterface $storeManager
* @param array $data
*/
public function __construct(
MagentoBackendBlockTemplateContext $context,
SampleModuleModelResourceCategoryMapCollectionFactory $categoryMapCollectionFactory,
StoreManagerInterface $storeManager,
array $data =
) {
$this->_categoryMapCollectionFactory = $categoryMapCollectionFactory;
$this->_storeManager = $storeManager;
parent::__construct($context, $data);
}
/**
* @param int $categoryId
*
* @return SampleModuleModelResourceCategoryMapCollection
*/
protected function getMapsForCategory($categoryId)
{
$categoryMapCollection = $this->_categoryMapCollectionFactory->create();
$storeId = $this->_storeManager->getStore()->getId();
$categoryMapCollection
->addFilter('integrastore_category_id', $categoryId)
->addFilter('shop_id', $storeId)
->load();
return $categoryMapCollection;
}
}
magento-2.0
add a comment |
I'm implementing module which have to store different data for all stores, so i need get current store id and set id to db with new records. I'm trying get store id this way
$storeId = $this->_storeManager->getStore()->getId();
But when i change scope to another store (which has id "2") then $storeId still has value "1" (default store). I see that last param in my url has changed
store/2/
but in code has returned default store id. Any idea what causing that problem?
My sourcecode
<?php
namespace SampleModuleBlockAdminhtmlCategoryTree;
use MagentoCatalogModelResourceModelCategoryCollection;
use MagentoFrameworkDataTreeNode;
use MagentoStoreModelStoreManagerInterface;
/**
* Category container block
*/
class Supplier extends MagentoFrameworkViewElementTemplate
{
/**
* Category Map collection
*
* @var SampleModuleModelResourceCategoryMapCollectionFactory
*/
protected $_categoryMapCollectionFactory;
/**
* @var StoreManagerInterface
*/
protected $_storeManager;
/**
* @param MagentoBackendBlockTemplateContext $context
* @param SampleModuleModelResourceCategoryMapCollectionFactory $categoryMapCollectionFactory
* @param StoreManagerInterface $storeManager
* @param array $data
*/
public function __construct(
MagentoBackendBlockTemplateContext $context,
SampleModuleModelResourceCategoryMapCollectionFactory $categoryMapCollectionFactory,
StoreManagerInterface $storeManager,
array $data =
) {
$this->_categoryMapCollectionFactory = $categoryMapCollectionFactory;
$this->_storeManager = $storeManager;
parent::__construct($context, $data);
}
/**
* @param int $categoryId
*
* @return SampleModuleModelResourceCategoryMapCollection
*/
protected function getMapsForCategory($categoryId)
{
$categoryMapCollection = $this->_categoryMapCollectionFactory->create();
$storeId = $this->_storeManager->getStore()->getId();
$categoryMapCollection
->addFilter('integrastore_category_id', $categoryId)
->addFilter('shop_id', $storeId)
->load();
return $categoryMapCollection;
}
}
magento-2.0
Please post your source code.
– Phoenix128_RiccardoT
May 2 '16 at 17:39
Hi RiccardoT. I've added my sourcecode
– Rudolf
May 3 '16 at 8:46
add a comment |
I'm implementing module which have to store different data for all stores, so i need get current store id and set id to db with new records. I'm trying get store id this way
$storeId = $this->_storeManager->getStore()->getId();
But when i change scope to another store (which has id "2") then $storeId still has value "1" (default store). I see that last param in my url has changed
store/2/
but in code has returned default store id. Any idea what causing that problem?
My sourcecode
<?php
namespace SampleModuleBlockAdminhtmlCategoryTree;
use MagentoCatalogModelResourceModelCategoryCollection;
use MagentoFrameworkDataTreeNode;
use MagentoStoreModelStoreManagerInterface;
/**
* Category container block
*/
class Supplier extends MagentoFrameworkViewElementTemplate
{
/**
* Category Map collection
*
* @var SampleModuleModelResourceCategoryMapCollectionFactory
*/
protected $_categoryMapCollectionFactory;
/**
* @var StoreManagerInterface
*/
protected $_storeManager;
/**
* @param MagentoBackendBlockTemplateContext $context
* @param SampleModuleModelResourceCategoryMapCollectionFactory $categoryMapCollectionFactory
* @param StoreManagerInterface $storeManager
* @param array $data
*/
public function __construct(
MagentoBackendBlockTemplateContext $context,
SampleModuleModelResourceCategoryMapCollectionFactory $categoryMapCollectionFactory,
StoreManagerInterface $storeManager,
array $data =
) {
$this->_categoryMapCollectionFactory = $categoryMapCollectionFactory;
$this->_storeManager = $storeManager;
parent::__construct($context, $data);
}
/**
* @param int $categoryId
*
* @return SampleModuleModelResourceCategoryMapCollection
*/
protected function getMapsForCategory($categoryId)
{
$categoryMapCollection = $this->_categoryMapCollectionFactory->create();
$storeId = $this->_storeManager->getStore()->getId();
$categoryMapCollection
->addFilter('integrastore_category_id', $categoryId)
->addFilter('shop_id', $storeId)
->load();
return $categoryMapCollection;
}
}
magento-2.0
I'm implementing module which have to store different data for all stores, so i need get current store id and set id to db with new records. I'm trying get store id this way
$storeId = $this->_storeManager->getStore()->getId();
But when i change scope to another store (which has id "2") then $storeId still has value "1" (default store). I see that last param in my url has changed
store/2/
but in code has returned default store id. Any idea what causing that problem?
My sourcecode
<?php
namespace SampleModuleBlockAdminhtmlCategoryTree;
use MagentoCatalogModelResourceModelCategoryCollection;
use MagentoFrameworkDataTreeNode;
use MagentoStoreModelStoreManagerInterface;
/**
* Category container block
*/
class Supplier extends MagentoFrameworkViewElementTemplate
{
/**
* Category Map collection
*
* @var SampleModuleModelResourceCategoryMapCollectionFactory
*/
protected $_categoryMapCollectionFactory;
/**
* @var StoreManagerInterface
*/
protected $_storeManager;
/**
* @param MagentoBackendBlockTemplateContext $context
* @param SampleModuleModelResourceCategoryMapCollectionFactory $categoryMapCollectionFactory
* @param StoreManagerInterface $storeManager
* @param array $data
*/
public function __construct(
MagentoBackendBlockTemplateContext $context,
SampleModuleModelResourceCategoryMapCollectionFactory $categoryMapCollectionFactory,
StoreManagerInterface $storeManager,
array $data =
) {
$this->_categoryMapCollectionFactory = $categoryMapCollectionFactory;
$this->_storeManager = $storeManager;
parent::__construct($context, $data);
}
/**
* @param int $categoryId
*
* @return SampleModuleModelResourceCategoryMapCollection
*/
protected function getMapsForCategory($categoryId)
{
$categoryMapCollection = $this->_categoryMapCollectionFactory->create();
$storeId = $this->_storeManager->getStore()->getId();
$categoryMapCollection
->addFilter('integrastore_category_id', $categoryId)
->addFilter('shop_id', $storeId)
->load();
return $categoryMapCollection;
}
}
magento-2.0
magento-2.0
edited May 3 '16 at 8:45
Rudolf
asked May 2 '16 at 17:31
RudolfRudolf
6618
6618
Please post your source code.
– Phoenix128_RiccardoT
May 2 '16 at 17:39
Hi RiccardoT. I've added my sourcecode
– Rudolf
May 3 '16 at 8:46
add a comment |
Please post your source code.
– Phoenix128_RiccardoT
May 2 '16 at 17:39
Hi RiccardoT. I've added my sourcecode
– Rudolf
May 3 '16 at 8:46
Please post your source code.
– Phoenix128_RiccardoT
May 2 '16 at 17:39
Please post your source code.
– Phoenix128_RiccardoT
May 2 '16 at 17:39
Hi RiccardoT. I've added my sourcecode
– Rudolf
May 3 '16 at 8:46
Hi RiccardoT. I've added my sourcecode
– Rudolf
May 3 '16 at 8:46
add a comment |
1 Answer
1
active
oldest
votes
According to this issue on git, storeManager isn't intended to return the current store. Instead you can grab the parameter from the URL:
class CurrentStore
{
public function __construct(
MagentoFrameworkAppRequestHttp $request,
//...
) {
$websiteId = (int) $request->getParam('website', 0);
// ...
}
}
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');
var $window = $(window),
onScroll = function(e) {
var $elem = $('.new-login-left'),
docViewTop = $window.scrollTop(),
docViewBottom = docViewTop + $window.height(),
elemTop = $elem.offset().top,
elemBottom = elemTop + $elem.height();
if ((docViewTop elemBottom)) {
StackExchange.using('gps', function() { StackExchange.gps.track('embedded_signup_form.view', { location: 'question_page' }); });
$window.unbind('scroll', onScroll);
}
};
$window.on('scroll', onScroll);
});
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%2f113608%2fmagento-2-store-manager-always-returns-default-store-id%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
1 Answer
1
active
oldest
votes
1 Answer
1
active
oldest
votes
active
oldest
votes
active
oldest
votes
According to this issue on git, storeManager isn't intended to return the current store. Instead you can grab the parameter from the URL:
class CurrentStore
{
public function __construct(
MagentoFrameworkAppRequestHttp $request,
//...
) {
$websiteId = (int) $request->getParam('website', 0);
// ...
}
}
add a comment |
According to this issue on git, storeManager isn't intended to return the current store. Instead you can grab the parameter from the URL:
class CurrentStore
{
public function __construct(
MagentoFrameworkAppRequestHttp $request,
//...
) {
$websiteId = (int) $request->getParam('website', 0);
// ...
}
}
add a comment |
According to this issue on git, storeManager isn't intended to return the current store. Instead you can grab the parameter from the URL:
class CurrentStore
{
public function __construct(
MagentoFrameworkAppRequestHttp $request,
//...
) {
$websiteId = (int) $request->getParam('website', 0);
// ...
}
}
According to this issue on git, storeManager isn't intended to return the current store. Instead you can grab the parameter from the URL:
class CurrentStore
{
public function __construct(
MagentoFrameworkAppRequestHttp $request,
//...
) {
$websiteId = (int) $request->getParam('website', 0);
// ...
}
}
answered 8 mins ago
RyreRyre
56811127
56811127
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');
var $window = $(window),
onScroll = function(e) {
var $elem = $('.new-login-left'),
docViewTop = $window.scrollTop(),
docViewBottom = docViewTop + $window.height(),
elemTop = $elem.offset().top,
elemBottom = elemTop + $elem.height();
if ((docViewTop elemBottom)) {
StackExchange.using('gps', function() { StackExchange.gps.track('embedded_signup_form.view', { location: 'question_page' }); });
$window.unbind('scroll', onScroll);
}
};
$window.on('scroll', onScroll);
});
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%2f113608%2fmagento-2-store-manager-always-returns-default-store-id%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');
var $window = $(window),
onScroll = function(e) {
var $elem = $('.new-login-left'),
docViewTop = $window.scrollTop(),
docViewBottom = docViewTop + $window.height(),
elemTop = $elem.offset().top,
elemBottom = elemTop + $elem.height();
if ((docViewTop elemBottom)) {
StackExchange.using('gps', function() { StackExchange.gps.track('embedded_signup_form.view', { location: 'question_page' }); });
$window.unbind('scroll', onScroll);
}
};
$window.on('scroll', onScroll);
});
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');
var $window = $(window),
onScroll = function(e) {
var $elem = $('.new-login-left'),
docViewTop = $window.scrollTop(),
docViewBottom = docViewTop + $window.height(),
elemTop = $elem.offset().top,
elemBottom = elemTop + $elem.height();
if ((docViewTop elemBottom)) {
StackExchange.using('gps', function() { StackExchange.gps.track('embedded_signup_form.view', { location: 'question_page' }); });
$window.unbind('scroll', onScroll);
}
};
$window.on('scroll', onScroll);
});
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');
var $window = $(window),
onScroll = function(e) {
var $elem = $('.new-login-left'),
docViewTop = $window.scrollTop(),
docViewBottom = docViewTop + $window.height(),
elemTop = $elem.offset().top,
elemBottom = elemTop + $elem.height();
if ((docViewTop elemBottom)) {
StackExchange.using('gps', function() { StackExchange.gps.track('embedded_signup_form.view', { location: 'question_page' }); });
$window.unbind('scroll', onScroll);
}
};
$window.on('scroll', onScroll);
});
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
Please post your source code.
– Phoenix128_RiccardoT
May 2 '16 at 17:39
Hi RiccardoT. I've added my sourcecode
– Rudolf
May 3 '16 at 8:46