如何禁用/隐藏woocommerce单一产品页面?

问题描述:

我想在我的wordpress-woocommerce网站上隐藏单个产品详细信息页面。我如何在不破坏woocommerce功能的情况下实现这一目标?如何禁用/隐藏woocommerce单一产品页面?

单个页面是WordPress提供的,无法禁用它。但有一些方法可以防止访问单个产品页面。

第一个是编辑您的商店(产品档案)模板,并删除所有您有链接到单个页面的地方。

二是做每个页面负载的检查,如果该页面是一个单一的产品页面,将用户重定向到任何你想要的:

add_action('init','prevent_access_to_product_page'); 
function prevent_access_to_product_page(){ 
    if (is_product()) { 
     wp_redirect(site_url());//will redirect to home page 
    } 
} 

您可以在您的functions.php文件验证码你的孩子主题目录。请记住,我没有测试过代码。

您可以删除店铺页面上生成的锚点,该锚点永远不会将用户重定向到单个页面。为此,您必须将此代码粘贴到您的functions.php文件中。

remove_action('woocommerce_before_shop_loop_item', 'woocommerce_template_loop_product_link_open', 10); 

此代码将删除链接,但之后,你已经删除锚点关闭标签也只是它不会破坏你的HTML

remove_action('woocommerce_after_shop_loop_item', 'woocommerce_template_loop_product_link_close', 5); 

把它放在functions.php的

//Removes links 
add_filter('woocommerce_product_is_visible','product_invisible'); 
function product_invisible(){ 
    return false; 
} 

//Remove single page 
add_filter('woocommerce_register_post_type_product','hide_product_page',12,1); 
function hide_product_page($args){ 
    $args["publicly_queryable"]=false; 
    $args["public"]=false; 
    return $args; 
}