public function getWelcome()
{
if (empty($this->_data['welcome'])) {
if (Mage::isInstalled() && Mage::getSingleton('customer/session')->isLoggedIn()) {
$this->_data['welcome'] = $this->__('Welcome, %s!', $this->escapeHtml(Mage::getSingleton('customer/session')->getCustomer()->getName()));
} else {
$this->_data['welcome'] = $this->__('Welcome, <a href="">Sign in</a> or <a href="">Register</a>');
}
}
return $this->_data['welcome'];
}
我想知道我是否可以在此函数中使用函数Mage :: getUrl('/ whatever')。 更具体地说,我需要在
中使用一个链接 else {
$this->_data['welcome'] = $this->__('Welcome, <a href="">Sign in</a> or <a href="">Register</a>');
}
感谢。
修改 解决方案:
$this->__('Welcome, <a href="%1$s">Sign in</a> or <a href="%2$s">Register</a>',
Mage::getUrl('customer/account/login'),
Mage::getUrl('customer/account/create')
);
答案 0 :(得分:7)
__()
功能的作用类似于sprintf()
。你可以使用这样的指令:
$this->__('Welcome, <a href="%1$s">Sign in</a> or <a href="%2$s">Register</a>',
Mage::getUrl('customer/account/login'),
Mage::getUrl('customer/account/create')
)
这个整洁的部分是指令可以按任何顺序使用,你可以translate以上内容:
Please <a href="%2$s">sign-up</a> or, if you have an existing account,
<a href="%1$s">login</a>. To justify this example here is the register URL again;
<q>%2$s</q>.