Перейти к содержанию
NePridumal

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

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

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

 

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

 

см фото ниже

 

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

 

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

 

 

фото 1.jpg

фото 2.jpg

Поделиться сообщением


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

[del]

Поделиться сообщением


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

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

Поделиться сообщением


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

[del]

Поделиться сообщением


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

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