カートに追加するためにAjaxを使用しているため、カートのサイドバーを更新する必要があります。
このコードをコントローラーで試して、ブロックをレンダリングしました。
Mage::app()->getLayout()->getBlockSingleton('page/html')->setTemplate("page/html/upper.phtml")->toHtml();
ただし、親ブロックはレンダリングされ、子ブロックはレンダリングされません。
そしてレイアウトファイルは
<block type="core/text_list" name="upper" as="upper" template="page/html/upper.phtml">
<block type="checkout/cart" name="top.cart" as="cart_overview">
<action method="setCartTemplate"><value>checkout/topcart.phtml</value></action>
<action method="setEmptyTemplate"><value>checkout/cart/cartEmpty.phtml</value></action>
<action method="chooseTemplate"/>
<action method="addItemRender"><type>simple</type><block>checkout/cart_item_renderer</block><template>checkout/cart/sidebar/default.phtml</template></action>
<action method="addItemRender"><type>grouped</type><block>checkout/cart_item_renderer_grouped</block><template>checkout/cart/sidebar/default.phtml</template></action>
<action method="addItemRender"><type>configurable</type><block>checkout/cart_item_renderer_configurable</block><template>checkout/cart/sidebar/default.phtml</template></action>
</block>
</block>
コントローラーで子ブロックをレンダリングする方法
手伝ってください。