PluginProbe
Redirection / 4.9.1
Redirection v4.9.1
5.10.0 5.9.0 5.8.1 5.8.0 3.7.2 3.7.3 4.0 4.0.1 4.1 4.1.1 4.2 4.2.1 4.2.2 4.2.3 4.3 4.3.1 4.3.2 4.3.3 4.4 4.4.1 4.4.2 4.5 4.5.1 4.6.2 4.7.1 All 130 releases
redirection / actions / url.php

url.php in Redirection 4.9.1, at actions/url.php

39 lines 761 B
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 <?php
2
3 /**
4 * URL action - redirect to a URL
5 */
6 class Url_Action extends Red_Action {
7 /**
8 * Redirect to a URL
9 *
10 * @param integer $code HTTP status code.
11 * @param string $target Target URL.
12 * @return void
13 */
14 protected function redirect_to( $code, $target ) {
15 // This is a known redirect, possibly extenal
16 // phpcs:ignore
17 $redirect = wp_redirect( $target, $code, 'redirection' );
18
19 if ( $redirect ) {
20 /** @psalm-suppress InvalidGlobal */
21 global $wp_version;
22
23 if ( version_compare( $wp_version, '5.1', '<' ) ) {
24 header( 'X-Redirect-Agent: redirection' );
25 }
26
27 die();
28 }
29 }
30
31 public function process_after( $code, $target ) {
32 $this->redirect_to( $code, $target );
33 }
34
35 public function needs_target() {
36 return true;
37 }
38 }
39