The pingback_ping_source_uri WordPress PHP filter allows you to modify the pingback source URI.
Usage
add_filter('pingback_ping_source_uri', 'my_custom_pingback_source_uri', 10, 2); function my_custom_pingback_source_uri($pagelinkedfrom, $pagelinkedto) { // Your custom code here return $pagelinkedfrom; }
Parameters
$pagelinkedfrom
(string) – URI of the page linked from.$pagelinkedto
(string) – URI of the page linked to.
More information
See WordPress Developer Resources: pingback_ping_source_uri
Examples
Change the source URI
This example changes the pingback source URI to a custom value.
add_filter('pingback_ping_source_uri', 'change_pingback_source_uri', 10, 2); function change_pingback_source_uri($pagelinkedfrom, $pagelinkedto) { $custom_source = 'https://example.com/custom-source/'; return $custom_source; }
Add a query parameter to the source URI
This example adds a query parameter to the source URI.
add_filter('pingback_ping_source_uri', 'add_query_param_to_source_uri', 10, 2); function add_query_param_to_source_uri($pagelinkedfrom, $pagelinkedto) { $pagelinkedfrom .= '?utm_source=pingback'; return $pagelinkedfrom; }
Replace the source domain
This example replaces the source domain with a different domain.
add_filter('pingback_ping_source_uri', 'replace_source_domain', 10, 2); function replace_source_domain($pagelinkedfrom, $pagelinkedto) { $new_domain = 'https://new-domain.com'; $source_uri = str_replace('https://old-domain.com', $new_domain, $pagelinkedfrom); return $source_uri; }
Remove certain parameters from the source URI
This example removes a specific query parameter from the source URI.
add_filter('pingback_ping_source_uri', 'remove_query_param_from_source_uri', 10, 2); function remove_query_param_from_source_uri($pagelinkedfrom, $pagelinkedto) { $parsed_url = parse_url($pagelinkedfrom); parse_str($parsed_url['query'], $query_params); unset($query_params['remove_me']); $new_query = http_build_query($query_params); $new_url = "{$parsed_url['scheme']}://{$parsed_url['host']}{$parsed_url['path']}?{$new_query}"; return $new_url; }
Set the source URI to the linked-to page’s URL
This example sets the pingback source URI to the same value as the linked-to page’s URL.
add_filter('pingback_ping_source_uri', 'set_source_uri_to_linked_to', 10, 2); function set_source_uri_to_linked_to($pagelinkedfrom, $pagelinkedto) { return $pagelinkedto; }