Magento Themes and Magento Extensions

Add a Backorder Message on Magento’s Product Page

Share

Magento’s use of backorders does notify the customer, but only once you actually reach the basket page, which can lead to disappointment and frustration from the customer. The better answer is to display this on the product page, in place of the “In Stock” message.

To acheive this, we just need to amend (read: override) the templates at

app/design/frontend/base/default/template/catalog/product/view/type/simple.phtml app/design/frontend/base/default/template/catalog/product/view/type/grouped.phtml app/design/frontend/base/default/template/catalog/product/view/type/configurable.phtml

And amend it to look like this:

<?php $_product = $this->getProduct() ?>
<?php echo $this->getPriceHtml($_product) ?>
<?php $stockLevel = (int)Mage::getModel('cataloginventory/stock_item')->
loadByProduct($_product)->getQty(); ?>

<?php if($_product->isSaleable()<strong> && $stockLevel > 0</strong>): ?>
    <p><?php echo $this->__('Availability:') ?> <span><?php echo $this->__('In stock') ?>
</span></p>
<?php elseif($_product->isSaleable() && $stockLevel <= 0): ?>
    <p>
        <?php echo $this->__('Availability:') ?> <span><?php echo $this->__
('Available for Backorder') ?></span><br />
        <?php echo $this->__('Please allow up to two weeks for delivery') ?>
    </p>
<?php else: ?>
    <p><?php echo $this->__('Availability:') ?> <span><?php echo $this->__('Out of stock') ?>
</span></p>
<?php endif; ?>

Comments are closed.