Перейти к публикации
Поиск в
  • Дополнительно...
Искать результаты, содержащие...
Искать результаты в...

Как сделать переход дополнительные опции ?


NePridumal
 Поделиться

Рекомендованные сообщения

Добрый день народ. Подскажите как настроить переход на дополнительные опции товара, при клике в каталоге на корзинку товара?

 

В данный момент происходит просто переход на страницу товара, а нужно именно на нижнюю часть страницы, где расположена кнопка "купить" и обязательный выбор "доступные опции".

 

см фото ниже

 

То есть, в данный момент, если человек заходит на сайт через мобильную версию, и пытается купить какой либо товар (с обязательным выбором доп опций), через каталог, то при нажатии на корзинку его просто переключают в раздел описания товара, и клиент удивляется, почему ничего не добавлено в корзину. Нужно тупо носом ткнуть прямо на раздел дополнительных опций, что бы не возникало лишний раз лишних вопросов. 

 

П.С. конечно клинический случай, но последнее время нашествие таких участилось)) надо решать проблему

 

 

фото 1.jpg

фото 2.jpg

Ссылка на комментарий
Поделиться на других сайтах


там же надо задавать условие только для тех товаров, которые содержат доп. опции, а для обычных не нужно. Подскажите как лучше реализовать ?

Ссылка на комментарий
Поделиться на других сайтах


как вариант, в common.js     просто вывести алерт вместо редиректа.

				if (json['redirect']) {
					//location = json['redirect'];
                                        alert('нужно выбрать опции товара');
				}

 

Изменено пользователем fanatic
Ссылка на комментарий
Поделиться на других сайтах

в данный момент пользователя, в каталоге товаров, нажавшего кнопку "купить" на товар, в котором присутствуют обязательные дополнительные опции - просто сайт переносит в описание товара, в верхнюю его часть (для мобильной версии), а нужно что бы сразу адресовывал в нижнюю часть, где базируется кнопка купить, и выбор дополнительных опций. 

 

кто нибудь делал это через якорь-метку ? 

Изменено пользователем NePridumal
Ссылка на комментарий
Поделиться на других сайтах


Я так понял нужно вносить коррективы в php файл отвечающий за работу 

 

cart.add;

 

а вот и код из каталог тпл

 

<div class="button-group">
                <button type="button" onclick="cart.add('<?php echo $product['product_id']; ?>', '<?php echo $product['minimum']; ?>');"<?php
                            if ($product['quantity']>0) echo "><i class='fa fa-shopping-cart'></i> <span class='hidden-xs hidden-sm hidden-md'>$button_cart</span></button>";
                            else echo "disabled><i class='fa fa-ban' aria-hidden='true'></i> <span class='hidden-xs hidden-sm hidden-md'>$button_not</span></button>";
                            ?>

Изменено пользователем NePridumal
Ссылка на комментарий
Поделиться на других сайтах


неверно.

В шаблоне на странице товара делайте якорь. И указывайте его тут

$json['redirect'] = str_replace('&amp;', '&', $this->url->link('product/product', 'product_id=' . $this->request->post['product_id']));

в функции add в файле catalog\controller\checkout\cart.php

не проверял, но где-то так должно быть

Изменено пользователем Shureg
Ссылка на комментарий
Поделиться на других сайтах


а, я неправильно понял задачу.

тогда в том же common.js

				if (json['redirect']) {
					location = json['redirect']+'#option';
                                        
				}

и в шаблоне  product.tpl  найти

<?php if ($options) { ?>

и впереди, вставить   <a name="option"></a>

или,  как советовал  Shureg,      добавить якорь в контроллере

 

  • +1 1
Ссылка на комментарий
Поделиться на других сайтах

в контроллере наверное будет лучше, т.к. ява скрипты некоторые браузеры и приложения блокируют

Ссылка на комментарий
Поделиться на других сайтах


11 минут назад, NePridumal сказал:

в контроллере наверное будет лучше, т.к. ява скрипты некоторые браузеры и приложения блокируют

Ну, если они  их заблокируют, вопрос якорей станет неактуальным - опенкарт просто не откроется в таком браузере :)

Вообще, вариант фанатика мне кажется проще и наглядней, я как-то перестарался с поиском источников )

В моем варианте,  по аналогии с вариантом fanatic, будет выглядеть так

$json['redirect'] = str_replace('&', '&', $this->url->link('product/product', 'product_id=' . $this->request->post['product_id'])) . '#option';

 

Изменено пользователем Shureg
  • +1 1
Ссылка на комментарий
Поделиться на других сайтах


Только что, Shureg сказал:

Ну, если они  их заблокируют, вопрос якорей станет неактуальным - опенкарт просто не откроется в таком браузере :)

Вообще, вариант фанатика мне кажется проще и наглядней, я как-то перестарался с поиском источников )

В моем варианте,  по аналогии с вариантом fanatic, будет выглядеть так


$json['redirect'] = str_replace('&', '&', $this->url->link('product/product', 'product_id=' . $this->request->post['product_id'])) . '#option';

 

Все супер, работает, спасибо ребята!

Ссылка на комментарий
Поделиться на других сайтах


Создайте аккаунт или войдите в него для комментирования

Вы должны быть пользователем, чтобы оставить комментарий

Создать аккаунт

Зарегистрируйтесь для получения аккаунта. Это просто!

Зарегистрировать аккаунт

Войти

Уже зарегистрированы? Войдите здесь.

Войти сейчас
 Поделиться

  • Сейчас на странице   0 пользователей

    • Нет пользователей, просматривающих эту страницу.
×
×
  • Создать...

Важная информация

На нашем сайте используются файлы cookie и происходит обработка некоторых персональных данных пользователей, чтобы улучшить пользовательский интерфейс. Чтобы узнать для чего и какие персональные данные мы обрабатываем перейдите по ссылке. Если Вы нажмете «Я даю согласие», это означает, что Вы понимаете и принимаете все условия, указанные в этом Уведомлении о Конфиденциальности.