如何通过商店ID获取PHP数组中的Magento存储详细信息


How to get Magento Store Details in a PHP Array by Store ID?

我想创建一个函数,该函数获取商店ID并返回一个PHP数组,该数组具有商店详细信息,如商店名称,商店代码,徽标,横幅,名称等。

您可以获得如下所示的商店详细信息:

$store = Mage::getModel('core/store')->load($storeId);
$code = $store->getCode();
$name = $store->getName();

您可以执行此操作以查看可以从存储对象获取哪些数据

var_dump($store->getData())

您需要从配置部分获取的徽标和其他设置。

$logo = Mage::getStoreConfig('design/header/logo_src', $soreId);

这样,您可以从配置中获取所有信息。你只需要正确的路径。 为此,您可以从系统>配置和部分名称中看到输入字段的名称并构建路径。
让我们分析一下徽标。您可以在Design选项卡中找到它,网址如下所示:"admin/system_config/edit/section/design"。所以路径的第一部分是节名design
字段名称为 groups[header][fields][logo_src][value] 。只需删除groups[fields][value],即可header/logo_src路径的其余部分。

试试这个它会起作用...

public function get_storedetails($store) {
     $res = array();
     try {
         $res["store"] = Mage::app()->getStore($store);
         Mage::app()->setCurrentStore($store);
         $res["storeid"] = Mage::app()->getStore($store)->getStoreId();
         $res["storecode"] = Mage::app()->getStore($store)->getCode();
         $res["storewebid"] = Mage::app()->getStore($store)->getWebsiteId();
         $res["storename"] = Mage::app()->getStore($store)->getName();
         $res["storeactive"] = Mage::app()->getStore($store)->getIsActive();
         $res["rooturl"] = Mage::getBaseUrl(Mage_Core_Model_Store::URL_TYPE_WEB);            
         $res["storeurl"] = Mage::helper('core/url')->getHomeUrl(); 
         $res["storelogo_alt"] = Mage::getStoreConfig('design/header/logo_alt');             
         $res["storefrontname"] = Mage::app()->getStore($store)->getFrontendName(); //getLogoSrc()           
         $res["current_url"] = Mage::helper('core/url')->getCurrentUrl();
         $res["media_url1"] = Mage::getBaseUrl(Mage_Core_Model_Store::URL_TYPE_LINK);
         $res["media_url2"] = Mage::getBaseUrl(Mage_Core_Model_Store::URL_TYPE_MEDIA);
         $res["skin_url"] = Mage::getBaseUrl(Mage_Core_Model_Store::URL_TYPE_SKIN);
         $res["js_url"] = Mage::getBaseUrl(Mage_Core_Model_Store::URL_TYPE_JS);          
         $res["storelogo"] = Mage::getBaseUrl(Mage_Core_Model_Store::URL_TYPE_SKIN).'frontend/default/default/'.Mage::getStoreConfig('design/header/logo_src');
         $res["storeadminname"] = Mage::getStoreConfig('trans_email/ident_sales/name');
         $res["storeemail"] = Mage::getStoreConfig('trans_email/ident_sales/email');             
     }
     catch(Exception $ex) {
         echo $ex;
     }
     return $res;
 }