Hi,
I would like to print a message on the product page, when the quantity is 0 or less (with active backorders).
I have this code:
<?php if($_product->isSaleable()): ?> <?php echo("CUSTOM MESSAGE")?> <?php endif; ?>
I would like to recall the message with this code for example
<?php if($_product->getQty() = 0 ): ?> <?php echo("CUSTOM MESSAGE")?> <?php endif; ?>
but my code doesn’t work clearly.
Can you help me?
Hello,
Please try this in your model class!
It will work, as what you want
Thanks
<?php /** * Copyright © All rights reserved. * See COPYING.txt for license details. */ declare(strict_types=1); namespace Demo\Stock\Model; use Demo\Stock\Helper\Data as Helperdata; class StockManagement implements \Demo\Stock\Api\StockManagementInterface { protected $helperdata; public function __construct( Helperdata $helperdata ) { $this->Helperdata = $helperdata; } /** * {@inheritdoc} */ public function getStock($key) { if($key == "Ideas") { try { $result = $this->Helperdata->getProductCollection(); if (empty($result)) { $message = "Data Not Found"; }else{ $message = "Data Found"; } return $finalResult = array(array('status'=>true,'message'=>$message,'result'=>$result)); }catch (\Exception $e){ $result = ""; return $finalResult = array(array('status'=>false,'message'=>$e,'result'=>$result)); } }else{ $message = "Please enter valid Secret Key"; $result = ""; return $finalResult = array(array('status'=>false,'message'=>$message,'result'=>$result)); } } }
Thank you so much for your answer, but I can’t understand this code.
I am working with the .phtml files:
app/design/frontend/VENDOR/THEME/Magento_Catalog/templates/product/view
below the full code of my file:
<?php $_product = $block->getProduct() ?> <?php if($_product->isSaleable()): ?> <?php echo("")?> <?php else: ?> <?php echo("WARNING MESSAGE")?> <?php endif; ?>
the code works, but I would recall the code only if the product quantity is 0, even if the stock status is "In Stock".
I think it would suffice to replace this:
<?php if($_product->isSaleable()): ?>
with something like this:
<?php if($_product->Qty() ==0 ): ?>
Thanks in advance for the help.