The http_request_redirection_count WordPress PHP Filter allows you to modify the number of redirects allowed during an HTTP request.
Usage
add_filter('http_request_redirection_count', 'modify_http_request_redirection_count', 10, 2); function modify_http_request_redirection_count($redirect_count, $url) { // your custom code here return $redirect_count; }
Parameters
$redirect_count (int)
– Number of redirects allowed. Default is 5.$url (string)
– The request URL.
More information
See WordPress Developer Resources: http_request_redirection_count
Examples
Increase Redirect Count
To increase the allowed redirect count to 10:
function increase_redirect_count($redirect_count, $url) { $redirect_count = 10; return $redirect_count; } add_filter('http_request_redirection_count', 'increase_redirect_count', 10, 2);
Decrease Redirect Count
To decrease the allowed redirect count to 3:
function decrease_redirect_count($redirect_count, $url) { $redirect_count = 3; return $redirect_count; } add_filter('http_request_redirection_count', 'decrease_redirect_count', 10, 2);
Disable Redirects
To disable redirects completely:
function disable_redirects($redirect_count, $url) { $redirect_count = 0; return $redirect_count; } add_filter('http_request_redirection_count', 'disable_redirects', 10, 2);
Increase Redirect Count for Specific Domain
To increase the redirect count to 10 for a specific domain:
function increase_redirect_count_for_specific_domain($redirect_count, $url) { if (strpos($url, 'example.com') !== false) { $redirect_count = 10; } return $redirect_count; } add_filter('http_request_redirection_count', 'increase_redirect_count_for_specific_domain', 10, 2);
Redirect Count Based on URL Length
To set the redirect count based on the length of the URL:
function redirect_count_based_on_url_length($redirect_count, $url) { $url_length = strlen($url); if ($url_length > 100) { $redirect_count = 2; } elseif ($url_length > 50) { $redirect_count = 4; } else { $redirect_count = 6; } return $redirect_count; } add_filter('http_request_redirection_count', 'redirect_count_based_on_url_length', 10, 2);