【问题标题】:magento 1.9 stock qty shipping message php codemagento 1.9 stock qty shipping message php code
【发布时间】:2019-02-15 02:07:27
【问题描述】:

已编辑---

不确定帖子发生了什么..它缺少我的大部分解释..无论如何..

当产品的某些变量存在时,我有显示特定运输时间的现有代码.. 例如 sku、cat id.. 等。

这是我使用的代码

'

                            $sku_code = substr($_product->getSku(), 0, 1);  
                        ?>                          
                        <?php if (in_array(307, $_product->getCategoryIds())): ?> 
                            <?php echo $this->__('Shipped in 25 days') ?>
                        <?php elseif (in_array(317, $_product->getCategoryIds())): ?>
                            <?php echo $this->__('Shipped in 28 days') ?>
                        <?php elseif (in_array(300, $_product->getCategoryIds()) || in_array(302, $_product->getCategoryIds()) || in_array(304, $_product->getCategoryIds()) || in_array(308, $_product->getCategoryIds()) || in_array(310, $_product->getCategoryIds()) || in_array(357, $_product->getCategoryIds()) || in_array(359, $_product->getCategoryIds())): ?>
                            <?php echo $this->__('Shipped in 17 days') ?> 
                        <?php elseif (in_array(291, $_product->getCategoryIds())): ?>
                            <?php echo $this->__('Shipped in 2 to 5 days') ?> 
                        <?php elseif ($sku_code == 'F' || $sku_code == 'G' || $sku_code == 'P'): ?>
                            <?php echo $this->__('Shipped in 1 to 3 days') ?> 
                        <?php //elseif ($sku_code == 'A'): ?>
                            <?php //echo $this->__('Shipped in 28 days') ?> 

                       <?php else: ?> 
                            <?php echo $this->__('Shipped in 3 to 7 days') ?>
                        <?php endif; ?>'

然而,我想要做的是添加一个语句,检查产品数量是否为 0.. 然后将发货天数显示为更高的数量,并显示它在延期交货的消息。

我试过代码<?php elseif ($_product->getQty() <= 0 ): ?> <?php echo $this->__('Item on backorder Ships in 7-21 days') ?>

但无论数量如何,它都只会显示消息..(即,如果它的数量为 2,它仍然显示')所以我想请你就修复我的线路提出建议。

谢谢

【问题讨论】:

  • 如果您发布更多详细信息,将更容易获得帮助,最重要的是:您的问题是什么?目前,我们不知道您是否需要帮助以了解将代码放置在 何处,或者您是否需要帮助,因为您有 错误...无论如何,请多做具体并给我们更多细节:)
  • 嗨,布鲁诺,不知道帖子发生了什么。它缺少我的大部分解释。无论如何。我有现有的代码,当产品的某些变量存在时,它会显示特定的运输时间。 . 例如 sku、cat id.. 等。这是我使用的代码
  • 不用担心...很高兴您找到了答案。感谢分享!

标签: product magento-1.9 stock


【解决方案1】:

我解决了这个问题, 加载到你的文件中

&lt;?php $stock = Mage::getModel('cataloginventory/stock_item')-&gt;loadByProduct($_product);?&gt;

然后

<?php if ($stock->getQty()==0): ?> <?php echo $this->__('ships in 21-28 days')?>

在代码中。它现在检查数量是否为 0 并且不高于或低于。它就像我需要自定义消息一样工作。

希望这对其他人有所帮助。

我还更改了 instock 以在 default.php 上显示为延期交货,这样当 qty 为 0 时,它显示为延期交货而不是 instock,因为我允许后端的数量低于 0。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-08-15
    • 2016-04-05
    • 2018-10-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-09-13
    • 1970-01-01
    相关资源
    最近更新 更多