如何解决Magento 1.7致命错误:对非对象消息调用成员函数toHtml()

如何解决Magento 1.7致命错误:对非对象消息调用成员函数toHtml(),magento,object,fatal-error,Magento,Object,Fatal Error,我遇到了一个情况 据我所知,在以前版本的Magento中,如果有人收到以下PHP致命错误消息: Fatal error: Call to a member function toHtml() on a non-object in C:\xampp\htdocs\magento\app\design\frontend\base\default\template\wishlist\view.phtml on line 50 您应该在page.xml文件中进行简单更改,以便: <block t

我遇到了一个情况

据我所知,在以前版本的Magento中,如果有人收到以下PHP致命错误消息:

Fatal error: Call to a member function toHtml() on a non-object in C:\xampp\htdocs\magento\app\design\frontend\base\default\template\wishlist\view.phtml on line 50
您应该在page.xml文件中进行简单更改,以便:

<block type="core/profiler" output="toHtml"/>

将成为:

<block type="core/profiler" output="toHtml" name="core_profiler"/>

但是现在。。。运行Magento 1.7此解决方案似乎不再有效

有人能解决这个问题吗


提前谢谢

很明显,您的问题与您提到的xml布局指令无关:

<block type="core/profiler" output="toHtml" name="core_profiler"/>

致命错误在文件app\design\frontend\base\default\template\wishlist\view.phtml的第50行触发

我猜你最近更新了你的magento安装

你能做下一个实验吗

  • 在活动主题中,将layout/wishlist.xml临时重命名为layout/wishlist-back.xml
  • 清理Magento缓存
  • 再次尝试重现这个问题
  • 与我们分享结果

  • 这是一个完美的例子,说明了为什么人们应该使用local.xml进行基本主题布局覆盖

    问题是,在使用以前的Magento版本时,在某个时候,您将wishlist.xml从基本主题复制到了自定义主题,而不是wishlist模板文件

    在1.6版和1.7版之间的愿望列表布局中添加了一些新块

    正在尝试调用名为
    control\u buttons
    的子块上的toHtml

    <?php echo $this->getChild('control_buttons')->toHtml();?>
    
    
    
    此块仅在1.7中引入,因此以前版本中的wishlist.xml文件没有声明该块-因此出现错误“调用非对象上的成员函数toHtml()

    因此,要解决这个问题,您需要尝试将1.7 base wishlist.xml文件与定制的verion合并,本质上是添加1.7中声明的新块


    您的
    愿望列表/view.phtml
    第50行有什么内容?此解决方案运行良好!谢谢你,德鲁。当我在Magento长大的时候,我想和你一样男人:呵呵,关于区块标签的问题是正确的!谢谢你!您好@GilbertoAlbino是否可以将Drew Hunter的建议解决方案标记为已接受。依我看,他只是对这个问题作了更好的解释。当然,他的解决方案更容易被其他人理解。