Чтобы в OpenCart при нажатии на кнопку "купить" товар не добавлялся в корзину, а пользователь переходил по внешней ссылке необходимо сделать всего несколько манипуляций.
- Заходим в phpmyadmin, в вашу БД, находим таблицу oc_product (ос - стандартный префикс, у вас может быть и другой).
- Выбираем структура.
- В структуре находим location (нам же не нужно будет это поле если у нас не реальный магазин), нажимаем изменить
- Увеличиваем количество символов, чтобы влезали длинные ссылки, для этого в поле "Длина/значения" указываем вместо 128, например 500 (можно и больше, если у вас ссылки длиннее)
- Переходим в папку /catalog/controller/product и открываем файл product.php
- Находим $data['points'] = $product_info['points'];
и после добавляем $data['location'] = $product_info['location']; - Находим 'name' => $result['name'],
и добавляем 'location' => $result['location'], и сохраняем. - Здесь же /catalog/controller/product и открываем файл category.php
- Находим 'name' => $result['name'],
и добавляем 'location' => $result['location'], и сохраняем. - Находим и открываем файл product.tpl в папке /catalog/view/theme/default/template/product (обратите внимание, что это путь для стандартного шаблона, соответственно идём в свой шаблон)
- Находим <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>
и заменяем на <input type="button" value="<?php echo $button_cart; ?>" onclick="window.open('/<?php echo $location; ?>');" class="btn btn-primary btn-lg btn-block" />Внимание в параметре onclick="window.open "/" используется если вы хотите ссылку на свой ресурс (vadivan.ru/ссылка), если на внешний, то обязательно удалите. - Находим и открываем файл category.tpl в папке /catalog/view/theme/default/template/product (обратите внимание, что это путь для стандартного шаблона, соответственно идём в свой шаблон)
- Находим <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> - Заходим в карточку товара в раздел местоположении, вводим любую ссылку и проверяем
Комментарии
Я подозреваю, что у вас установлен шаблон и соответственно изменёны стили кнопок в ЦСС. И ранее была ссылка на новый стиль кнопки, а здесь в примере указан стиль обычной кнопки, из-за этого и метаморфозы. Если исходники остались сравните что было указано ранее после слов class, и что сейчас изменилось. Если нет, идти и править в CSS до необходимого вам размера.
же можно просто исправить на "location". Т.е. так:
onclick="location=(... просто в комментарии нельзя полностью указать php запрос.
Проверил у меня работает.
RSS лента комментариев этой записи