@idkiberlord077

Как сделать редирект на OpenCart через php?

Появилась проблема в перезаписи ссылок.
При помощи команды:
$this->response->redirect($this->url->link($redirect_roots,301));
//$redirect_roots наша строка. например " /scanner/brend/hp/"

но меня перенаправляет на index.php?route=/scanner/brend/hp/&301=
Если удалить "index.php?route=" всё работает исправно.

Может будут идеи как удалить эту часть . Искал в сети . перепробовал много вариантов -ничего не вышло.
Спасибо за помощь.
  • Вопрос задан
  • 2990 просмотров
Решения вопроса 1
AlexMaxTM
@AlexMaxTM
Хотя я не сталкивался с OpenCart. Но практически все движки по умолчанию кидают любые ссылки на главный скрипт-роутер (например, index.php). Потому у вас и выходит строка index.php?route=/scanner/brend/hp/&301=
Посмотрите исходники $this->url->link, с большой долей вероятности увидите там преобразование ссылки так, чтобы ссылка начиналась с index.php.
А вот если вы скормите методу редиркета сразу готовую ссылку
$this->response->redirect($redirect_roots);
То скорее всего получите то, что нужно.
Почти уверен, что в этом методе реализовано что-то типа:
header('Location: ' . $url);
exit;

Это все к тому, что если ничего не поможет просто напишите этот заголовок, не используя API OpenCart.
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
sibweb38
@sibweb38
Подскажите пожалуйста – как сделать 301 редирект с site.ru/index.php?route=checkout/success на свою страницу успешного оформления заказа? Страница будет создана в опен карт 2.0 - конечный урл будет site.ru/spasibo

В какой файл и что нужно прописать?
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы