【问题标题】:Add an elseif statement for wordpress page using woocommerce使用 woocommerce 为 wordpress 页面添加 elseif 语句
【发布时间】:2013-11-12 16:51:04
【问题描述】:

我尝试了几种不同的方法,但效果不佳。我正在尝试添加一个 elseif,如果在使用 Woocommerce 的 wordpress.org 网站上留空,我可以回显“查询价格”而不是价格。相反,价格显示为 0 或 EnquireforPrice£0。我们的自定义主题没有 price.html 或 loop.html 文件,所以我无法编辑它们。单一产品(woocommerce 文件夹)中的 price.html 文件显示 EnquireforPrice£(无论原始价格是多少),当我尝试使用我在 this wordpress woocommerce support thread 上找到的 elseif 进行编辑时

这是我当前的代码,它不允许查询价格,出于某种原因,我对如何让它工作一无所知。

<?php echo ($product->get_stock_quantity() < 1) ? '<span class="sold">Sold</span>' : null; ?><?php if ($product->get_stock_quantity() != 0) : ?><p class="price"><?php echo woocommerce_price(get_post_meta(get_the_ID(), '_price', true)); ?></p><?php endif; ?>

基本上,如果单个产品价格中的价格留空,我需要它说查询价格,但如果有价格列出价格。它应该是直截了当的,但由于某种原因它根本不是。

感谢您提供的任何帮助!

PS 我也尝试过应该可以做到这一点的 wordpress 插件,但它们只能在产品页面上工作,在主页和搜索页面上留下 £0。

【问题讨论】:

    标签: php wordpress if-statement woocommerce


    【解决方案1】:

    我已经下载了 woocommerce 并让它为我工作。打开

    plugins/woocommerce/templates/single-product/price.php
    

    找到这一行

    <p itemprop="price" class="price"><?php echo $product->get_price_html(); ?></p>
    

    用下面的代码替换它

    <p itemprop="price" class="price">
        <?php 
            $price = $product->get_price_html();
            if(empty($price))
            {
                echo '<a href="link">Anchor Text</a>';
            }
            else
            {
                echo $price;
            }; 
        ?>
    </p>
    

    【讨论】:

    • 遗憾的是,它没有显示应有的价格...而是将其更改为仅在价格留空时才应显示的文本。
    • 抱歉,澄清一下,无论如何它总是显示锚文本。因此不再显示价格,只显示锚文本。
    • 啊...我需要它来显示价格,如果在 woocommerce 中没有设置价格来显示锚文本。感谢您的尝试!
    • @user2945487 我已经更新了我的答案。我实际上下载了 woocommerce 并测试了上述内容,它在单个产品页面上为我工作
    • @user2945487 另请记住,如果您使用此解决方案并更新插件,则必须重新输入此代码。
    猜你喜欢
    • 2012-07-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-09-11
    相关资源
    最近更新 更多