如何禁用/隐藏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;
}