1

I need to add some content to the top of the images tab in the catalog product edit view. I do not want to add a new tab, i want to include some content (custom block) to the existing one.

I have seen a lot of tutorials on how to add a whole new tab, but nothing on how to edit an existing one.

I have managed to create an observer on the event "core_block_abstract_prepare_layout_after":

<core_block_abstract_prepare_layout_after>
 <observers>
 <edit_images_tab>
 <type>singleton</type>
 <class>custom_module/observer</class>
 <method>editImagesTab</method>
 </edit_images_tab>
 </observers>
</core_block_abstract_prepare_layout_after>

and remove and recreate the tab in the same position:

public function editImagesTabs(Varien_Event_Observer $observer) {
 $block = $observer->getEvent()->getBlock();
 if ($block instanceof Mage_Adminhtml_Block_Catalog_Product_Edit_Tabs) {
 $block->removeTab('group_10');
 $block->addTabAfter(
 'group_10',
 array(
 'label' => 'Upload Product Files',
 'content' => $block->getLayout()->createBlock('adminhtml/catalog_product_helper_form_gallery_content')->toHtml() . 'custom content'
 ),
 'group_9'
 );
 }
}

Anyway, it seems that $block->getLayout()->createBlock('adminhtml/catalog_product_helper_form_gallery_content')->toHtml() is not enough to recreate the images tab.

Not sure if i'm going in the right direction.

Any hint would be greatly appreciated.

asked Jul 3, 2014 at 8:54

1 Answer 1

1

I've found another way to achieve my goal, here is what I did.

I have overridden the method toHtml() of the class "Mage_Adminhtml_Block_Catalog_Product_Helper_Form_Gallery" in that way:

class Custom_Module_Block_Adminhtml_Catalog_Product_Helper_Form_Gallery 
 extends Mage_Adminhtml_Block_Catalog_Product_Helper_Form_Gallery {
 public function toHtml() {
 $myBlock = Mage::getSingleton('core/layout')->createBlock('custom_module/custom_block')->toHtml();
 return $myBlock . parent::toHtml();
 }
}

and added this in the config.xml file:

<global>
 <blocks>
 <adminhtml>
 <rewrite>
 <catalog_product_helper_form_gallery>Custom_Module_Block_Adminhtml_Catalog_Product_Helper_Form_Gallery</catalog_product_helper_form_gallery>
 </rewrite>
 </adminhtml>
 </blocks>
</global>

not sure if this is the best approach but it works.

answered Jul 4, 2014 at 6:48

Your Answer

Draft saved
Draft discarded

Sign up or log in

Sign up using Google
Sign up using Email and Password

Post as a guest

Required, but never shown

Post as a guest

Required, but never shown

By clicking "Post Your Answer", you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.