apply_filters( 'wp_get_attachment_url', string $url, int $attachment_id )

Filters the attachment URL.

Parameters

$url

(string) URL for the given attachment.

$attachment_id

(int) Attachment post ID.

More Information

wp_get_attachment_url() doesn’t distinguish whether a page request arrives via HTTP or HTTPS.

Using wp_get_attachment_url filter, we can fix this to avoid the dreaded mixed content browser warning:

add_filter('wp_get_attachment_url', 'honor_ssl_for_attachments');
function honor_ssl_for_attachments($url) {
	$http = site_url(FALSE, 'http');
	$https = site_url(FALSE, 'https');
	return ( $_SERVER['HTTPS'] == 'on' ) ? str_replace($http, $https, $url) : $url;
}

Source

File: wp-includes/post.php

View on Trac

Changelog

Version Description
2.1.0 Introduced.

© 2003–2021 WordPress Foundation
Licensed under the GNU GPLv2+ License.
https://developer.wordpress.org/reference/hooks/wp_get_attachment_url