如何在ping站点时更改使用的域

时间:2012-02-01 作者:Matthew Boynes

为了长话短说,我需要更改我的站点在发送ping时使用的域,而不要让你对“为什么”的细节感到厌烦。我去搜索了WP源以查找设置的位置,我在中的weblog\\u ping()中看到了该域的设置wp-includes/comment.php. 不幸的是,这没有过滤器或操作,所以没有骰子。它确实使用home\\u url(),它最终有一个过滤器,但我只想在ping中调用它时对其进行过滤。有人对我如何做到这一点有什么想法吗?

。。。就在我即将发帖的时候,我想到了我该怎么做。我会把它作为一个答案贴出来,但我还是很想听听其他人的建议。

谢谢

1 个回复
最合适的回答,由SO网友:Matthew Boynes 整理而成

以下是我为实现这一目标而想到的。我还没有天真到认为这是最好的方法,但它确实有效。再一次,我仍然很想知道其他人是否有更好的想法。最终,我之所以需要这样做,是因为我使用了域映射插件,并将其设置为将管理请求重定向到原始域(多站点子域)。现在WordPress使用映射的域而不是子域进行ping。父母亲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\');

结束

相关推荐

Search options/filters

我正在尝试向侧栏搜索框添加一些复选框选项,similar to this, 用户可以选择是否搜索All Words, Some Word, 或者Entire phrase.我确实在搜索后找到了这个-Wordpress Search Phrases. “句子”选项似乎很有效,但其他选项则不太好。下面的代码是我目前正在处理的,但如果能得到一些帮助使其正常工作,我将不胜感激。非常感谢S(我不想为此使用插件)。<form action=\"<?php bloginfo(\'home\'); ?>