可以获得 Magento 2 店铺的所有信息,包括当前的店铺 ID、店铺代码、店铺名称、店铺 URL、店铺电话号码、店铺电子邮件地址和店铺网站。当你拥有超过一个 Magento 2 店铺的时候,获取这些信息可以帮助你更容易的管理。在本文中,已给出的代码段可以插入到管理控制台中。
获取 Magento 2 商店信息的步骤
-
第一步:在 Mageplaza_HelloWorld 声明
-
第二步:在 phtml 文件中获取店铺信息
第一步:在 Mageplaza_HelloWorld 中声明
将使用模块 Mageplaza_HelloWorld 的一个块(block)类,然后可以在模块中的块(block)类的构造函数中注入 StoreManagerInterface 对象。
app/code/Chapagain/HelloWorld/Block/HelloWorld.php
<?php
namespace Mageplaza\HelloWorld\Block;
class HelloWorld extends \Magento\Framework\View\Element\Template
{
protected $_storeManager;
public function __construct(
\Magento\Backend\Block\Template\Context $context,
\Magento\Store\Model\StoreManagerInterface $storeManager,
array $data = []
)
{
$this->_storeManager = $storeManager;
parent::__construct($context, $data);
}
/**
* Get store identifier
*
* @return int
*/
public function getStoreId()
{
return $this->_storeManager->getStore()->getId();
}
/**
* Get website identifier
*
* @return string|int|null
*/
public function getWebsiteId()
{
return $this->_storeManager->getStore()->getWebsiteId();
}
/**
* Get Store code
*
* @return string
*/
public function getStoreCode()
{
return $this->_storeManager->getStore()->getCode();
}
/**
* Get Store name
*
* @return string
*/
public function getStoreName()
{
return $this->_storeManager->getStore()->getName();
}
/**
* Get current url for store
*
* @param bool|string $fromStore Include/Exclude from_store parameter from URL
* @return string
*/
public function getStoreUrl($fromStore = true)
{
return $this->_storeManager->getStore()->getCurrentUrl($fromStore);
}
/**
* Check if store is active
*
* @return boolean
*/
public function isStoreActive()
{
return $this->_storeManager->getStore()->isActive();
}
}
?>
第二步:在 phtml 文件中获取店铺信息
使用 .phtml 中的以下脚本,打印店铺信息。
echo $block->getStoreId() . '<br />';
echo $block->getStoreCode() . '<br />';
echo $block->getWebsiteId() . '<br />';
echo $block->getStoreName() . '<br />';
echo $block->getStoreUrl() . '<br />';
echo $block->isStoreActive() . '<br />';