主要目的是找到为新产品页面生成左标记块的位置。并修改它。
为了得到它,我试图了解哪个块正在运行,以防产品是新产品?
在此代码中,我打印出名称块。
class Mage_Adminhtml_Catalog_ProductController extends Mage_Adminhtml_Controller_Action
{
//...
/**
* Create new product page
*/
public function newAction()
{
//...
$this->loadLayout(array(
'default',
strtolower($this->getFullActionName()),
'adminhtml_catalog_product_'.$product->getTypeId() . $_additionalLayoutPart
));
// echo adminhtml_catalog_product_new
echo 'adminhtml_catalog_product_'.$product->getTypeId() . $_additionalLayoutPart;
//...
}
//...
}
在catalog.xml中找到这个块:
<adminhtml_catalog_product_new>
<update handle="editor"/>
<!-- ... -->
<reference name="left">
<block type="adminhtml/catalog_product_edit_tabs" name="product_tabs"></block>
</reference>
<!-- ... -->
</adminhtml_catalog_product_new>
在接下来的步骤中,我找到了块模型:
class Mage_Adminhtml_Block_Catalog_Category_Tabs extends Mage_Adminhtml_Block_Widget_Tabs { /**
* Initialize Tabs
*
*/
public function __construct()
{
die("debug label");
//....
}
// ...
}
刷新页面......没什么好开心的。 似乎我们正在寻找没有阻止......那么呢?
答案 0 :(得分:1)
首先,布局xml说adminhtml/catalog_product_edit_tabs
,然后你应该找{1}},而不是Mage_Adminhtml_Block_Catalog_Product_Edit_Tabs
。
其次,如果您要创建新的可配置产品,我认为它是Mage_Adminhtml_Block_Catalog_Category_Tabs
来控制标签。