web-dev-qa-db-ja.com

MagentoのWebサイトのデフォルトのストアIDを取得します

現在アクティブなWebサイトのデフォルトのストアIDを取得したい。私は試した

Mage::app()->getStoreId()


15
user773440

ストアグループごとに定義されたデフォルトのストアIDについて話していると仮定すると、たとえば、このような:

_$iDefaultStoreId = Mage::app()
    ->getWebsite()
    ->getDefaultGroup()
    ->getDefaultStoreId();
_

元の質問は、現在アクティブなWebサイトのデフォルトのストアIDを取得する方法に関するものだったので、答えは正しいです。ただし、管理パネル内からデフォルトのフロントエンドストアIDを取得するには、パラメーターtrueをメソッドgetWebsite()に渡す必要があります。

_$iDefaultStoreId = Mage::app()
    ->getWebsite(true)
    ->getDefaultGroup()
    ->getDefaultStoreId();
_
18
Jürgen Thelen

管理者では機能しないという@TahirYasinのコメントに答えるには、管理者のデフォルトのwebsite_idが0であり、store_idも0であるため、あまり役に立ちません。管理者に必要なのは、WebサイトIDを指定することです。

$iDefaultStoreId = Mage::app()
    ->getWebsite($websiteId)
    ->getDefaultGroup()
    ->getDefaultStoreId();

これが一部のGoogle社員に役立つことを願っています。

6
Shadowbob

次のようにデフォルトのストアIDを取得できます。

Mage_Core_Model_App::ADMIN_STORE_ID
1