Разное

Wp redirect: wp_redirect() – Перенаправляет (редиректит) на указанный УРЛ, можно указать статус редиректа (301, 302.

27.09.2023

wp redirect — Зачем нужен «выход» после wp_redirect?

спросил

Изменено 1 год, 6 месяцев назад

Просмотрено 480 раз

Это, вероятно, вопрос PHP, но, поскольку я столкнулся с ним на странице документации WordPress, возможно, здесь я получу лучшие ответы.

На https://developer.wordpress.org/reference/functions/wp_redirect/ написано

Примечание: wp_redirect() не завершается автоматически и должен всегда следует призыв к выходу;

Я не совсем понимаю, что тут реально будет, если выход здесь опустить.

Документ PHP говорит, что exit должен «завершить текущий скрипт». Поэтому я предполагаю, что если wp_redirect вызывается в function. php

, exit после этого остановит работу остальной части function.php , я прав? Но зачем мне это?

  • wp-redirect

Когда вы вызываете wp_redirect , он отправляет HTTP-заголовки перенаправления, и это все, что нужно браузеру для перенаправления, нет причин продолжать выполнение кода. Итак, вы должны выйти. wp_redirect не сделает это за вас, и PHP не сделает этого за вас, если вы отправите заголовок http для перенаправления.

Если нет exit , WordPress продолжит выполнение оставшейся части последовательности создания страницы, загружая весь код, что может запутать браузер или привести к созданию HTML-кода, в котором браузер не заинтересован, а также тратить ресурсы сервера.

В конце концов, зачем вам продолжать загружать страницу, если сервер сказал вам перейти в новое место?

Но что более важно, зачем PHP или WordPress делать выход за вас? Что делать, если вам нужно сделать уборку? Или логировать, что вы перенаправили пользователя? Выход — это ваша ответственность, WordPress и PHP не сделают этого за вас, потому что это будет проблематично.

3

Зарегистрируйтесь или войдите в систему

Зарегистрируйтесь с помощью Google

Зарегистрироваться через Facebook

Зарегистрируйтесь, используя электронную почту и пароль

Опубликовать как гость

Электронная почта

Требуется, но никогда не отображается

Опубликовать как гость

Электронная почта

Требуется, но не отображается

Нажимая «Опубликовать свой ответ», вы соглашаетесь с нашими условиями обслуживания и подтверждаете, что прочитали и поняли нашу политику конфиденциальности и кодекс поведения.

Правила переадресации 301 и 302

Центр поддержки

Последнее обновление: 10 ноября 2022 г.

domainredirectsvideo

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

ПРИМЕЧАНИЕ

Если вы находитесь в процессе переноса своего аккаунта и используете переадресацию , а не , вы можете перейти к следующему разделу процесса переноса.


Перенаправления на WP Engine

WP Engine устарел в файле .htaccess, что означает, что любые перенаправления должны применяться к вашему веб-сайту другими методами.

Существует несколько способов настройки правил перенаправления, причем наиболее эффективные способы определяются количеством перенаправлений. Все приведенные ниже параметры перенаправления предлагают массовый импорт перенаправлений Apache (в формате .htaccess). Это означает, что импортировать существующие перенаправления из .htaccess можно быстро и легко, и не требуется перемещать перенаправления по одному.

  • Массовый импорт перенаправляет на конфигурацию WP Engine Nginx
  • Массовый импорт перенаправляет на плагин перенаправления
  • Массовый импорт перенаправляет на менеджер перенаправления Yoast Premium

Менее 1000 перенаправлений

  • Перенаправления могут быть добавлены в Nginx WP Engine конфигурация
    • Добавить перенаправления через пользовательский портал
    • Массовый импорт перенаправлений, обратившись в службу поддержки WP Engine
  • Добавить правила перенаправления в плагин перенаправления
  • Управление перенаправлениями в диспетчере перенаправлений Yoast SEO Premium

Более 1000 перенаправлений

  • Импорт перенаправлений в конфигурацию WP Engine Nginx не будет эффективным при таком количестве из-за раздувания и накладных расходов.
  • Мы рекомендуем загружать перенаправления в плагин перенаправления или, если вы используете Yoast SEO, управлять перенаправлениями в Yoast Premium

ПРИМЕЧАНИЕ

Всегда рекомендуется объединять как можно больше правил с помощью RegEx, независимо от количества нужны перенаправления.


Доступ к правилам перенаправления

  1. Вход в пользовательский портал
  2. Выберите имя среды , для которой вы хотите настроить перенаправление
    • ПРИМЕЧАНИЕ : перенаправления для определенного домена будут работать только в том случае, если домен также сопоставлен с той же средой
  3. Выберите Правила перенаправления

Добавить правило перенаправления

Наиболее распространенным перенаправлением является простое перенаправление с одной страницы на другую. Чтобы настроить это, нажмите кнопку Кнопка Новое правило перенаправления .

  1. Нажмите Новое правило перенаправления
  1. Появится окно, подобное следующему
  2. Настройте перенаправление и нажмите Сохранить или Добавить другое

Поля конфигурации правила перенаправления

Важно обратите внимание, что правила перенаправления будут читаться сверху вниз. Если правило не указано конкретно

Имя перенаправления

  • Простое название, описывающее, для чего предназначено перенаправление
  • Имя не влияет на перенаправление
  • Можно оставить пустым, если имя не указано, будет применен номер для.
  • Выберите Все домены , чтобы разрешить перенаправление для любого домена, сопоставленного с этой средой.
  • Выберите определенный домен, сопоставленный с вашей учетной записью, чтобы применить перенаправление только к этому домену, а не к другим доменам.
    • Например, предположим, что в этой среде есть следующие домены: ilovepuppies. com , littledogs.com и dogshop.wpengine.com
    • Если выбрать ilovepuppies.com из раскрывающегося списка, правило только перенаправлять запросы к ilovepuppies.com и не перенаправляют трафик, идущий по тому же пути через домены dogshop.wpengine.com или littledogs.com .
  • Для многосайтовых сетей с включенным подстановочным знаком домена вы также увидите параметр Использовать подстановочные знаки домена (дополнительно) . Этот параметр будет использовать как сопоставленный домен, так и любые домены с подстановочными знаками.
  • Если вы не видите в списке домен, для которого хотите установить уникальное перенаправление, убедитесь, что домен сопоставлен, и удалите все перенаправления на другие домена.

Источник

При чтении URL-адреса, который вы хотите сопоставить слева направо, часть «Источник» будет любой, следующей за доменом. При взгляде на 9 /old-page /?$

ПРИМЕЧАНИЕ

Если вы захватите что-то в исходном вводе, заключив его в круглые скобки, то вы можете вызвать его позже в «Пункте назначения», используя переменную реферер $1 .

Destination

  • Обязательное поле
  • URL-адрес, который будет получен в результате перенаправления
  • не поддерживает RegEx

EX: 90 019 https://ilovepuppies.com/new-page/

9/testing/ (123) и пункт назначения http://domain.com/ $1 , тогда конечный URL-адрес будет http://domain.com/123 .

ПРИМЕЧАНИЕ

Перенаправления типа прерывания имеют дополнительные требования к полю Домен. Дополнительную информацию см. в разделе «Перерыв» ниже.

Если в этой среде у меня есть следующие домены: ilovepuppies.com , littledogs.com , dogshop. wpengine.com

Приведенное выше правило создаст все следующие перенаправления:

  • ilovepuppies.com/old-page -> https://ilovepuppies.com/new-page/
  • littledogs.com/old-page -> https://ilovepuppies.com/ new-page/
  • Dogshop.wpengine.com/old-page -> https://ilovepuppies.com/new-page/

Расширенные настройки

При нажатии на Дополнительные настройки откроются два элемента:

Аргументы совпадения

Аргумент — это другое имя для URL-запроса. Вы можете определить их по знаку вопроса в URL-адресе. «Арг» — это все, что после 9.0019 ? символ . Например, в URL-адресе domain.com/testing?input=this аргументом будет input=this .

Если вы не хотите, чтобы аргумент переносился и добавлялся к месту назначения, вы также должны добавить ? в конец поля источника назначения.

Если вы делаете хотите, чтобы аргумент добавлялся к месту назначения, в поле Источник назначения не нужно указывать вопросительный знак.

EX : Если источник равен domain.com/testing?input=this и пункт назначения https://wpengine.com/testingthis/ , это перенаправит URL-адрес на https://wpengine.com/testingthis/?input=this . .

Тип перезаписи

Это можно изменить в зависимости от того, какие коды ответов вы предпочитаете.

301 Постоянный – настройка по умолчанию. Указывает поисковым системам удалить старый URL-адрес из поискового индекса и заменить его новым.

302 Temporary — указывает поисковым системам не обновлять свой индекс. Цель состоит в том, чтобы поддерживать SEO-рейтинг исходного URL-адреса. EX : Перенаправление вашей домашней страницы на страницу «скоро».

Перерыв — «Перерыв» перенаправляет пользователя на другую страницу в том же домене, без обновления адресной строки или отправки кода ответа (301 или 302) не возвращается. Разрыв также называется внутренним перенаправлением, его можно использовать для «маскировки» перенаправления. Например:

  • Домен : Выберите свой домен
    • Не может быть «Все домены»
  • Источник 9/my-page
    • Домен должен соответствовать полю «Назначение»
  • «Назначение» : /backend_page?id=123
    • Домен должен соответствовать полю «Источник»
    • 900 35 Не используйте HTTP или HTTPS
  • Это загрузит содержимое с /backend_page?id=123 , сохраняя URL-адрес в адресной строке как domain.com/my-page

Массовая отправка перенаправлений

Если вы хотите импортировать перенаправления в массово это вполне возможно. Вам нужно будет обратиться в службу поддержки WP Engine с отформатированным файлом, готовым к импорту.

Каждое правило должно располагаться на отдельной строке для правильного импорта и иметь формат, аналогичный приведенным ниже примерам.

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

Прежде чем продолжить, мы рекомендуем выполнить следующие шаги:

  • Провести аудит правил перенаправления. Посмотрите, не нужны ли какие-либо из них больше или какие-либо из них следуют одному и тому же шаблону и могут быть сгруппированы в «перезаписанные», когда запросы, соответствующие определенному шаблону, перенаправляются на основе этого шаблона.
  • Убедитесь, что правила находятся в текстовом документе (что-то, что легко открыть и скопировать/вставить) и отформатированы как .htaccess  правила перенаправления.*

Если эти правила уже есть в файле .htaccess вашего сайта из предыдущего host, не стесняйтесь копировать правила и вставлять их в файл .txt, чтобы наша служба поддержки могла импортировать их для вас. /path/match/?$ http://domain.com/something/ 9/path/match/?example-arg=123 http://domain.com/something/


Дополнительная информация

Мы используем так называемые регулярные выражения (также известные как регулярные выражения) в разделе

Source наших переадресаций. . Регулярные выражения очень полезны, потому что они позволяют вам специально создавать расширенные строки поиска, которые могут быть очень полезны для настройки расширенных перенаправлений. Если вы хотите узнать больше о том, как они работают, ознакомьтесь с нашей статьей «Общие регулярные выражения, используемые для правил перенаправления». 9/testing/.* с пунктом назначения https://wpengine.com/ , тогда у вас должно быть второе правило внизу списка перенаправления, а первое правило вверху.
Это гарантирует, что два перенаправления не будут конфликтовать друг с другом. Если вы поместите второе правило вверху, то оно будет «всеобъемлющим» до того, как более конкретное правило сможет вступить в силу.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *