» » Ссылка в кнопку купить OPENCART 2

Ссылка в кнопку купить OPENCART 2


  • 2 057
  • 9-11-2017, 12:30
  • Автор : admin
  • 9

Для партнерских интернет магазинов иногда надо сделать так что при нажатии на кнопку купить пользователь переходил на сайт партнера по партнерской ссылке.

И так для этого отредактируем нужные нам файлы магазина на Opencart 2, но сперва изменим значение в базе данных для того чтобы не обрезались очень длинные ссылки.

Открываем PHPmyadmin искать его следует в панели управления вашего хостинга где с лева вам надо выбрать свою базу данных подключенную к интернет магазину. (Если не знаете какая у вас база посмотрите в файле config.php).

Ссылка в кнопку купить OPENCART 2

С левой стороны представлены все таблицы, нам необходимо найти: oc_product (Где ос_ это префикс моих таблиц и у вас он может быть другой)

Ссылка в кнопку купить OPENCART 2

тыкаем в то что нашли и меняем представление на вкладку «структура».

Ссылка в кнопку купить OPENCART 2

В структуре данной таблицы нам надо изменить значение длинны сохраняемых символов в поле location. Здесь будут хранится ссылки партнерских программ, смотрим и видим «Изменить».

Ссылка в кнопку купить OPENCART 2

Меняем поле «длинна значения» по умолчанию оно составляет 128 символов напишите туда, например, 800 при условии, что ваши ссылки не будут длиннее 800 символов.

Ссылка в кнопку купить OPENCART 2

Пол дела сделано!

Теперь внесем правки в сами файлы движка. Откройте файл 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>

Готово! По сути осталось изменить модули и страницу поиска где на примере страницы с категориями проделываем тоже самое с любым из модулей и любой другой схемой вашего интернет магазина

скачать dle 12.0
Совместимость : 2.0.Х 2.1.x 2.2 2.3 7

Нашли ошибку? Выделите текст и нажмите CTRL+ENTER

Рекомендуем к просмотру

Инструкция Total import Pro

Инструкция Total import Pro...

30-10-2017, 19:51Vip

Как перенести сайт с одного хостинга на другой?

Как перенести сайт с одного хостинга на другой?...

9-11-2015, 22:08

Интернет магазин для партнерских программ.

Интернет магазин для партнерских программ....

20-08-2015, 20:11

Комментарии 9

  1. dino
    dino от 10 апреля 2017 09:10
    Opencart 2.1.0.2
    Я в php новачок. Вніс зміни в /catalog/controller/product а також в /catalog/view/theme/default/template/product (в мене дефолтна тема). В Адмінці в поле location вставив силку. Кнопка появилассь, а під нею є помилка Notice: Undefined variable: location in .... можливо змінну location потрібно викликати якось інше?
  2. Виктор
    Виктор от 10 апреля 2017 11:51
    Вы где то ошиблись потому как все работает
  3. dino
    dino от 10 апреля 2017 15:49
    Так, ваша правда, зробив помилку. Вам + за швидку відповідь! =)
  4. вовчик
    вовчик от 8 июня 2017 14:17
    странно , все сделал как написано выдает ошибку
    The requested URL /<b>Notice</b>: Undefined variable: product in <b>/home/u25242/data/www/blogg48.ru/catalog/view/theme/coloring/template/
    product/product.tpl</b> on line <b>447</b> was not found on this server.


    Как решить проблему? opencart-2.1.0.2
  5. admin от 8 июня 2017 14:21
    Цитата: вовчик
    странно , все сделал как написано выдает ошибку
    The requested URL /<b>Notice</b>: Undefined variable: product in <b>/home/u25242/data/www/blogg48.ru/catalog/view/theme/coloring/template/
    product/product.tpl</b> on line <b>447</b> was not found on this server.


    Как решить проблему? opencart-2.1.0.2


    Пришлите мне файлы в которые вносили правки
    попробуйте обновить кеш модификацый
  6. вовчик
    вовчик от 8 июня 2017 14:31
    сейчас залью их

    Цитата: admin
    Цитата: вовчик
    странно , все сделал как написано выдает ошибку
    The requested URL /<b>Notice</b>: Undefined variable: product in <b>/home/u25242/data/www/blogg48.ru/catalog/view/theme/coloring/template/
    product/product.tpl</b> on line <b>447</b> was not found on this server.


    Как решить проблему? opencart-2.1.0.2


    Пришлите мне файлы в которые вносили правки
    попробуйте обновить кеш модификацый



    Вот каталог темы ( убрал все исправления ) https://yadi.sk/d/oH_GfI6B3JwGob

    Вот вся папка каталога https://yadi.sk/d/cz1a3qdy3JwH8f

    сори не ту ссылку дал вот https://yadi.sk/d/fDdKrtnd3JwHCH
  7. admin от 8 июня 2017 14:32
    пишите на почту help@opencart-help.ru
  8. вовчик
    вовчик от 8 июня 2017 14:44
    Цитата: admin
    <input type="button" value="<?php echo $button_cart; ?>" onclick="window.open('<?php echo $location; ?>');" class="btn btn-primary btn-lg btn-block" />



    О все просто нужно чпу было включить в админке!
  9. Sosiska_am
    Sosiska_am от 16 февраля 2018 14:51
    Спасибо за статью! Вопрос: при нажатии на кнопку переходит по ссылке вида www.название-моего-домена/https://vadivan.ru/. Как сделать, чтобы в начале ссылке не указывался мой домен, а сразу перенаправлялся на внешний ресурс - https://vadivan.ru/?
Добавить комментарий

Оставить комментарий

    • bowtiesmilelaughingblushsmileyrelaxedsmirk
      heart_eyeskissing_heartkissing_closed_eyesflushedrelievedsatisfiedgrin
      winkstuck_out_tongue_winking_eyestuck_out_tongue_closed_eyesgrinningkissingstuck_out_tonguesleeping
      worriedfrowninganguishedopen_mouthgrimacingconfusedhushed
      expressionlessunamusedsweat_smilesweatdisappointed_relievedwearypensive
      disappointedconfoundedfearfulcold_sweatperseverecrysob
      joyastonishedscreamtired_faceangryragetriumph
      sleepyyummasksunglassesdizzy_faceimpsmiling_imp
      neutral_faceno_mouthinnocent
    PIN: ----