кнопка "Подробнее о товарах" не работает в магазине woocommerce


Недавно я добавил фрагмент кода в свой functions.php файл дочерней темы, задача которого состоит в том, чтобы повторить кнопку "Подробнее" под всеми продуктами, которая ведет пользователя на страницу продукта "Нажмите". Ссылка на идентификатор продукта не работает. Вот код:

/*-ADD NEW BUTTON THAT LINKS TO PRODUCT PAGE FOR EACH PRODUCT */

add_action('woocommerce_after_shop_loop_item','replace_add_to_cart');

function replace_add_to_cart() {

global $product;

$link = $product->get_permalink();

echo do_shortcode('<br><button link="' . esc_attr($link) . '">Read more</button>');
}

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

Author: LoicTheAztec, 2017-10-04

1 answers

В вашем коде много разных ошибок, и ваш вопрос не так ясен. Таким образом, вы можете:

1) Чтобы добавить дополнительную кнопку (ниже существующей кнопки "Добавить в корзину"):

add_action('woocommerce_after_shop_loop_item', 'replace_add_to_cart' );
function replace_add_to_cart() {
    global $product;
    echo '<br><a class="button" href="' . esc_attr( $product->get_permalink() ) . '">' . __( "Read more" ) . '</a>';
}

Код входит в function.php файл вашей активной дочерней темы (или темы) или также в любом файле плагина.

Протестировано и работает.


2) Заменить кнопку "Добавить в корзину" с помощью woocommerce_loop_add_to_cart_link отфильтруйте крючок таким образом:

add_filter( 'woocommerce_loop_add_to_cart_link', 'replace_loop_add_to_cart_button', 10, 2 );
function replace_loop_add_to_cart_button( $button, $product  ) {
    return '<a class="button" href="' . $product->get_permalink() . '">' . __( "Read more" ) . '</a>';
}

Код входит в function.php файл вашего активная дочерняя тема (или тема) или также в любом файле плагина.

Протестировано и работает.

 3
Author: LoicTheAztec, 2017-10-04 08:59:01