我向您展示了一个示例,我们如何在woocommerce单一产品页面上注册自定义字段。
//添加并显示其他产品定价自定义字段
add_action( 'woocommerce_product_options_pricing', 'additional_product_pricing_option_fields', 50 );
function additional_product_pricing_option_fields() {
$domain = "woocommerce";
global $post;
echo '</div><div class="options_group pricing show_if_simple show_if_external show_if_composite">';
woocommerce_wp_text_input( array(
'id' => '_purchase_price',
'label' => __("Purchase price", $domain ) . ' ('. get_woocommerce_currency_symbol() . ')',
'placeholder' => '',
'description' => __("Rate margin explanation goes here…", $domain ),
'desc_tip' => true,
) );
echo '<input type="hidden" name="_custom_price_nonce" value="' . wp_create_nonce() . '">';
}
这就是我们可以保存此→
//实用程序功能,用于保存“购买价格”自定义字段值
function saving_rate_margin_and_purchase_price( $product ) {
// Security check
if ( isset($_POST['_custom_price_nonce']) && ! wp_verify_nonce($_POST['_custom_price_nonce']) ) {
return;
}
// Save "Rate margin" and "Purchase_price" custom fields values
if( isset(isset($_POST['_purchase_price']) ) {
$product->update_meta_data('_purchase_price', sanitize_text_field( (float) $_POST['_purchase_price'] ) );
}
}
但是我们怎么输出呢?
类比: 假设我们希望输出Wordpress帖子的标题。我们将这样做:
<?php the_title(); ?>
以同样的方式如何输出上面添加的自定义字段