So ändern Sie die Domäne, die beim Pingen von Websites verwendet wird

Ohne Sie mit den Details von “Warum” zu langweilen, muss ich die Domain ändern, die meine Site verwendet, wenn sie Pings sendet. Ich ging und suchte die WP-Quelle nach, wo das gesetzt wird, und ich sehe, dass die Domäne in weblog_ping () in wp-includes / comment.php gesetzt ist . Leider hat das keine Filter oder Aktionen, also keine Würfel. Es verwendet home_url (), das letztlich einen Filter hat, aber ich möchte es nur filtern, wenn es für die Verwendung in einem Ping aufgerufen wird. Hat jemand irgendwelche Gedanken darüber, wie ich das erreichen könnte?

… Und als ich auf dem Postweg war, hatte ich eine Idee, wie ich das machen könnte. Ich poste es als Antwort, aber ich würde immer noch gerne hören, was andere vorschlagen müssen.

Vielen Dank!

Solutions Collecting From Web of "So ändern Sie die Domäne, die beim Pingen von Websites verwendet wird"

Hier ist, was ich daraus gemacht habe. Ich bin nicht naiv genug, um zu denken, dass dies der beste Weg ist, aber es funktioniert. Nochmal interessiert, ob andere bessere Ideen haben. Letztendlich war der Grund, warum ich dies tun musste, weil ich das Domain-Mapping-Plugin verwende, und ich habe es so eingestellt, Admin-Anfragen auf die ursprüngliche Domain (die Multisite-Subdomain) umzuleiten. Jetzt pingt WordPress mit der zugeordneten Domain und nicht zB child.parent.com

function ping_domain_map($home_url) { if (strpos($_SERVER['REQUEST_URI'], 'wp-cron.php') && strpos(print_r(debug_backtrace(),1), 'weblog_ping') ) { if ( !function_exists( 'domain_mapping_siteurl' ) ) return $home_url; $mapped_url = domain_mapping_siteurl( false ); if ( !$mapped_url ) return $home_url; else return preg_replace('#^.*?//[^/]+#', $mapped_url, $home_url); } return $home_url; } add_filter( 'home_url', 'ping_domain_map');