Custom Availability not working anywmore with new template [magento 1.9]
-
16-02-2021 - |
Pergunta
When I set up a product in stock "-1" the availability is not displayed, the product always displays "In Stock".
Is it possible to add a condition for products in stock "-1" to display the "Availability" custom message set in product ? (and keep In Stock/Out of Stock)
file: /app/design/frontend/default/themeXXXX/template/catalog/product/view.phtml
<?php if ($_product->getTypeId() == "simple"): ?>
<?php if ($this->displayProductStockStatus()): ?>
<?php if ($_product->isAvailable()): ?>
<p class="availability in-stock"><?php echo $this->__('Availability:') ?> <span style="color:#74b436"><?php echo $this->__('In stock') ?></span></p>
<?php else: ?>
<p class="availability out-of-stock"><?php echo $this->__('Availability:') ?> <span><?php echo $this->__('Out of stock') ?></span></p>
<?php endif; ?>
Solução 2
This method with an atribute works
<?php if ($_product->getTypeId() == "simple"): ?>
<?php if ($this->displayProductStockStatus()): ?>
<?php if ($_product->isAvailable()): ?>
<?php $stock = Mage::getModel('cataloginventory/stock_item')->loadByProduct($_product->getId()); ?>
<?php if($stock->getQty()==-1): ?>
<?php if($_product->getDispo()) : ?>
<p class="availability in-stock"><?php echo $this->__('Availability:') ?> <span style='color: #FF0000;'><?php echo $_product->getDispo(); ?></span></p>
<?php endif; ?>
<?php else : ?>
<p class="availability in-stock"><?php echo $this->__('Availability:') ?> <span style="color:#74b436"><?php echo $this->__('In stock') ?></span></p>
<?php endif; ?>
<?php else: ?>
<p class="availability out-of-stock"><?php echo $this->__('Availability:') ?> <span><?php echo $this->__('Out of stock') ?></span></p>
<?php endif; ?>
<?php endif; ?>
Outras dicas
Try this, It's not tested but it should work
<?php if ($_product->getTypeId() == "simple"): ?>
<?php if ($this->displayProductStockStatus()): ?>
<?php if ($_product->isAvailable() || $_product->getQty() == "-1" ): ?>
<p class="availability in-stock"><?php echo $this->__('Availability:') ?> <span style="color:#74b436"><?php echo $this->__('In stock') ?></span></p>
<?php else: ?>
<p class="availability out-of-stock"><?php echo $this->__('Availability:') ?> <span><?php echo $this->__('Out of stock') ?></span></p>
<?php endif; ?>
<?php endif; ?>
<?php endif; ?>
Update:
<?php if ($_product->getTypeId() == "simple"): ?>
<?php if ($this->displayProductStockStatus()): ?>
<?php if ($_product->isAvailable() || $_product->getQty() == "-1" ): ?>
<p class="availability in-stock"><?php echo $this->__('Availability:') ?> <span style="color:#74b436"><?php echo $_product->getAvailability(); ?></span></p>
<?php else: ?>
<p class="availability out-of-stock"><?php echo $this->__('Availability:') ?> <span><?php echo $this->__('Out of stock') ?></span></p>
<?php endif; ?>
<?php endif; ?>
<?php endif; ?>
Licenciado em: CC-BY-SA com atribuição
Não afiliado a magento.stackexchange