Jump to content
Sign in to follow this  
Strogin

SeoPro - кнопка "возврат товара" перекидывает в карточку товара

Recommended Posts

Товарищи дорогие! Проблема появилась. На странице заказа нажимаю кнопку "Возврат" и попадаю не на страницу возврата, а на страницу товара. Как исправить? OpenCart 1.5.2 или 1.5.1.х - не важно.

Share this post


Link to post
Share on other sites

Ни кто не поможет?

Share this post


Link to post
Share on other sites

Немного опишу вопрос. После заказа покупателем товара и при просмотре его через /index.php?route=account/order/info&order_id=** есть кнопка Возврат товара при нажатии на неё происходит переход в карточку товара.

Share this post


Link to post
Share on other sites

Не работает, если включен ЧПУ.

Точнее не передает нормальное "Product_id"

Исправил следующим образом (на ocStore 1.5.2.1):

1) /catalog/controller/account/order.php

~ 337 строчка: 'return' => $this->url->link('account/return/insert', 'order_id=' . $order_info['order_id'].'&product_id=' . $product['product_id'], 'SSL')

заменяем на:

'return' => $this->url->link('account/return/insert', 'order_id=' . $order_info['order_id'].'&product=' . $product['name'].'&model=' . $product['model'].'&quantity=' . $product['quantity'], 'SSL')

2) /catalog/controller/account/return.php

~ 477 строчка:

if (isset($this->request->post['product'])) {

$this->data['product'] = $this->request->post['product'];

} elseif (!empty($product_info)) {

$this->data['product'] = $product_info['name'];

} else {

$this->data['product'] = '';

}

if (isset($this->request->post['model'])) {

$this->data['model'] = $this->request->post['model'];

} elseif (!empty($product_info)) {

$this->data['model'] = $product_info['model'];

} else {

$this->data['model'] = '';

}

if (isset($this->request->post['quantity'])) {

$this->data['quantity'] = $this->request->get['quantity'];

} else {

$this->data['quantity'] = 1;

}

Заменяем на:

if (isset($this->request->get['product'])) {

$this->data['product'] = $this->request->get['product'];

} else {

$this->data['product'] = '';

}

if (isset($this->request->get['model'])) {

$this->data['model'] = $this->request->get['model'];

} else {

$this->data['model'] = '';

}

if (isset($this->request->get['quantity'])) {

$this->data['quantity'] = $this->request->get['quantity'];

} else {

$this->data['quantity'] = 1;

}

URL конечно не оч красиво выглядит, зато работает.

  • +1 1

Share this post


Link to post
Share on other sites

А на ocstore 1.5.5.1.2 ЭТО РЕШЕНИЕ подойдет? или какой нужно?

Когда включен тип ЧПУ Seo_Pro, то кнопка "возврат товара" перекидывает в карточку товара

Share this post


Link to post
Share on other sites

Получилось смоделировать баг на чистом ocStore 1.5.5.1.2;

ЧПУ включен;

SeoPro.

 

Кнопка "возврат товара" перекидывает на карточку товара только в том случае, если для этого товара указан SEO URL.

Если это поле пустое, то после клика по кнопке "возврат товара" происходит открытие страницы формы с корректным заполнением данных из заказа.

 

Без добавления keyword в таблицу oc_url_alias для index.php?route=account/order/info:

post-689172-0-03722200-1467561235_thumb.jpg

C добавлением keyword в таблицу oc_url_alias:

post-689172-0-73029500-1467561235_thumb.jpg

 

Если устраивает внешний вид ссылки mysite.ru/index.php?route=account/order/info&order_id=1 (так как в решении ниже игнорируется keyword добавленный в таблицу oc_url_alias), то решается это в файле

catalog/controller/common/seo_pro.php

/*добавляем строку*/ if(!in_array($route, array('product/search'))) {
	foreach($data as $key => $value) {
		switch($key) {
			case 'product_id':
			case 'manufacturer_id':
			case 'category_id':
			case 'information_id':
/*добавляем строку*/ case 'order_id':
				$queries[] = $key . '=' . $value;
				unset($data[$key]);
				$postfix = 1;
				break;

			case 'path':
				$categories = explode('_', $value);
				foreach($categories as $category) {
					$queries[] = 'category_id=' . $category;
				}

				unset($data[$key]);
				break;

			default:
				break;
		}
	}
/*добавляем строку*/ }

или качаем обновленный файл seo_pro.php с репозитория (авторы Yesvik и freelancer)

Edited by LuckyPerson

Share this post


Link to post
Share on other sites

Но остался вопрос:

Как реализовать рабочий вариант, чтобы ссылка была такой? mysite.ru/order-info/?order_id=1

 

Здесь обратный вопрос

Edited by LuckyPerson

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
You are posting as a guest. If you have an account, please sign in.
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Sign in to follow this  

  • Similar Content

    • By Bn174uk
      350.00 руб
      Скачать/Купить дополнение


      ICQ New уведомления
      Модуль позволяет получать уведомления о заказах, отзывах о товаре, новых зарегистрированных пользователей, возврат товара и сообщений с формы контактов в ICQ New.

      Так же есть возможность настроить уведомление о смене статуса заказа.

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

      Инструкция по настройке:

      Шаг 1:
      Зайдите в ICQ New, в поиске найдите бота metabot и начните с ним общение. Напишите боту команду /newbot - это команда для создания нового бота. metabot в ответ напишет, чтобы Вы написали bot nick (публичное имя бота) оно должно иметь окончание bot (Например: cmsshopbot или cmsshop_bot); Если такое имя не занято, то в ответ получите сообщение с token вашего нового бота; Найдите своего бота в поиске по bot nick (которое указали) и нажмите напишите любое сообщение ему. Это надо для того, чтобы бот смог Вам писать. Без этого Вы не сможете получать уведомления.  
      Шаг 2 для OC 2.x:
      Разархивируйте архив; Выберите нужную версию архива(.ocmod.zip) в зависимости от Вашей версии opencart; Установите этот архив модуля через стандартный менеджер дополнений; Обновите кеш OCMOD;  
      Шаг 3:
      После перейдите в расширения->модули и найдите "A-ICQ New уведомление" активируйте его; Зайдите в настройки модуля; Укажите token(в поле "Токен бота") который выдал Вам бот metabot; Укажите в ID юзера уникальный ник или id чата или пользователя кому должны приходить уведомления. Если нужно, чтобы приходило нескольким получателем уведомления, укажите через запятую эти ID (Например: @user_id_example, @public_chat_id_example, [email protected]); Дальше отметьте галочкой поля, которые должны приходить в уведомлении и нажмите сохранить. Все, бот настроен и готов к использованию.  
      Минимальные системные требования:
      PHP 5.3 или выше; Сurl;  
      Техническая поддержка:
      Техническая поддержка осуществляется всем пользователям, легально купившим модуль на оф.сайтах либо у самого автора.

      Лицензия:
      Каждая копия модуля действует на 1 домен и его поддомен. 
      Поэтому если хотите установить модуль еще на один домен, Вы должны приобрести еще одну копию модуля.

      По всем вопросам и предложениям писать [email protected]
      Добавил Bn174uk Добавлено 29.06.2020 Категория Письма, почта, рассылки, sms Системные требования Curl Метод активации Без активации Ioncube Loader Нет OpenCart 2.3 ocStore 2.3 OpenCart.Pro, ocShop Opencart.pro 2.3 Обращение к серверу разработчика Нет Старая цена 0  
    • By Bn174uk
      Модуль позволяет получать уведомления о заказах, отзывах о товаре, новых зарегистрированных пользователей, возврат товара и сообщений с формы контактов в ICQ New.

      Так же есть возможность настроить уведомление о смене статуса заказа.

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

      Инструкция по настройке:

      Шаг 1:
      Зайдите в ICQ New, в поиске найдите бота metabot и начните с ним общение. Напишите боту команду /newbot - это команда для создания нового бота. metabot в ответ напишет, чтобы Вы написали bot nick (публичное имя бота) оно должно иметь окончание bot (Например: cmsshopbot или cmsshop_bot); Если такое имя не занято, то в ответ получите сообщение с token вашего нового бота; Найдите своего бота в поиске по bot nick (которое указали) и нажмите напишите любое сообщение ему. Это надо для того, чтобы бот смог Вам писать. Без этого Вы не сможете получать уведомления.  
      Шаг 2 для OC 2.x:
      Разархивируйте архив; Выберите нужную версию архива(.ocmod.zip) в зависимости от Вашей версии opencart; Установите этот архив модуля через стандартный менеджер дополнений; Обновите кеш OCMOD;  
      Шаг 3:
      После перейдите в расширения->модули и найдите "A-ICQ New уведомление" активируйте его; Зайдите в настройки модуля; Укажите token(в поле "Токен бота") который выдал Вам бот metabot; Укажите в ID юзера уникальный ник или id чата или пользователя кому должны приходить уведомления. Если нужно, чтобы приходило нескольким получателем уведомления, укажите через запятую эти ID (Например: @user_id_example, @public_chat_id_example, [email protected]); Дальше отметьте галочкой поля, которые должны приходить в уведомлении и нажмите сохранить. Все, бот настроен и готов к использованию.  
      Минимальные системные требования:
      PHP 5.3 или выше; Сurl;  
      Техническая поддержка:
      Техническая поддержка осуществляется всем пользователям, легально купившим модуль на оф.сайтах либо у самого автора.

      Лицензия:
      Каждая копия модуля действует на 1 домен и его поддомен. 
      Поэтому если хотите установить модуль еще на один домен, Вы должны приобрести еще одну копию модуля.

      По всем вопросам и предложениям писать [email protected]
    • By Bn174uk
      330.00 руб
      Скачать/Купить дополнение


      Telegram уведомления
      Модуль позволяет получать уведомления о заказах, отзывах о товаре, новых зарегистрированных пользователей, возврат товара и сообщений с формы контактов в Telegram.

      Так же есть возможность настроить уведомление о смене статуса заказа.

      У кого хостинг располагается на территории России есть вероятность, что модуль не будет работать из-за блокировки telegram-а в России. По запросу в ЛС или на почту дам архив для тестирования работоспособности модуля на Вашем хостинге.с 18 июня 2020г. в РФ официально больше не блокирует телеграм.


      На данный момент для OC 1.5.x актуальная версия 3.1, для ОС 2.х, 3.х актуальная версия 3.2.

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


      Инструкция по настройке:

      Шаг 1:
      Зайдите в Telegram, в поиске найдите бота BotFather и начните с ним общение. Напишите боту команду /newbot - это команда для создания нового бота. BotFather в ответ попросил, чтобы Вы написали имя бота. Напишите обратным сообщением это имя (Например: Бот для уведомлений о заказах) - это имя можно потом поменять. После ввода имени BotFather запросит ввести username (публичное имя бота) оно должно иметь окончание bot (Например: cmsshopbot или cmsshop_bot); Если такое имя не занято, то в ответ получите сообщение с token вашего нового бота; Перейдите по ссылке на своего бота из сообщения либо найдите его в поиске по username (которое указали) и нажмите /start. Это надо для того, чтобы бот смог Вам писать. Без этого Вы не сможете получать уведомления.
      Шаг 2 для OC 2.x, 3.x:
      Разархивируйте архив; Выберите нужную версию архива(.ocmod.zip) в зависимости от Вашей версии opencart; Установите этот архив модуля через стандартный менеджер дополнений; Обновите кеш OCMOD;
      Шаг 2 для OC 1.5.x:
      Разархивируйте архив; Выберите версию архива(1.5.x.zip) для Вашей версии opencart; Загрузите содержимое этого архива из папку upload на сервер  
      Шаг 3:
      После перейдите в расширения->модули и найдите "A-Telegram уведомление" активируйте его; Зайдите в настройки модуля; Укажите token(в поле "Токен бота") который выдал Вам бот BotFather; Укажите ID юзера кому должны приходить уведомления. Если нужно, чтобы приходило нескольким получателем, укажите через запятую эти ID (Например: 12222222222,22222223333,333333333); Как узнать id пользователя Дальше отметьте галочкой поля, которые должны приходить в уведомлении и нажмите сохранить. Все, бот настроен и готов к использованию.
      Минимальные системные требования:
      PHP 5.3 или выше; Сurl; Техническая поддержка:
      Техническая поддержка осуществляется всем пользователям, легально купившим модуль на оф.сайтах либо у самого автора.

      Лицензия:
      Каждая копия модуля действует на 1 домен и его поддомен. 
      Поэтому если хотите установить модуль еще на один домен, Вы должны приобрести еще одну копию модуля.

      По всем вопросам и предложениям писать [email protected]
      Добавил Bn174uk Добавлено 20.02.2018 Категория Письма, почта, рассылки, sms Системные требования Curl Метод активации Без активации Ioncube Loader Нет OpenCart 3.0
      2.3
      2.2
      2.1
      2.0
      1.5.6.4
      1.5.6.3
      1.5.6.2
      1.5.6.1
      1.5.6
      1.5.5.1
      1.5.5
      1.5.4.1
      1.5.3.1 ocStore 3.0
      2.3
      2.2
      2.1
      1.5.5.1.2
      1.5.5.1.1
      1.5.5.1
      1.5.4.1.2
      1.5.4.1.1
      1.5.4.1
      1.5.3.1
      1.5.2.1
      1.5.1.3 OpenCart.Pro, ocShop Opencart.pro 2.3
      Opencart.pro 2.1
      OcShop 2.0.3.х
      OcShop 1.5.6.4.х Обращение к серверу разработчика Нет Старая цена 0  
    • By Bn174uk
      Модуль позволяет получать уведомления о заказах, отзывах о товаре, новых зарегистрированных пользователей, возврат товара и сообщений с формы контактов в Telegram.

      Так же есть возможность настроить уведомление о смене статуса заказа.

      У кого хостинг располагается на территории России есть вероятность, что модуль не будет работать из-за блокировки telegram-а в России. По запросу в ЛС или на почту дам архив для тестирования работоспособности модуля на Вашем хостинге.с 18 июня 2020г. в РФ официально больше не блокирует телеграм.


      На данный момент для OC 1.5.x актуальная версия 3.1, для ОС 2.х, 3.х актуальная версия 3.2.

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


      Инструкция по настройке:

      Шаг 1:
      Зайдите в Telegram, в поиске найдите бота BotFather и начните с ним общение. Напишите боту команду /newbot - это команда для создания нового бота. BotFather в ответ попросил, чтобы Вы написали имя бота. Напишите обратным сообщением это имя (Например: Бот для уведомлений о заказах) - это имя можно потом поменять. После ввода имени BotFather запросит ввести username (публичное имя бота) оно должно иметь окончание bot (Например: cmsshopbot или cmsshop_bot); Если такое имя не занято, то в ответ получите сообщение с token вашего нового бота; Перейдите по ссылке на своего бота из сообщения либо найдите его в поиске по username (которое указали) и нажмите /start. Это надо для того, чтобы бот смог Вам писать. Без этого Вы не сможете получать уведомления.
      Шаг 2 для OC 2.x, 3.x:
      Разархивируйте архив; Выберите нужную версию архива(.ocmod.zip) в зависимости от Вашей версии opencart; Установите этот архив модуля через стандартный менеджер дополнений; Обновите кеш OCMOD;
      Шаг 2 для OC 1.5.x:
      Разархивируйте архив; Выберите версию архива(1.5.x.zip) для Вашей версии opencart; Загрузите содержимое этого архива из папку upload на сервер  
      Шаг 3:
      После перейдите в расширения->модули и найдите "A-Telegram уведомление" активируйте его; Зайдите в настройки модуля; Укажите token(в поле "Токен бота") который выдал Вам бот BotFather; Укажите ID юзера кому должны приходить уведомления. Если нужно, чтобы приходило нескольким получателем, укажите через запятую эти ID (Например: 12222222222,22222223333,333333333); Как узнать id пользователя Дальше отметьте галочкой поля, которые должны приходить в уведомлении и нажмите сохранить. Все, бот настроен и готов к использованию.
      Минимальные системные требования:
      PHP 5.3 или выше; Сurl; Техническая поддержка:
      Техническая поддержка осуществляется всем пользователям, легально купившим модуль на оф.сайтах либо у самого автора.

      Лицензия:
      Каждая копия модуля действует на 1 домен и его поддомен. 
      Поэтому если хотите установить модуль еще на один домен, Вы должны приобрести еще одну копию модуля.

      По всем вопросам и предложениям писать [email protected]
    • By Gilbert
      Где искать файл, чтобы убрать ссылку "Возврат товара" https://tovarnadom-sharan.ru/index.php?route=account/account?
  • Recently Browsing   0 members

    No registered users viewing this page.

×

Important Information

On our site, cookies are used and personal data is processed to improve the user interface. To find out what and what personal data we are processing, please go to the link. If you click "I agree," it means that you understand and accept all the conditions specified in this Privacy Notice.