Php 获取WooCommerce属性值(url)以将其用作href链接
我在WooCommerce中有一个属性:demo_url。每个产品都有自己的URL插入其中 我还在“添加到购物车”附近添加了一个按钮,这样用户就可以轻松地在头上查看产品(眼镜店)。单击此按钮将用户重定向到外部应用程序。每个眼镜都有不同的点击链接 我试过这样的方法:Php 获取WooCommerce属性值(url)以将其用作href链接,php,wordpress,woocommerce,attributes,product,Php,Wordpress,Woocommerce,Attributes,Product,我在WooCommerce中有一个属性:demo_url。每个产品都有自己的URL插入其中 我还在“添加到购物车”附近添加了一个按钮,这样用户就可以轻松地在头上查看产品(眼镜店)。单击此按钮将用户重定向到外部应用程序。每个眼镜都有不同的点击链接 我试过这样的方法: echo '<a href="'.$demo_url.'" target="_blank">Text</a>'; echo'; 但它根本不起作用。我尝试过使用不同的全局变量(如$currentday),但没
echo '<a href="'.$demo_url.'" target="_blank">Text</a>';
echo';
但它根本不起作用。我尝试过使用不同的全局变量(如$currentday
),但没有可用的
我非常需要这个。你能帮忙吗
感谢使用产品属性,您应该使用自定义字段(产品页面“常规设置”选项卡中的自定义字段) 这是代码:
// Create and display the custom field in product general setting tab
add_action( 'woocommerce_product_options_general_product_data', 'add_custom_field_general_product_fields' );
function add_custom_field_general_product_fields(){
global $post;
$value = get_post_meta( $post->ID, '_demo_url', true );
if(empty($value))
$value = '';
echo '<div class="options_group">';
woocommerce_wp_text_input( array(
'id' => 'demo_url',
'label' => __( 'Demo Url', 'woocommerce' ),
'placeholder' => 'http://',
'desc_tip' => 'true',
'description' => __( 'Enter the Demo Url.', 'woocommerce' ),
'value' => $value
) );
echo '</div>';
}
// Save the custom field
add_action( 'woocommerce_process_product_meta', 'save_custom_field_general_product_fields' );
function save_custom_field_general_product_fields( $post_id){
// Text Field
$demo_url = $_POST['demo_url'];
if( !empty( $demo_url ) )
update_post_meta( $post_id, '_demo_url', esc_attr( $demo_url ) );
}
//在“产品常规设置”选项卡中创建并显示自定义字段
添加操作('woocommerce\u product\u options\u general\u product\u data'、'add\u custom\u field\u general\u product\u fields');
函数添加\自定义\字段\常规\产品\字段(){
全球$员额;
$value=get_post_meta($post->ID,'u demo_url',true);
if(空($value))
$value='';
回声';
woocommerce_wp_text_输入(数组(
'id'=>'demo_url',
'label'=>\('Demo Url','woocommerce'),
'占位符'=>'http://',
'desc_tip'=>'true',
“description'=>”(输入演示Url),“woocommerce”),
“值”=>$value
) );
回声';
}
//保存自定义字段
添加操作('woocommerce\u process\u product\u meta'、'save\u custom\u field\u general\u product\u fields');
函数保存\自定义\字段\常规\产品\字段($post\ id){
//文本字段
$demo\u url=$\u POST['demo\u url'];
如果(!空($demo_url))
更新发布元数据($post\u id,''u demo\u url',esc\u attr($demo\u url));
}
代码可以放在活动子主题(或主题)的任何php文件中,也可以放在任何插件php文件中
这段代码经过测试,可以正常工作。。。然后你会得到这个:
现在,您可以添加代码:
// If you dont have the product id use this:
$global $product;
$product_id = $product->get_id();
// Getting your custom product demo URL
$demo_url = get_post_meta( $product_id, '_demo_url', true );
// Add it to your button:
echo '<a href="'.$demo_url.'" target="_blank">Text</a>';
//如果您没有产品id,请使用以下命令:
$global$产品;
$product_id=$product->get_id();
//获取自定义产品演示URL
$demo\u url=get\u post\u meta($product\u id,'u demo\u url',true);
//将其添加到您的按钮:
回声';