Подписки WooCommerce: удалить кнопку «Просмотр продуктов» на странице моей учетной записи

Я хочу удалить кнопку «Просмотреть продукты» на странице подписки в разделе «Моя учетная запись».

Я нашел вывод в файле шаблона my-subscriptions.php. Но нет фильтра, чтобы удалить его без редактирования файла шаблона.

Есть ли другой способ сделать это? Может есть способ изменить ссылку кнопки (на конкретный товар) и текст?

Это код ссылки:

<a class="woocommerce-Button button" href="<?php echo esc_url( apply_filters( 'woocommerce_return_to_shop_redirect', wc_get_page_permalink( 'shop' ) ) ); ?>">
    <?php esc_html_e( 'Browse products', 'woocommerce-subscriptions' ); ?>
</a>

person Cray    schedule 28.04.2020    source источник


Ответы (2)


add_action( 'wp_head', 'hide_browse_product_element', 100 );

function hide_browse_product_element() {
    echo "<style> .no_subscriptions{display:none;} </style>";
}

Попробуйте этот фрагмент кода

Если вы хотите изменить текст без переопределения шаблона, попробуйте это

function change_browse_product_element( $translated_text, $text, $domain ) {
    switch ( $translated_text ) {
        case 'Browse products' :
            $translated_text = __( 'My Button Text', 'woocommerce' );
            break;
    }
    return $translated_text;
}

add_filter( 'gettext', 'change_browse_product_element', 20, 3 );

Отсюда

Для изменения ссылки используйте приведенный ниже код.

add_filter( 'woocommerce_return_to_shop_redirect', 'mujuonly_rediect_browse_product' );

function mujuonly_rediect_browse_product( $url ) {
    return "https://www.google.com";
}
person mujuonly    schedule 28.04.2020
comment
Спасибо, но я ищу способ не скрывать кнопку с помощью CSS. - person Cray; 28.04.2020
comment
Замечательно. Есть ли способ изменить ссылку кнопки. Я думаю, что есть фильтр для этого. Смотрите мое редактирование в моем вопросе - person Cray; 28.04.2020

Вы можете скрыть с помощью css:

div.woocommerce-Message.woocommerce-Message--info.woocommerce-info 
a.woocommerce-Button.button
{

 visibility: hidden !important;
}

В любом случае скрыть с помощью css просто скрыть все окна сообщений, так что не знаю, будет ли это полезно для вас или кого-то.

person MrBi    schedule 27.06.2021