1

Let's say that a product view/page has the following blocks,

  • product name
  • SKU
  • stock status
  • tabbed content (video, specifications, reviews etc.,)

If a 3rd party module appends its block to the product view then, is there a way to display it within an existing block?

For instance, if a 3rd party module appends product reviews to the product view then, can this block be displayed within the existing 'reviews' block?

I understand that before and after attributes can be used to position blocks in layouts but, I am looking for something on the lines of within.

(display the block from the 3rd party module within an existing block on the product view template)

Any guidance regarding this would be helpful.

6

If I understand you correctly you want the following. Let's say you have a third part app that has the following XML tag to display it's template

<block type="3thparty/reviews" name="3thpart_reviews" template="3thparty/reviews.phtml"/>

Now you want to add this to the review view in the product view page. When you go to the file base/default/layout/review.xml you can see on line 96 a block with the name product.info.product_additional_data. Via the local.xml layout file in your template we'll add the 3thparty review app here.

Add the following code in your templates local.xml

[...]
<review_product_list translate="label">
    <reference name="product.info.product_additional_data">
        <block type="3thparty/reviews" name="3thpart_reviews" template="3thparty/reviews.phtml"/>
    </block>
</review_product_list>
[...]

All you need to do now is echo it in the review/product/view/list.phtml template file that you're referencing.

<?php echo $this->getChildHtml('3thparty_review');?>

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.