Режим каталога для переменных продуктов на основе геолокации в Woocommerce - PullRequest
0 голосов
/ 04 мая 2020

Я пытаюсь включить режим каталога для магазина WooCommerce для пользователей, расположенных повсюду, кроме Австралии.

В магазине есть 2 типа товаров

  • простой
  • переменная

Я пытался " Превратить магазин Woocommerce в каталог для стран с географическим местоположением? " код ответа, и он хорошо работает для "простых" продуктов

Проблема в том, что переменные продукты по-прежнему отображают поле количества и добавляют в корзину, хотя их нельзя купить.


Насколько я понимаю, режим каталога по существу создает товары, которые нельзя приобрести.

Если бы я мог сообщить коду для поиска типа продукта "переменная", используя что-то вроде $product->is_type( 'variable' ), это может относиться к обоим типам товара.


Я попробовал это, которое, очевидно, не сработало. Скорее всего, функция не может принимать несколько переменных:

//Disable purchasing of products if the country is not Australia
add_filter('woocommerce_is_purchasable', 'purchasable_country_based', 10, 2);
function purchasable_country_based( $is_purchasable, $product, $product->is_type( 'variable' ) ) {
    // Enable for "AU" only geolocated users country
    if( get_geolocated_user_country() ==='AU' )
        return true;
    else
        return false;
}

Так что я думаю, что мог бы добавить еще один экземпляр кода, но на этот раз для целевых переменных продуктов. Я попробовал следующее, но это также не сработало:

//Disable variable products if the country is not Australia
add_filter('woocommerce_is_purchasable', 'purchasable_country_based', 10, 2);
function purchasable_country_based( $is_purchasable, $product->is_type( 'variable' ) ) {
    // Enable for "AU" only geolocated users country
    if( get_geolocated_user_country() ==='AU' )
        return true;
    else
        return false;
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...