Как правильно использовать has_term - PullRequest
0 голосов
/ 20 сентября 2019

Я работаю со страницей одного продукта, и мне нужно иметь другое изображение (в зависимости от категории) после кнопки добавления в корзину.

Я попробовал этот код, но он не показывает мне изображениечто мне нужно

add_action ( 'woocommerce_after_add_to_cart_button', 'content_after_button' );
function content_after_button() {
if (has_term( 'Categoria', 'Accesorios' ) ) {
echo 'https://prueba.soygorrion.com.ar/wp-content/uploads/2019/08/iconos2.jpg';
}

Я думаю, что я неправильно использую has_term.

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

спасибо

Ответы [ 2 ]

0 голосов
/ 20 сентября 2019

Прежде всего, существует проблема с проверкой has_term.Если вы проверите has_term docs , вы обнаружите, что первый параметр принимает термин категории, а второй параметр - таксономию.Добавьте, во-вторых, вы просто URL-адрес эхо-изображения, которое не будет отображать изображение.Итак, поступим следующим образом -

add_action ( 'woocommerce_after_add_to_cart_button', 'content_after_button' );
function content_after_button() {
    // do check with has_term( $term = '', $taxonomy = '', $post = null )
    if( has_term( 'Accesorios', 'product_cat' ) ) {
        echo '<img src="https://prueba.soygorrion.com.ar/wp-content/uploads/2019/08/iconos2.jpg" />';
    }
}
0 голосов
/ 20 сентября 2019

Поскольку вы упомянули, что проблема в функции has_term.Если вы можете получить идентификатор продукта внутри Добавить в корзину, то вы можете использовать этот код для получения категорий и проверки их:

$categories = wp_get_post_terms($product_id, 'product_cat');
if(in_array("Accesorios", $categories))
{
    echo "bla bla";
}

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

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