YuraK Posted August 25, 2022 at 08:40 PM Share Posted August 25, 2022 at 08:40 PM Помоги разобраться как все страницы на сайте как действующие так и битые перевести на одну страницу. Помоги разобраться как настроить редирект через .htaccess Прям очень нужно на одну страницу загнать... но не получаеться, а настраивать отдельные редиректы для каждой страницы, это долго, как там более 1000 товаров и сотни категорий. 0 Quote Link to comment Share on other sites More sharing options...
mpn2005 Posted August 26, 2022 at 03:24 PM Share Posted August 26, 2022 at 03:24 PM Слишком абстрактная постановка задачи. Лучше привести более чёткие примеры, что и куда нужно редиректить. 18 часов назад, YuraK сказал: Помоги разобраться как настроить редирект через .htaccess И не всегда это делается именно через htaccess. Если используется nginx+php-fpm, то редиректы надо прописывать в конфиг nginx. 0 Quote Link to comment Share on other sites More sharing options...
YuraK Posted August 26, 2022 at 03:25 PM Author Share Posted August 26, 2022 at 03:25 PM Только что, mpn2005 сказал: Слишком абстрактная постановка задачи. Лучше привести более чёткие примеры, что и куда нужно редиректить. И не всегда это делается именно через htaccess. Если используется nginx+php-fpm, то редиректы надо прописывать в конфиг nginx. с категорий, главной страницы и товаров на информационную страницу 0 Quote Link to comment Share on other sites More sharing options...
mpn2005 Posted August 26, 2022 at 03:31 PM Share Posted August 26, 2022 at 03:31 PM Только что, YuraK сказал: с категорий, главной страницы и товаров на информационную страницу Тут тогда проще редирект прописать в коде в нужных контроллерах. На пример для категории. В контроллере catalog/controller/product/category.php Сразу после вот этой строки: public function index() { Добавляем вот это: $this->response->redirect($this->url->link('information/information', 'information_id=4')); Эта правка будет делать редирект из любой категории на статью с ID=4 Для редиректа в htaccess нет разделения на типы страниц. Там идёт работа по ссылкам. И если делать со всех страниц, то получим циклический редирект. 1 Quote Link to comment Share on other sites More sharing options...
YuraK Posted August 26, 2022 at 03:51 PM Author Share Posted August 26, 2022 at 03:51 PM 18 минут назад, mpn2005 сказал: Тут тогда проще редирект прописать в коде в нужных контроллерах. На пример для категории. В контроллере catalog/controller/product/category.php Сразу после вот этой строки: public function index() { Добавляем вот это: $this->response->redirect($this->url->link('information/information', 'information_id=4')); Эта правка будет делать редирект из любой категории на статью с ID=4 Для редиректа в htaccess нет разделения на типы страниц. Там идёт работа по ссылкам. И если делать со всех страниц, то получим циклический редирект. понял, спасибо. единственное уточнение для себя на будущие поесть если нужно сделать переадресацию например на одну категорию то нужно указывать ("catalog/category", "category_id=4") и с товаров аналогично? 0 Quote Link to comment Share on other sites More sharing options...
mpn2005 Posted August 26, 2022 at 04:05 PM Share Posted August 26, 2022 at 04:05 PM 10 минут назад, YuraK сказал: то нужно указывать ("catalog/category", "category_id=4") Ссылка для категории делается по другому $this->url->link('product/category', 'path=4') 4 - Это ID категории. Если категория имеет родителя, то нужно указывать и родителя: $this->url->link('product/category', 'path=1_4') 1 - Родительская категория 4 - Текущая Желательно указывать весь путь, чтобы была совместимость с чистым OpenCart. И если это категория, то нужно проверять, что мы не находимся уже в этой категории. Иначе получим циклический редирект. 12 минут назад, YuraK сказал: и с товаров аналогично? Да. Только правки в контроллере товара catalog/controller/product/product.php Вставлять редирект можно сразу после строки: public function index() { 1 Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.