You have probably noticed that when you link to a post on the same site you will get a pingback on the old post with a link to your new post. If you for whatever reason wants to get rid of those internal pingbacks, simply put the following code snippet in your functions.php. Note that you will still get pingbacks from other sites.
function disable_internal_pingbacks( &$links ) { $home = get_option( 'home' ); foreach ( $links as $l => $link ) if ( 0 === strpos( $link, $home ) ) unset($links[$l]); } add_action( 'pre_ping', 'disable_internal_pingbacks' );
If you don’t like writing or adding code to your functions.php, you can instead install the No Self Pings plugin from WordPress plugin directory.
Pingback: Tweets that mention How to disable internal pingbacks in WordPress | Fredrik Malmgren -- Topsy.com
Pingback: About Pingback disabling, great plugins for preventive measures and the “Superpuperdomain.com” Wordpress Hack | Blogger's Weekly
Awesome handy piece of code thanks. That has been bugging me and finally bugged me enough to look for an answer.
Why should we disable the internal pingbacks? dont you think so it will improve the page rank of the site?
I don’t know actually.
I added this tip because I know that many WordPress users want to do this.
That is a great tip…but I have a quick question.
In terms of SEO, do internal ping backs have a positive effect? Do I want to ping back my internal links?
Thanks Fredrik
Hi Greg,
Sorry, I don’t have a good answer for that.
Pingback: Martin's Toolbox » How to disable internal pingbacks in WordPress