Покажите «Бесплатная загрузка» вместо цены 0 для Easy Digital Downloads - PullRequest
0 голосов
/ 10 февраля 2020

Мне нужно установить пользовательский текст, такой как «Бесплатная загрузка» вместо цены 0 для Easy Digital Download как для одиночной, так и для переменной цены.

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

function sumobi_edd_free_download_text_args( $args ) {
    // Enter the button text for a free download
    $free_download_text = 'Free download';
    $variable_pricing = edd_has_variable_prices( $args['download_id'] );
    if ( $args['price'] && $args['price'] !== 'no' && ! $variable_pricing ) {
        $price = edd_get_download_price( $args['download_id'] );
        if ( 0 == $price ) {
            $args['text'] = $free_download_text;
        }
    }
    return $args;
}
add_filter( 'edd_purchase_link_args', 'sumobi_edd_free_download_text_args' );

Как это вообще возможно? Я имею в виду, что могу ясно видеть часть $variable_pricing = edd_has_variable_prices, но вместо этого она меняет единую цену.

Редактировать: теперь я почти уверен, что все это имеет отношение к строке $args['text'] = $free_download_text;, если бы я мог добавить «цена» к этой строке, тогда она перезапишет 0 цен. Я попробовал это, но это не сработало: $args['text'] && $args['price'] = $free_download_text;

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