Php Woocommerce单一产品页面按钮仅适用于特定类别
我添加了代码以在woocommerce页面上显示“查看产品示例”按钮。按钮功能正常;但是,我希望按钮只显示特定类别。我们的类别是“电子课程” 以下是我用于按钮的代码:Php Woocommerce单一产品页面按钮仅适用于特定类别,php,wordpress,woocommerce,categories,product,Php,Wordpress,Woocommerce,Categories,Product,我添加了代码以在woocommerce页面上显示“查看产品示例”按钮。按钮功能正常;但是,我希望按钮只显示特定类别。我们的类别是“电子课程” 以下是我用于按钮的代码: add_action('woocommerce_after_add_to_cart_button','custom_button_by_categories'); function custom_button_by_categories() { global $post; $demoslug = $post->post
add_action('woocommerce_after_add_to_cart_button','custom_button_by_categories');
function custom_button_by_categories() {
global $post;
$demoslug = $post->post_name;
$demourl = get_bloginfo('url').'/courses/'.$demoslug.'/';
$demotitle = esc_attr($post->post_title);
echo '<a href="'.$demourl.'" target="_blank" button type="submit" class="button sample">View Product Sample</a>';
}
add_action('woocommerce_后添加_到_cart_按钮','custom_按钮按_类别');
功能自定义按钮按类别设置(){
全球$员额;
$demoslug=$post->post\U名称;
$demourl=get_bloginfo('url')。/courses/'.$demoslug./';
$demotitle=esc\u attr($post->post\u title);
回声';
}
感谢您提供的帮助。您可以使用
has_term()
Wordpress函数(您必须在其中定义产品类别)来完成此操作
您可以通过以下方式使用优先级高于30的woocommerce\u simple\u add\u to\u cart
:
add_action( 'woocommerce_simple_add_to_cart', function(){
global $product, $post;
// Set HERE your product category (ID, name or slug)
if ( has_term( 'e-courses', 'product_cat', $post->ID ) ){
$demourl = get_bloginfo('url').'/courses/'.esc_attr($post->post_name).'/';
$demotitle = esc_attr($post->post_title);
echo '<a href="'.$demourl.'" target="_blank" button type="submit" class="button sample">View Product Sample</a>';
}
}, 31 );
add_操作('woocommerce_simple_add_to_cart',函数(){
全球$product$post;
//在此设置您的产品类别(ID、名称或slug)
如果(有术语('e-courses','product'u cat',$post->ID)){
$demourl=get_bloginfo('url')。/courses/'.esc_attr($post->post_name)。'/';
$demotitle=esc\u attr($post->post\u title);
回声';
}
}, 31 );
或者也可以使用钩子:
add_action('woocommerce_after_add_to_cart_button','custom_button_by_categories');
function custom_button_by_categories() {
// Set HERE your product category (ID, name or slug)
if ( has_term( 'e-courses', 'product_cat', $post->ID ) ){
global $post;
$demoslug = $post->post_name;
$demourl = get_bloginfo('url').'/courses/'.$demoslug.'/';
$demotitle = esc_attr($post->post_title);
echo '<a href="'.$demourl.'" target="_blank" class="button sample">View Product Sample</a>';
}
}
add_action('woocommerce_后添加_到_cart_按钮','custom_按钮按_类别');
功能自定义按钮按类别设置(){
//在此设置您的产品类别(ID、名称或slug)
如果(有术语('e-courses','product'u cat',$post->ID)){
全球$员额;
$demoslug=$post->post\U名称;
$demourl=get_bloginfo('url')。/courses/'.$demoslug./';
$demotitle=esc\u attr($post->post\u title);
回声';
}
}
代码位于活动子主题(或主题)的function.php文件或任何插件文件中
经过测试,效果良好。Loic感谢您的帮助。你建议的代码运行得很好。