我有一个客户端有一个加载自定义类别页面的magento站点,其中一个$ this-> getChildHTML('content')在加载页面后会抛出一堆代码。它只在一个页面上,它看起来像倾销php关闭标签。
getCurrentCategory()?> getCurrentChildCategories()?> count()):?> getIsActive()): $cur_category=Mage::getModel('catalog/category')->load($_category->getId()); $layer = Mage::getSingleton('catalog/layer'); $layer->setCurrentCategory($cur_category); $catName = $this->getCurrentCategory()->getName(); if($_imageUrl=!$this->getCurrentCategory()->getImageUrl()):?>
getCurrentCategory()->getImageUrl()):?>
getName()?>
setCurrentCategory($_maincategorylisting); ?>
我似乎找不到有错误的页面。我不知道getChildHTML中的'content'位置。类别页面是自定义的,不显示任何产品,只显示其中一个产品的图像。我想更改这些页面以显示产品和一大堆其他内容,但我只是不知道这些自定义类别页面所在的位置。每个类别都有自定义模板,但它们都使用相同的getChildHTML('content')调用...
我尝试下载整个网站并在类别页面上搜索一些代码但没有找到任何内容。请帮忙!
不过......如果你已经可以告诉我,我对magento很新,并且可能留下了很多重要信息,所以如果你认为我需要发布更多信息,请说出来。提前感谢!
答案 0 :(得分:9)
“content”是赋予块的名称,该块在page.xml
中定义为core/text_list
(Mage_Core_Block_Text_List
)块。此块的目的是回显分配给它的任何子块,并且它在没有模板的情况下执行此操作。数据库中的任何布局文件以及布局更新(请参阅任何类别的“设计”选项卡)都可以包含类别页面中包含的说明,并修改此块的子项。
请参阅Alan Storm's knowledgebase article on MagentoCommerce.com并最终逐步完成他的详尽书籍No Frills Magento Layout。
有关一般信息,您在Stack Overflow中表现良好,您也可以依赖Magento U作为资源。
答案 1 :(得分:1)
这取决于主题,任何扩展和其他自定义代码。通常,getChildHTML('content')
加载当前布局的“内容”处理程序。这可以直接在catalog.xml,local.xml中,或者如果它是扩展名覆盖,扩展名为xml。它也可以是后端类别本身的布局更新。
使用Magento的调试工具从Admin:
输出每个块及其位置系统 - >组态 将“当前配置范围”更改为网站视图 高级/开发人员 调试面板:'模板路径提示'和'将块名称添加到提示'。
您还可以将IP地址添加到其上方的“开发人员客户端限制”部分,以将此输出限制为您自己的IP。一旦你保存它,你会看到很多红色轮廓。 查看损坏的类别页面,找到包含损坏代码的文件名。