Найдите исполнителя для вашего проекта прямо сейчас!
Разместите заказ на фриланс-бирже и предложения поступят уже через несколько минут.

Нужно заменить стандартные кнопки woocommerce_external_add_to_cart на кнопки-ссылки с атрибутом target="_blank"

Обязательно нужно, чтобы это работало в связке с плагином Multiple external product URLs for WooCommerce, который позволяет добавлять дополнительные кнопки/ссылки к товару.

Сейчас все кнопки/ссылки выглядят вот так:

КупитьНужно вот так:

Купить

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

// add custom button to shop page

add_filter('woocommerce_loop_add_to_cart_link', 'shop_page_open_external_in_new_window', 10, 2);

function shop_page_open_external_in_new_window($link)

{

global $product;

if ($product->is_type('external')) {

$link = sprintf(

'%s',

esc_url($product->add_to_cart_url()),

esc_attr(isset($quantity) ? $quantity : 1),

esc_attr($product->id),

esc_attr($product->get_sku()),

esc_attr(isset($class) ? $class : 'button product_type_external'),

esc_html($product->add_to_cart_text())

);

}

return $link;

}

// remove default button on product page

remove_action('woocommerce_external_add_to_cart', 'woocommerce_external_add_to_cart', 30);

// add custom button on product page

add_action('woocommerce_external_add_to_cart', 'product_page_open_external_in_new_window', 30);

function product_page_open_external_in_new_window()

{

global $product;

if (!$product->add_to_cart_url()) {

return;

}

$product_url = $product->add_to_cart_url();

$button_text = $product->single_add_to_cart_text();

do_action('woocommerce_before_add_to_cart_button'); ?>

do_action('woocommerce_after_add_to_cart_button');

}

год назад
to6a
31 годРоссия
3 года в сервисе
Был
месяц назад
Выбранный исполнитель
mbulygin
Максим 
37 летУкраина
7 лет в сервисе
Был
3 месяца назад
год назад
$20
2 дня
Работа выполнена строго по ТЗ, быстро и качественно. Рекомендую к сотрудничеству!
Задача поставлена четко, оплата сразу по факту выполнения. Рекомендую к сотрудничеству!