0

我正在尝试为每种商店视图/语言显示一个自定义块。因此我想创建 switch 语句,如:

$lang = // Get language code or store view code here;
switch ($lang) {

    case 'en':
        // English block
        break;

    case 'nl':
        // Dutch block
        break;

    default:
        // Dutch block
        break;
}

我怎样才能得到这个?我需要在这个文件中\app\design\frontend\Venustheme\floristy\Ves_Themesettings\templates\header\default.phtml

4

1 回答 1

1

使用\Magento\Store\Api\Data\StoreInterface__construct()您的模板文件相对应的 Block 类。

例子:

/**@var \Magento\Store\Api\Data\StoreInterface **/
protected $_store;

public function __construct(
\Magento\Store\Api\Data\StoreInterface $store,
  .....
) {
  $this->_store = $store;
} 

public function getLocaleCode()
{
    return $this->_store->getLocaleCode();
}

getLocaleCode()从模板文件调用函数,使用$block->getLocaleCode()它应该返回类似en_EN.

于 2017-08-17T10:25:02.230 回答