Magento:我如何回应用户名

时间:2010-06-12 10:27:27

标签: magento echo username

我使用现代主题

我在标题上有一个实时聊天按钮,我想解析模板中的信息

这是实时聊天按钮:

<!-- http://www.LiveZilla.net Chat Button Link Code --><a href="[removed]void(window.open('http://xxxxxx.fr/livezilla.php?code=BOUTIQUE&amp;en=<!!CUSTOMER NAME!!>&amp;ee=<!!!CUSTOMER EMAIL!!>.........

我需要替换用户的姓名和电子邮件(如果已记录)

该按钮位于我主页的标题中

我如何回应这两个信息?

我试过

<?php echo $this->htmlEscape($this->getCustomer()->getName()) ?>

但没有奏效:

  

致命错误:调用成员函数   getFirstname()在非对象中   /home/xxx/public_html/app/design/frontend/default/modern/template/page/html/header.phtml   在第36行

1 个答案:

答案 0 :(得分:9)

这是正常的。 与模板app/design/frontend/default/modern/template/page/html/header.phtml对应的块位于app/code/Core/Page/Block/Html/Header.php

如果您阅读了块的代码,您将看到没有名为'getCustomer()'的函数。 当您尝试在模板页面上调用$this->getCustomer()->getName();时,由于函数getCustomer()不存在,它不会返回任何内容。

结果是你试图在什么都没有调用'getName()'然后出现错误信息:Fatal error: Call to a member function getFirstname() on a non-object

您可以阅读:在非对象上调用成员函数getFirstname()。

如果您想在header.phtml中获取客户名称,请执行以下操作:

$session = Mage::getSingleton('customer/session');
if($session->isLoggedIn()) {
   $customer = $session->getCustomer();
   echo $customer->getName();
   echo $customer->getFirstname();
}

雨果。