如何通过使用元素或小部件“短代码”或“ html”来回显产品库存数量?

时间:2019-04-30 04:55:12

标签: wordpress woocommerce elementor

我是一名wordpress初学者,我只能使用elementor pro来编辑我的网站。 我正在使用OceanWP Theme,并试图在正常的WordPress页面中显示产品数量。 我已经尝试使用elementor的“产品库存”小部件来回显数量,但是在正常的WordPress页面中它不起作用。

我知道“产品库存”小部件仅在“单个产品页面”中有效,但是我想在正常页面中显示库存数量。 我不懂编码,所以我真的在这个问题上挣扎。 请教我该怎么做或如何通过给定产品ID =“ 16”通过elementor或“ Shortcode”或“ HTML”小部件回显产品库存数量吗?

您的答复将不胜感激。 感谢您的宝贵时间。

1 个答案:

答案 0 :(得分:0)

为此,我们需要自定义简码。 代码在下面,您只需在活动主题的function.php文件中添加以下代码。

if( !function_exists('get_specific_product_stock_quantity') ) {

    function get_specific_product_stock_quantity( $arg ) {

        // Shortcode Attributes
        $arg = shortcode_atts(
            array(
                'id' => '', // Product ID argument
            ),
            $arg,
            'product_qty'
        );

        if(empty($arg['id'])) return;

        $stock_quantity = 0;

        $product = wc_get_product(intval($arg['id']));
        $stock_quantity = $product->get_stock_quantity();

        if( $stock_quantity > 0 ) return $stock_quantity;

    }

    add_shortcode( 'product_stock', 'get_specific_product_stock_quantity' );

}

将代码添加到function.php之后,然后在下面检查简码的工作方式,并使用任何编辑器作为elementor或php文件。

该简码与ID参数(目标产品ID)一起使用。

示例:您需要产品ID =“ 16”的库存

1)在WordPress页面或帖子内容中,只需将此短代码粘贴到诸如elementor之类的文本编辑器中,即可显示给定产品ID(此处的ID为16)的库存数量:

[product_stock id="16"]

2)在任何PHP代码中(示例):

echo '<p>Product stock quantity is: '.do_shortcode( '[product_stock id="16"]' ).'</p> ';

3)在HTML / PHP页面中(示例):

<p>Product stock quantity is: <?php echo do_shortcode( '[product_stock id="16"]' ); ?></p>

希望现在您拥有了一切,让我仍然知道需要帮助。