我们如何禁用特定产品的单一产品页面?
例如,我们有一些产品有变化。在这种情况下,我们使用单一产品页面。但对于没有变化的产品,我们只需在着陆页上使用添加到购物车链接,并跳过单个产品页面,这只会为客户增加额外的步骤。
我找到了this post,其中概述了如何禁用所有单个商品页面。但我想针对被禁用的页面。无论是产品编号还是产品清单类型,即。变量,非变量。
在不破坏WooCommerce或导致搜索引擎优化问题的情况下,最好的方法是什么?
澄清:禁用我的意思是从购物车等区域删除指向该页面的链接。
答案 0 :(得分:0)
在以下功能中,您必须在代码中定义一个或多个产品ID。
此第一个挂钩功能将从产品目录中删除产品:
add_filter( 'woocommerce_product_is_visible', 'filter_product_is_visible', 20, 2 );
function filter_product_is_visible( $is_visible, $product_id ){
// HERE define your products IDs (or variation IDs) to be set as not visible in the array
$targeted_ids = array(37, 43, 51);
if( in_array( $product_id, $targeted_ids ) )
$is_visible = false;
return $is_visible;
}
要从购物车页面中的购物车商品中删除该链接,您可以使用以下
add_filter( 'woocommerce_cart_item_name', 'filter_cart_item_name', 20, 3 );
function filter_cart_item_name( $product_name, $cart_item, $cart_item_key ) {
// HERE define your products IDs (or variation IDs) to be set as not visible in the array
$targeted_ids = array(37, 43, 51);
if( in_array( $cart_item['data']->get_id(), $targeted_ids ) && is_cart() )
return $cart_item['data']->get_name();
return $product_name;
}
代码进入活动子主题(或活动主题)的function.php文件。经过测试并正常工作。
也可以将目标产品页面重定向到主要商店。