The http_headers_useragent WordPress PHP Filter allows you to modify the user agent value sent with an HTTP request.
Usage
add_filter('http_headers_useragent', 'modify_user_agent', 10, 2);
function modify_user_agent($user_agent, $url) {
// your custom code here
return $user_agent;
}
Parameters
$user_agent(string) – The original WordPress user agent string.$url(string) – The request URL.
More information
See WordPress Developer Resources: http_headers_useragent
Examples
Change User Agent for All Requests
Modify the user agent for all HTTP requests made by WordPress.
add_filter('http_headers_useragent', 'change_all_user_agent', 10, 2);
function change_all_user_agent($user_agent, $url) {
$user_agent = 'My Custom User Agent';
return $user_agent;
}
Change User Agent for Specific Domain
Modify the user agent only for requests to a specific domain.
add_filter('http_headers_useragent', 'change_specific_domain_user_agent', 10, 2);
function change_specific_domain_user_agent($user_agent, $url) {
if (strpos($url, 'example.com') !== false) {
$user_agent = 'Custom User Agent for Example Domain';
}
return $user_agent;
}
Change User Agent Based on Request URL Pattern
Modify the user agent for requests with a specific URL pattern.
add_filter('http_headers_useragent', 'change_url_pattern_user_agent', 10, 2);
function change_url_pattern_user_agent($user_agent, $url) {
if (preg_match('/\/api\//', $url)) {
$user_agent = 'Custom User Agent for API Endpoints';
}
return $user_agent;
}
Append Additional Information to User Agent
Add extra information to the user agent string.
add_filter('http_headers_useragent', 'append_info_to_user_agent', 10, 2);
function append_info_to_user_agent($user_agent, $url) {
$user_agent .= '; Custom Info';
return $user_agent;
}
Remove WordPress Version from User Agent
Remove the WordPress version from the user agent string.
add_filter('http_headers_useragent', 'remove_wp_version_from_user_agent', 10, 2);
function remove_wp_version_from_user_agent($user_agent, $url) {
$user_agent = preg_replace('/WordPress\/\d+\.\d+(\.\d+)?;/', '', $user_agent);
return $user_agent;
}