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

[Решено] Сделать редирект с =common/home на site.ru

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

Здравствуйте всем! Подскажите, пожалуйста, кто сталкивался с этим:

Заходим на site.ru и нажимаем на ЛОГО или ГЛАВНАЯ

Попадаем на 

site.ru/index.php?route=common/home

Задача была убрать этот хвост index.php?route=common/home чтобы при переходе по ссылке попадать опять на site.ru

Смысл в том, что если нет редиректа, то обе ссылки индексируются.

 

В интернете нашла вот такое решение (для тех у кого модуль simple). Кто-то так делал? Это безопасное решение, ничего не сломается?

Извините, в пхп не понимаю )))))

 

 

 

/system/library/url.php

 

Находим $url .= 'index.php?route=' . $route;

 

и после него вот этот код вставляем:

 

if ($args) {

if($route == 'common/home') {

if($connection == 'NONSSL') {

$url = HTTP_SERVER.str_replace('&', '&', '?' . ltrim($args, '&'));

return $url;

} else {

$url = HTTPS_SERVER.str_replace('&', '&', '?' . ltrim($args, '&'));

return $url;

}

 

} else {

$url .= str_replace('&', '&', '&' . ltrim($args, '&'));

 

}

} else {

if($route == 'common/home') {

if($connection == 'NONSSL') { return HTTP_SERVER; }

else { return HTTPS_SERVER; }

}

}

 

 

return $this->rewrite($url);

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


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

Можете сделать и проще.Заходите на хостинге в Php my admin, открываете свою базу данных, в самом верху жмёте SQL , вводите

INSERT INTO oc_url_alias(query, keyword) VALUES ('common/home', '');

и жмёте ОК.

 

Естественно то что в моём примере имеет префикс"ос_" и его нужно убрать если у вас он не используется или же сменить на свой.Останется только удалить содержимое папки system/cache.

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


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

Здравствуйте, Tom! Спасибо большое за Ваш ответ! Но проблема в том, что я уже сделала по тому варианту как написала выше. Меня интересует - это решение имеет право на жизнь. Если всё ок, то так и оставлю. Если же не нормален такой вариант, то надо будет всё вернуть и воспользоваться Вашим предложением.

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


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

И то и другое решение имеет право на жизнь! Но ваш способ затрагивает системные файлы,мой лишь добавляет данные в таблицу альясов в бд.Можее в принципе оставить и то что уже сделали сами.

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


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

Большое спасибо! Вы меня успокоили ))))

Если есть какой-то специальный раздел с советами по СЕО для опенкарта, тут на форуме - поместите туда оба способа реализации редиректа. Т.к. как только человек начинается вплотную заниматься продвижением - этот вопрос об индексации главной встаёт. 

Вы очень поможете новичкам, если будут на форуме готовые работающие решения. Особенно, если Вы про своё решение напишите что оно делает, чтобы несведущим (типа меня) было понятно что, собственно происходит при вставке в БД.

Спасибо большое ещё раз!

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


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

Кстати, по Вашему варианту, БД выдала вот такой ответ и хвост на главной не пропал. У меня 1.5.4.1 версия. Там такой таблицы нет.

 MySQL вернула пустой результат (т.е. ноль строк). (Запрос занял 0.0329 сек.)

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


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

Вы внимательно прочитали тот пункт где я писал по поводу префикса ?

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


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

Ага про префикс я прочитала ))) я неправильно свой префикс вбила, наверное когти помешали )))) Извините, пожалуйста!

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


Ссылка на сообщение
Поделиться на другие сайты
Гость
Эта тема закрыта для публикации ответов.

  • Последние посетители   0 пользователей онлайн

    Ни одного зарегистрированного пользователя не просматривает данную страницу

×

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

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