woocommerce скрывает стоимость подписки в размере 0,00 долл. при предоплате - PullRequest
0 голосов
/ 30 октября 2018

Я нашел код, похожий на тот, что я ищу, но это лучшее, что я могу придумать на данный момент.

Как правило, когда у меня есть продукты по подписке, при этом существует предоплата в размере 170 долларов США и ежемесячная плата в размере 0,00 долларов США в течение 12 месяцев.

На странице моего продукта отображается "От: $ 0,00 / месяц и плата за регистрацию в размере $ 170,00"

Я хочу удалить «От: 0,00 долл. США в месяц и a» и просто оставить «170 долл. Единовременный платеж» на экране, если продукт имеет ежемесячную плату 0. Лучший код, который я могу придумать, это ниже (который решает проблему, но не может удалить сумму в 0,00 $

function change_subscription_product_string( $subscription_string, $product, $include )
{
    if( $include['sign_up_fee'] ){
        $subscription_string = str_replace('sign-up fee', 'one-off payment', $subscription_string);
        $subscription_string = str_replace('and a ', "", $subscription_string);
        $subscription_string = str_replace('.00', "", $subscription_string);
        $subscription_string = str_replace(' / month and a', "/ month,", $subscription_string);
        $subscription_string = str_replace('From: ', "", $subscription_string);

}

    return $subscription_string;

}

add_filter( 'woocommerce_subscriptions_product_price_string', 'change_subscription_product_string', 10, 3 );
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...