Для партнерских интернет магазинов иногда надо сделать так что при нажатии на кнопку купить пользователь переходил на сайт партнера по партнерской ссылке.
И так для этого отредактируем нужные нам файлы магазина на Opencart 2, но сперва изменим значение в базе данных для того чтобы не обрезались очень длинные ссылки.
Открываем PHPmyadmin искать его следует в панели управления вашего хостинга где с лева вам надо выбрать свою базу данных подключенную к интернет магазину. (Если не знаете какая у вас база посмотрите в файле config.php).
С левой стороны представлены все таблицы, нам необходимо найти: oc_product (Где ос_ это префикс моих таблиц и у вас он может быть другой)
тыкаем в то что нашли и меняем представление на вкладку «структура».
В структуре данной таблицы нам надо изменить значение длинны сохраняемых символов в поле location. Здесь будут хранится ссылки партнерских программ, смотрим и видим «Изменить».
Меняем поле «длинна значения» по умолчанию оно составляет 128 символов напишите туда, например, 800 при условии, что ваши ссылки не будут длиннее 800 символов.
Пол дела сделано!
Теперь внесем правки в сами файлы движка. Откройте файл product.php который хранится в директории:
/catalog/controller/product
Найдите:
$data['points'] = $product_info['points'];
После него вставляем:
$data['location'] = $product_info['location'];
Найдите:
'name' => $result['name'],
После:
'location' => $result['location'],
Сохраняем и загружаем обратно на сервер.
Теперь нам надо сделать так чтобы ссылка из поля расположение передавалась в кнопку. Открываем product.tpl в расположении:
/catalog/view/theme/default/template/product обратите внимание что я демонстрирую стандартный шаблон «default» у Вас может быть другой шаблон, но суть такая же.
Найдите:
<button type="button" id="button-cart" data-loading-text="<?php echo $text_loading; ?>" class="btn btn-primary btn-lg btn-block"><?php echo $button_cart; ?></button>
( Это и есть наша кнопка купить где class=" btn btn-primary btn-lg btn-block " это класс который придает оформление нашей кнопке. На тот случай если у вас не стандартная тема.)
Замените на:
<input type="button" value="<?php echo $button_cart; ?>" onclick="window.open('<?php echo $location; ?>');" class="btn btn-primary btn-lg btn-block" />
Напишите любую ссылку в карточке продукта в поле расположение (location) и проверьте работу!
Но кнопки в категориях, модулях и поиске работают в стандартном режиме
Будем исправлять!
Открываем файл в директории /catalog/controller/product
«category.php»
Находим:
'name' => $result['name'],
После вставляем:
'location' => $result['location'],
Теперь кнопку в категориях открываем: /catalog/view/theme/default/template/product
«category.tpl»
Находим код кнопки:
<button type="button" onclick="cart.add('<?php echo $product['product_id']; ?>', '<?php echo $product['minimum']; ?>');"><i class="fa fa-shopping-cart"></i> <span class="hidden-xs hidden-sm hidden-md"><?php echo $button_cart; ?></span></button>
Изменяем на такой
<button type="button" onclick="window.open('<?php echo $product['location']; ?>');"><i class="fa fa-shopping-cart"></i> <span class="hidden-xs hidden-sm hidden-md"><?php echo $button_cart; ?></span></button>
Готово! По сути осталось изменить модули и страницу поиска где на примере страницы с категориями проделываем тоже самое с любым из модулей и любой другой схемой вашего интернет магазина
Сборка opencart где вместо кнопки купить ссылка на партнерскую программу например admitad. возможно применить 11 шаблонов управление на русском, Авто обновление каталогов