如何向div添加功能

时间:2019-08-08 13:48:04

标签: php wordpress woocommerce

我正在尝试添加功能,以在销售徽章下方显示产品的价格,但是我在代码方面遇到麻烦..它在前端工作正常,但是wordpress发现错误并在后端显示错误(当我打开插件设置时。)

添加此内容的正确方法是什么?

Fatal error: Uncaught Error: Call to a member function get_price_html() on null in /wp-content/plugins/yith-woocommerce-badge-management-premium/templates/badge_content_premium.php:36 Stack trace: #0 
/wp-content/plugins/yith-woocommerce-badge-management-premium/functions.yith-wcbm.php(205): include() #1 
/wp-content/plugins/yith-woocommerce-badge-management-premium/functions.yith-wcbm-premium.php(807): yith_wcbm_get_template('badge_content_p...', Array) #2 
/wp-content/plugins/yith-woocommerce-badge-management-premium/class.yith-wcbm-admin-premium.php(109): yith_wcbm_get_badge_premium(364, 'preview') #3 
/wp-includes/class-wp-hook.php(286): YITH_WCBM_Admin_Premium->badge_custom_columns('yith_wcbm_previ...' in 
/wp-content/plugins/yith-woocommerce-badge-management-premium/templates/badge_content_premium.php on line 36

这是我在第36行添加的代码

<div class='<?php echo $badge_classes ?> yith-wcbm-badge-custom' <?php echo $position_data_html ?>>

            <div class='yith-wcbm-badge__wrap'>
                <div class="yith-wcbm-badge-text"><b><?php echo $text ?>
LINE 36-      <div class="roundedborder"><?php echo $product->get_price_html(); ?></b></div></div>
            </div><!--yith-wcbm-badge__wrap-->
        </div><!--yith-wcbm-badge-->

我尝试定义$ product,显然我做错了也尝试了global $woocommerce; $product = new WC_Product(get_the_ID());,但没有一个能解决问题

2 个答案:

答案 0 :(得分:0)

由于您的$ product为空而生成此错误,请尝试获取产品对象而不是获取价格

答案 1 :(得分:-1)

似乎对象$ product不存在。 这是同样的问题,可能会对您有所帮助:

Fatal error: Call to a member function get_price_html() on a non-object

<?php
    global $woocommerce;
    $product = new WC_Product(get_the_ID()); 
    echo $product->get_price_html(); //Shows the price
?>
相关问题