Нужно заменить стандартные кнопки 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');

}

2 года назад
to6a
32 года
4 года в сервисе
Был
год назад

Выбранный исполнитель

mbulygin
Максим 
38 лет
8 лет в сервисе
Был
год назад
2 года назад
$20
2 дня
Работа выполнена строго по ТЗ, быстро и качественно. Рекомендую к сотрудничеству!
Задача поставлена четко, оплата сразу по факту выполнения. Рекомендую к сотрудничеству!

Заявки фрилансеров

Андрей
 
25 лет
2 года в сервисе
Был
2 года назад
2 отзыва
2 года назад
mbulygin
Максим 
38 лет
8 лет в сервисе
Был
год назад
2 года назад
Александр
 
49 лет
9 лет в сервисе
Был
год назад
4 отзыва
2 года назад
  • Похожие заказы

  • Создайте скрипт, который будет отслеживать клики на чекбокс с id='drop' и радиокнопку с id='ID_PAY_SYSTEM_ID_9'. При активации хотя бы одного из элементов блок с классом 'drop-block' должен отображаться, в противном случае он должен скрываться. Необходимы знания JavaScript и базовые навыки веб-программирования.

    Завершен
    2 года назад
  • Требуется связать работающий парсер на Node.js с базой данных. Необходимо интегрировать существующий функционал парсера для корректного взаимодействия с БД. Ожидается опыт работы с Node.js и знание работы с базами данных.

    Закрыт
    2 года назад
  • Требуется реализация защиты для 250 лендингов от копирования и скачивания с использованием различных сервисов и инструментов. Защита должна быть интегрирована на одном сайте, после чего заказчик продолжит работу самостоятельно. Ожидаются адекватные предложения по цене.

    Завершен
    2 года назад
  • Требуется интеграция капчи на форму регистрации для сайта, разработанного на Laravel. Необходимо обеспечить защиту от спама и автоматических регистраций. Ожидается работа с существующим кодом и настройка необходимых параметров для корректной работы капчи.

    Закрыт
    2 года назад
  • Требуется доработка существующего скрипта на PHP с целью улучшения его функциональности. Необходимо оптимизировать код, исправить возможные ошибки и сделать его более эффективным. Ожидается качественный и профессиональный подход к задаче.

    Закрыт
    2 года назад
  • Ищется программист на Python для консультации по проблемам синхронизации ответов сервера и базы данных. Требуется помощь в решении вопросов, связанных с веб-программированием и криптотрейдингом.

    Закрыт
    2 года назад
  • Необходимо спарсить сайт с целью извлечения upc кода. Задача включает в себя анализ структуры сайта и получение только необходимого показателя. Укажите стоимость выполнения задания.

    Закрыт
    2 года назад
  • $15

    Требуется разработать скрипт на Python, который будет парсить данные с сайта тестов. Скрипт должен открывать страницу, нажимать кнопку проверки ответов, собирать вопросы, варианты ответов и правильные ответы, а также извлекать изображения, если они есть. После обработки вопросов необходимо нажимать кнопку 'далее' и повторять процесс для остальных вопросов.

    Завершен
    2 года назад