Я хочу иметь что-то вроде этого, поле с именем ACTIVE: YES / NO, если Active = YES, продукт можно будет приобрести, кнопка «Добавить в корзину» будет видна, в противном случае кнопка «Добавить в корзину» не будет видна.
Для каждого продукта в woocommerce я добавляю поле product_meta, называемое активным, и оно сохраняется, эта часть работает отлично.
Теперь, основываясь на этом поле, я принимаю решение is_purchasable.
add_filter('woocommerce_is_purchasable', 'pfs_is_purchasable', 10, 2);
function pfs_is_purchasable( $is_purchasable, $object ) {
global $post;
$active_status = get_post_meta($post->ID, '_product_is_active', true );
error_log('active_status :' . $active_status );
if($active_status == 'YES'){
return true;
}
else{
return false;
}
}
Теперь проблема в том, что после добавления этого фильтра я получаю «Извините, этот продукт нельзя купить.» Пожалуйста, скажите мне, что я делаю неправильно, или есть что-то еще, что я должен сделать .