我正在尝试在我的插件中获取产品重量,以便在单独的输入框中显示在侧边栏上。但我无法获得产品重量。
请查看我的代码并帮助我从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');
}
?>
感谢。
答案 0 :(得分:4)
我已经测试了你的代码,我已经改变了一点这一部分,以获得权重:
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>';
}
这是经过测试和运作的。