Кнопка «Добавить в корзину» для простых товаров на странице магазина Woocommerce

Я пытался добавить jquery, чтобы изменить HTML и ссылку, но это не работает из-за ajax_add_to_cart.

jQuery(document).ready(function($) {
var url = $('li.product-type-simple .product-category').attr('href');
$(this).find('.add-to-cart-button').attr('href', url).html('View Details');
});

Когда вы заметили на этой странице, он показывает Выберите параметры:

Я хочу это в
будет отображаться как Посмотреть детали и перенаправит на страницу продукта.

Но добавив это в functions.php делает продукт не может быть приобретен:

add_filters( 'woocommerce_is_purchasable', false, $this );

Я также добавил это, но это не работает.

// added by Vahn
/*PUT THIS IN YOUR CHILD THEME FUNCTIONS FILE*/

/*STEP 1 - REMOVE ADD TO CART BUTTON ON PRODUCT ARCHIVE (SHOP) */

function remove_loop_button(){
remove_action( 'woocommerce_after_shop_loop_item', 'woocommerce_template_loop_add_to_cart', 10 );
}
add_action('init','remove_loop_button');/*STEP 2 -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]');
}

//end added

0

Решение

Вы должны попробовать следующий код (где вы можете изменить или настроить кнопку при необходимости). Но если ваша тема уже настраивается, это может не сработать:

add_filter( 'woocommerce_loop_add_to_cart_link', 'replace_loop_add_to_cart_button', 30, 2 );
function replace_loop_add_to_cart_button( $button, $product  ) {
if( $product->is_type( 'simple' ) ){
$button_text = __( "View product", "woocommerce" );
$button = '<a class="button" href="' . $product->get_permalink() . '">' . $button_text . '</a>';
}

return $button;
}

Код помещается в файл function.php вашей активной дочерней темы (или темы).

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

3

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector