Это пример хука, который запускается после отправки определенной формы на странице администрирования Wordpress, которую я нашел в этом ответе StackOverflow:
public function foobar_save_admin_action()
{
// Do your stuff here
wp_redirect( $_SERVER['HTTP_REFERER'] );
exit();
}
Требуется ли exit()
после wp_redirect()
? Что было бы, если бы я его не написал?
Этот ответ говорит, что вы должны написать exit
или die
после выполнения редиректа, но не объясняет почему.
Вот более подробное объяснение: stackoverflow.com/questions/2747791/…
Если у вас нет кода под заголовком, вам не нужно.
Если у вас есть код, вы обязательно должны это сделать. В противном случае выполнение скрипта не прекращается. Одной установки другого заголовка недостаточно для перенаправления.
Да, это требуется как совместно используемое в официальная документация вордпресс. Это необходимо, потому что все, что делает
wp_redirect
, эквивалентноheader("Location: url")
, который требует выхода, чтобы остановить вывод дальнейших заголовков или содержимого после перенаправления.