• Как к главной странице сайта в адресной строке добавить хвост /index.php/? Сейчас происходит редирект с site.ru/index.php/ на site.ru. А нужно, чтобы главная страница сайта открывалась по двум адресам, и с хвостом, и без.

Просмотр 13 ответов — с 1 по 13 (всего 13)
  • Как вариант это скорее всего происходит из-за настройки сервера или настроек в файле .htaccess.

    Откройте файл .htaccess в корневой директории вашего сайта.

    Найдите следующую строку в файле:

    RewriteRule .* index.php [L]

    Надо закомментировать эту строку, добавив символ # в начало строки.

    Но это может повлиять на работу других частей сайта так что все ваши действия вы делаете на свой страх и риск.

    • Ответ изменён 1 год, 4 месяца назад пользователем ipsoltl.

    хвост /index.php/?

    надеюсь вы знаете, что index.php — эта шаблон-затычка, который используется, когда движок не может найти более подходящий шаблон в теме.

    Сложно представить, какая каша начнется на сайте, если вы сумеете реализовать свою затею.

    @ipsoltl тех. поддержка хостера пыталась решить мою задачу через настройки .htaccess, ничего не получилось.

    Модератор Юрій

    (@yube)

    add_action('wp', function() {
      if ( is_front_page() ) {
        remove_action('template_redirect', 'redirect_canonical');
      }
    });

    Проверялось на чистом 5.9.

    Возможны побочные эффекты, как уже было сказано.

    Проверялось на чистом 5.9.

    Проверил на 6.1.1 работает данный код.

    Но будет один момент подставляется index.php теперь везде. Например раньше сайт открывал ссылку: site.ru/study/3-h-godichnaja/ то теперь это будет: site.ru/index.php/study/3-h-godichnaja/

    Модератор Юрій

    (@yube)

    Но будет один момент подставляется index.php теперь везде.

    Не должно.
    Во-первых, нечему подставлять, ибо этот код никак не влияет и не может повлиять на формирование пермалинков. Да и букв index.php в коде нет.
    Во-вторых, is_front_page() ограничивает область действия главной страницей.

    На моем, как и положено, /index.php/sample-page/ редиректится на /sample-page/

    У меня если открывать страницу без /index.php/ идет ошибка. По этому и написал. А главная и так и так открывается.

    Модератор Юрій

    (@yube)

    p.s. Хотя, если отломать Вордпрессу абсолютные полные ссылки, возможно, index.php будет оставаться в адресе. Но зачем это делать?

    Модератор Yui

    (@fierevere)

    永子

    лет десять назад все пытались это убрать, можете попробовать запретить использовать mod_rewrite в .htaccess и тогда будет использоваться ЭТО
    (подробности «от противного» — «как убрать /index.php/ в ссылках WordPress)

    Модератор Юрій

    (@yube)

    Поставил сниппет «на улице»: […….]
    Вроде работает как просили.

    • Ответ изменён 1 год, 4 месяца назад пользователем Юрій. Причина: Убрал ссылку

    Согласен. Всё ок.

    Большое спасибо, вроде работает как надо)

    Модератор Юрій

    (@yube)

    На здоровье!

    Ссылку на уличный сайт убираю с глаз долой.

Просмотр 13 ответов — с 1 по 13 (всего 13)
  • Тема «Как добавить хвост /index.php/?» закрыта для новых ответов.