Хук Woocommerce is_purchasable () приводит к «Извините, этот продукт нельзя купить». - PullRequest
0 голосов
/ 07 апреля 2020

Я хочу иметь что-то вроде этого, поле с именем 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;
    }

}

Теперь проблема в том, что после добавления этого фильтра я получаю «Извините, этот продукт нельзя купить.» Пожалуйста, скажите мне, что я делаю неправильно, или есть что-то еще, что я должен сделать .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...