Перенести блок с правой боковой панели на основной контент

Я использую magento 1.8.1, и я установил одно расширение, т.е. проверку доставки. но на веб-интерфейсе их блок показан на правой боковой панели, но я не хочу правую боковую панель на этой странице. так как я перенесу этот блок с правой боковой панели на основной контент.

Их файл Phtml:

    <div class="block block-list block-check-delivery">
<div class="block-title">
<?php $blockLabel = Mage::getStoreConfig('checkdelivery/general/block_title'); ?>
<strong><span><?php echo $this->__($blockLabel) ?></span></strong>
</div>
<div class="block-content" >
<br>
<input name="zipcode" size="17" type="text" id="zipcode" maxlength="10" class="input-text" placeholder="<?php echo $this->__('Enter ZIP Code'); ?>"/>
<button type="button" name="zip-check" title="Check" class="button" id="zip-check" ><span><?php echo $this->__('Check'); ?></span></button>
<div id="delivery-message"></div>
<?php $defaultHtml = Mage::getStoreConfig('checkdelivery/general/default_html'); ?>
<div id="delivery-html"><?php echo $defaultHtml ?></div>

<br>
</div>

и код Ajax:

  <script>
Event.observe('zip-check', 'click', function(event){
new Ajax.Request("<?php echo $this->getUrl('checkdelivery/index/index') ?>", {
method: "get",
parameters: {zipcode : $('zipcode').value },
onSuccess: function(transport) {
var json = transport.responseText.evalJSON();
$('delivery-message').update(json.message);
$('delivery-message').setStyle({ color: json.color});
$('delivery-html').update(json.html);
}
});
});

layout.xml

   <layout version="0.1.0">

<catalog_product_view>
<reference name="right" >
<block type="checkdelivery/checkdelivery" before="-" name="checkdelivery">
<action method="setTemplate" ifconfig="checkdelivery/general/active">
<template>checkdelivery/checkdelivery.phtml</template>
</action>
</block>
</reference>
</catalog_product_view>
<catalog_product_view>
<block type="checkdelivery/checkdelivery" before="-" name="checkdelivery">
<action method="setTemplate" ifconfig="checkdelivery/general/active">
<template>checkdelivery/checkdelivery.phtml</template>
</action>
</block>
</catalog_product_view>

0

Решение

Обновите ваш макет следующим образом

<catalog_product_view>
<reference name="content">
<block type="checkdelivery/checkdelivery" name="checkdelivery" as="checkdelivery">
<action method="setTemplate" ifconfig="checkdelivery/general/active">
<template>checkdelivery/checkdelivery.phtml</template>
</action>
</block>
</reference>
</catalog_product_view>

и вызвать блок в product / view.phtml следующим образом:

echo $this->getChildHtml('checkdelivery')
1

Другие решения

Используйте это внутри вашего local.xml файл.

<layout>
<catalog_product_view>
<remove name="checkdelivery" />
<reference name="content">
<block type="checkdelivery/checkdelivery" name="checkdelivery">
<action method="setTemplate" ifconfig="checkdelivery/general/active">
<template>checkdelivery/checkdelivery.phtml</template>
</action>
</block>
</reference>
</catalog_product_view>
</layout>

Тогда назовите свой блок внутри view.phtml как это.

<?php echo $this->getChildHtml('checkdelivery') ?>
0

По вопросам рекламы [email protected]