使用 Wordpress 自定义字段隐藏特定页面的 WooCommerce 描述和附加信息和评论选项卡
Hide For Specific Pages WooCommerce Description & Additional information & Reviews Tabs Using Wordpress Custom Fields
我正在尝试创建一个系统,通过该系统我可以删除产品标签,但只能在某些单个产品页面上删除,并且我需要定义哪些页面要使用 wordpress 自定义字段隐藏其产品标签。我要调用的自定义字段名称:'hide_product_page_tabs' 定义值必须是“1”或“0”才能表示是或否。
我在我选择的 woocommerce 产品页面上创建了一个新的 Wordpress 自定义字段。
自定义字段名称:hide_product_tabs
自定义字段值:在自定义字段中定义“1”以触发代码,或定义“0”等其他任何内容以将其关闭。
我把我的 child 主题放在 functions.php :
/* WooCommerce hide product page tabs - hide_product_tabs */
/**
* Remove existing tabs from single product pages.
* https://gist.github.com/mikejolley/c75083db7f6110cbdbe4808e3af36fe3
*/
function remove_woocommerce_product_tabs( $tabs ) {
unset( $tabs['description'] );
unset( $tabs['reviews'] );
unset( $tabs['additional_information'] );
return $tabs;
}
function hide_product_page_tabs() {
global $post;
$product_id = $post->ID;
$HideProductTabsValue = get_post_meta($product_id,'hide_product_tabs',true);
if (strpos($HideProductTabsValue, '1') !== false) {
return add_filter( 'woocommerce_product_tabs', 'remove_woocommerce_product_tabs', 98 );
}
}
add_action('woocommerce_single_product_summary','hide_product_page_tabs');
欢迎任何提示!
根据您的描述,没有看到您为此使用的代码,您可以简单地使用以下内容
function hide_product_tabs( $tabs ) {
// Get the global product object
global $product;
// Get product id
$product_id = method_exists( $product, 'get_id' ) ? $product->get_id() : $product->id;
$HideProductTabsValue = get_post_meta( $product_id, 'hide_product_tabs', true);
// 1 = true
if( $HideProductTabsValue == true ) {
unset( $tabs['description'] ); // (Description tab)
unset( $tabs['reviews'] ); // (Reviews tab)
unset( $tabs['additional_information'] ); // (Additional information tab)
}
return $tabs;
}
add_filter( 'woocommerce_product_tabs', 'hide_product_tabs', 98 );
我正在尝试创建一个系统,通过该系统我可以删除产品标签,但只能在某些单个产品页面上删除,并且我需要定义哪些页面要使用 wordpress 自定义字段隐藏其产品标签。我要调用的自定义字段名称:'hide_product_page_tabs' 定义值必须是“1”或“0”才能表示是或否。
我在我选择的 woocommerce 产品页面上创建了一个新的 Wordpress 自定义字段。
自定义字段名称:hide_product_tabs
自定义字段值:在自定义字段中定义“1”以触发代码,或定义“0”等其他任何内容以将其关闭。
我把我的 child 主题放在 functions.php :
/* WooCommerce hide product page tabs - hide_product_tabs */
/**
* Remove existing tabs from single product pages.
* https://gist.github.com/mikejolley/c75083db7f6110cbdbe4808e3af36fe3
*/
function remove_woocommerce_product_tabs( $tabs ) {
unset( $tabs['description'] );
unset( $tabs['reviews'] );
unset( $tabs['additional_information'] );
return $tabs;
}
function hide_product_page_tabs() {
global $post;
$product_id = $post->ID;
$HideProductTabsValue = get_post_meta($product_id,'hide_product_tabs',true);
if (strpos($HideProductTabsValue, '1') !== false) {
return add_filter( 'woocommerce_product_tabs', 'remove_woocommerce_product_tabs', 98 );
}
}
add_action('woocommerce_single_product_summary','hide_product_page_tabs');
欢迎任何提示!
根据您的描述,没有看到您为此使用的代码,您可以简单地使用以下内容
function hide_product_tabs( $tabs ) {
// Get the global product object
global $product;
// Get product id
$product_id = method_exists( $product, 'get_id' ) ? $product->get_id() : $product->id;
$HideProductTabsValue = get_post_meta( $product_id, 'hide_product_tabs', true);
// 1 = true
if( $HideProductTabsValue == true ) {
unset( $tabs['description'] ); // (Description tab)
unset( $tabs['reviews'] ); // (Reviews tab)
unset( $tabs['additional_information'] ); // (Additional information tab)
}
return $tabs;
}
add_filter( 'woocommerce_product_tabs', 'hide_product_tabs', 98 );