Как вывести кнопку купить в один клик только в определенных категориях
Чтобы вывести кнопку “купить в один клик” только в нужных категориях нужно добавить такой код в плагин https://support.wpshop.ru/docs/general/profunctions/
function is_product_in_category( $post_id, $category ) {
$terms = get_the_terms( $post_id, 'product_cat' );
$categories = is_array( $category ) ? $category : [ $category ];
foreach ( $terms as $term ) {
if ( is_numeric( $category ) ) {
if ( in_array( $term->term_id, $categories ) ) {
return true;
}
} else {
if ( in_array( $term->slug, $categories ) ) {
return true;
}
}
}
return false;
}
add_filter( 'bono_one_click_buy:show_button', function ( $enabled ) {
if ( ! $enabled ) {
return false;
}
global $product;
$categories = [ 'clothing', 'tshirts' ]; // список нужных категорий
if ( $product && is_product_in_category( $product->get_id(), $categories ) ) {
return true;
}
return false;
} );
Это будет работать с версии 1.3.0, в которой появился хук bono_one_click_buy:show_button
Вам помог ответ?