php-无法在WooCommerce中获得产品重量

我正在尝试在插件中获取产品重量,以将其显示在单独输入框中的边栏上.但是我无法获得产品的重量.

请看一下我的代码,并帮助我从WooCommerce产品获得产品重量:

<?php
/**
 * Plugin Name: Calculator
 * Plugin URI: http://wordpress.org/
 * Description: Calculate
 * Version: 1.0.0
 * Author: wtm
 * Author URI: http://wtynet.com
 */

if ( !defined( 'ABSPATH' ) ) exit; // Exit if accessed directly

if ( !in_array( 'woocommerce/woocommerce.php', apply_filters( 'active_plugins', get_option( 'active_plugins' ) ) ) ) return; // Check if WooCommerce is active

add_action( 'woocommerce_product_meta_end', 'showtest', 10 );
function showtest(){

$prweight = WC_Product::get_weight();
echo "<div style='border: 2px solid #43515f; padding: 10px; text-align:center;'>";

your_css_and_js();
echo "<input id= 'prweight' type='text' value='".$prweight."'>";

echo "</div>";

}

function your_css_and_js() {
wp_register_style('your_css_and_js', plugins_url('css/style.css',__FILE__ ));
wp_enqueue_style('your_css_and_js');
wp_register_script( 'your_css_and_js', plugins_url('js/script.js',__FILE__ ));
wp_enqueue_script('your_css_and_js');

}

?>

谢谢.

解决方法:

我已经测试了您的代码,并且对这一部分做了一些更改,以获取更多信息:

add_action( 'woocommerce_product_meta_end', 'showtest', 10 );

function showtest(){
    global $product;

    $prweight = $product->weight;
    // or
    // $prweight = $product->get_weight();

    echo '<div style="border: 2px solid #43515f; padding: 10px; text-align:center;">';

    your_css_and_js();
    echo '<input id="prweight" type="text" value="'.$prweight.'">';

    echo '</div>';
}

这已经过测试并且可以工作.

上一篇:php-当woocommerce产品中不存在任何内容时,隐藏自定义选项卡


下一篇:mysql-WordPress SQL查询产品X的用户名和姓氏?