WordPress как на ладони

[РЕШЕНО] Редирект htaccess — Замена вхождения

не вкурю как из example.com/mobile/my-love-post/image-001/ сделать example.com/my-love-post/image-001/?

вот весь файл - что куда добавить

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>

так можно ?

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /

RewriteCond %{REQUEST_URI} ^(.*)/mobile/(.*)$
RewriteRule . %1/%2 [R=301,L]

RewriteCond %{REQUEST_URI} ^(.*)/m/(.*)$
RewriteRule . %1/%2 [R=301,L]

RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
0
kolshix
5.4 года назад 728
  • 1
    Kama8765

    Перед правилами WP добавляешь такое? ВП правила лучше не изменять они авто-генерируются, поэтому пусть они как есть так и остаются:

    Вот ответ на твой вопрос:

    # Перенаправит с 301 статусом ссылки вида 
    # `example.com/mobile/asd/dsa` или `example.com/m/asd/dsa` на `example.com/asd/dsa`
    <IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteCond %{REQUEST_URI} ^/mobile/(.*)$ [OR]
    RewriteCond %{REQUEST_URI} ^/m/(.*)$
    RewriteRule . /%1 [R=301,L]
    </IfModule>
    
    # ниже идут правила WP нетронутые...

    П.С. Код из твоего вопроса не идеален, но тоже должен работать. Почему у тебя не работает непонятно! Тестируй тут, убедись что дело вообще доходит до htaccess и что перед твоими правилами нет других перебивающих правил.

    kolshix 5.4 года назад

    мой код рабочий - но я стараюсь проверять подводные камни - ВОТ Вы мне как раз дали развернутый ответ, и даже ответ о которым я после задумывался , Спасибо !

    Комментировать
На вопросы могут отвечать только зарегистрированные пользователи. Вход . Регистрация