我在互联网上搜索并没有找到解决方案。
我想要做的是制作一个类似于magento modern中存在的表格信息系统,用于产品描述和其他附加信息。我设法用javascript做功能标签。但问题是,在我添加了标签后,我正在描述整个页面崩溃,所以我不知道我做错了什么。
Tabs.phtml中的代码:
<ul class="product-tabs">
<?php foreach ($this->getTabs() as $_index => $_tab): ?>
<?php //if($this->getChildHtml($_tab['alias'])): ?>
<li id="product_tabs_<?php echo $_tab['alias'] ?>" class="<?php echo !$_index?' active first':(($_index==count($this->getTabs())-1)?' last':'')?>"><a href="#" onclick="return false;"><?php echo $_tab['title']?></a></li>
<?php //endif; ?>
<?php endforeach; ?>
</ul>
<?php foreach ($this->getTabs() as $_index => $_tab): ?>
<?php //if($this->getChildHtml($_tab['alias'])): ?>
<div class="product-tabs-content" id="product_tabs_<?php echo $_tab['alias'] ?>_contents"><?php echo $this->getChildHtml($_tab['alias']) ?></div>
<?php //endif; ?>
<?php endforeach; ?>
所以我想在产品视图标签中添加几个标签。 这是我在xml文件中的代码:
<block type="catalog/product_view_tabs" name="product.tabs" as="info_tabs" template="catalog/product/view/tabs.phtml">
<action method="addTab" translate="title" module="catalog">
<alias>description</alias>
<title>Definition</title>
<block>catalog/product_view_description</block>
<template>catalog/product/view/description.phtml</template>
</action>
<action method="addTab" translate="title" module="catalog">
<alias>technical</alias>
<title>Technical Specification</title>
<block>catalog/product_view_technical</block>
<template>catalog/product/view/technical.phtml</template>
</action>
<action method="addTab" translate="title" module="catalog">
<alias>shipping</alias>
<title>Shipping</title>
<block>catalog/product_view_shipping</block>
<template>catalog/product/view/shipping.phtml</template>
</action>
</block>
这是我得到的错误:
Stack trace:
#0 /home/mihaip/work/magentotest/app/code/core/Mage/Core/Model/Layout.php(495): Mage::throwException('Invalid block t...')
#1 /home/mihaip/work/magentotest/app/code/core/Mage/Core/Model/Layout.php(437): Mage_Core_Model_Layout->_getBlockInstance('catalog/product...', Array)
#2 /home/mihaip/work/magentotest/app/code/core/Mage/Catalog/Block/Product/View/Tabs.php(59): Mage_Core_Model_Layout->createBlock('catalog/product...', 'shipping')
#3 [internal function]: Mage_Catalog_Block_Product_View_Tabs->addTab('shipping', 'Shipping', 'catalog/product...', 'catalog/product...')
#4 /home/mihaip/work/magentotest/app/code/core/Mage/Core/Model/Layout.php(348): call_user_func_array(Array, Array)
#5 /home/mihaip/work/magentotest/app/code/core/Mage/Core/Model/Layout.php(214): Mage_Core_Model_Layout->_generateAction(Object(Mage_Core_Model_Layout_Element), Object(Mage_Core_Model_Layout_Element))
当我拿出技术和发货操作时,一切正常...... 我在这里做错了什么?
由于
答案 0 :(得分:2)
Magento app / code / core / Mage / 中不存在这些模块,块及其类:
<block>catalog/product_view_technical</block>
<block>catalog/product_view_shipping</block>
如果您没有在自己的包中创建包含这些路径和类的自定义模块,那么这些错误的来源就是这些。您创建了模板视图,但未在块标记之间指定的路径中创建控制器。
您有两种选择:
从艾伦风暴中了解更多有关此概念的信息 http://alanstorm.com/magento_controller_hello_world