Note: If you download this, please link to this page from your blog or Tweet it. Also, you’ll probably like a free chapter from my advanced SEO book.

Update 1 : The plugin has been downloaded 22,000 + times! And many webmasters use it on multiple sites, so it’s probably being used on closer to 25-30,000 sites!

(Click to enlarge)

Update 2 : To download the plugin, you need to add my RSS feed to your reader. The download link is now in my RSS feed’s footer . That is to say you can find a link to download below any post, but only if you read via RSS.

Some folks have complained about the need to subscribe. And I understand where you’re coming from – it feels a little pushy and you probably already have a bunch of subscriptions.

But there are good reasons to subscribe to my rss feed (besides it being free):

1) To hear about updates to the plugin or new plugins and SEO tools I release.

2) To learn new SEO techniques. If you like my plugin, aren’t my other SEO ideas worth your attention?

Key info on Internal Link Building:

Internal Link Building gives you an admin panel to assign keywords to given destination URLs. The point being that your website will link within itself a la Wikipedia – every time a keyword occurs, it links to the page you defined.

So: You can rank like Wikipedia, without being Wikipedia. Ok, that’s exaggeration, but the tool improves your internal navigation / link structure a lot.

I got the idea from Jim Boykin’s Internet Marketing Ninjas, which includes a similar tool.

Also note: Marios Alexandrou of All Thing SEM updated the plugin for WP 2.9+ and currently handles tech support.

Functionality Specifics:

To use the plugin, the settings page is under the Posts menu -> Keywords in 2.7+. It’s under Manage -> Keywords, in older versions of WP (up to 2.5 or 2.6) .

1. This plugin allows you to mass-upload keywords. So you just need to prepare a CSV file in Excel and then copy-paste it into the mass-upload box in your admin panel and then click upload! This is great for larger sites targeting multiple keywords that want to speed things up.

2. It’s up to you whether you make cAsE ReLeVaNT to your links. Check the “Exact Match” checkbox for it to only match when the case is the same as you typed the word into the admin panel. Leave it unchecked to have all cases link to your selected page.

3. Post-level overrides of globally-assigned keywords. Maki, of Dosh Dosh Internet Marketing, pointed out that similar plugins exist. True, but they don’t allow post-level overriding of a given keyword. This plugin does. So if I can link to my homepage every time the words SEO or internet marketing appear, but then link to, Tad Chef’s SEO 2.0 blog with the word SEO, or Joy’s internet marketing.

4. Link to sources or affiliate links whom you reference a lot. That, for me, would be useful so I could cite Maki, SEOmoz, XMCP, and others more easily.

5. Build internal links automatically to pages you regularly reference. For instance, I can just say add my rss feed to your reader and the phrase gets linked on its own.

6. Make a link nofollow. For example, if you link to particular Wikipedia pages a lot then set the nofollow to be automatic.

Click to expand:

Add multiple keywords to one page, or one keyword to multiple pages, have it nofollow, have it link numerous instances on the page, use exact matching or not etc.

7. Link multiple keywords to a single URL. Target all a page’s keywords at once! Just put a space, a pipe (eg |) and a space between the multiple keywords. E.g. affiliate | affiliate marketing. More efficiency! More time savings!

8. Link a single keyword to multiple URLs. I’m not quite sure why you’d want to do this, but some people asked for it, so there you go!

9. Pick the number of times a keyword will link to a particular URL. If you only want the words social media to link to your social media category once, you can do that. Notice that social gets linked next, since I also have that keyword assigned to link to the same page.

FAQ:

1. Will this plugin overwrite links in older posts using keywords I set to link to particular pages?

– Where a post already links out using given keywords, the plugin will NOT overwrite it.

2. Can we make this link out in a post only a set number of times?

– Yes, this is possible with the new version of the plugin.

3. Can we make a set of URLs to link to, and have it link at random?

– Yes, this is possible. The plugin has been updated, so if you downloaded it on the first or second day it was live, you might want to get the new one. You just need to separate the URLs with | symbols in the URL field.

4. How is this plugin different from other similar plugins?

– They do not have the post-level override functionality. They also don’t have mass upload through a CSV copy-paste functionality. A third difference is that multiple keywords can link to a given URL, or one keyword can link to multiple URLs (see #6 and #7 for more).

6. Where is the post-level override?

– It’s in a box below the main content area in /wp-admin/post.php (or post-new.php). I.e. When you write/edit individual posts, scroll down and you’ll see it.

7. How do I link multiple keywords to URL, or one keyword to multiple URLs?

– Type the different keywords or URLs out with a pipe symbol ( | ) in between them. It’s found just above the enter key on most qwerty keyboards; you press shift+| to make it appear (without shift you’ll get a backslash: \ ) .

8. How do I install this?

– Download the file. Upload it to the wp-content/plugins/ . Login to WordPress. Activate it within the plugins admin page.

Guys - we've modified this plugin again to ensure it doesn't try to add links to keywords which appear in Wordpress captions (which break the captions as a result).
Is there somewhere I can upload the modified plugin?
Zac

Comment by Zac - October 13, 2009 @ 10:38pm

This is actually very interesting. I have installed the plugin and I am looking forward to see if it could actually generate the desired results.

Is it possible to have this plugin also insert Links on the user generated Comments? sometimes the post content doesnt have the Targeted keyword but Users coments Do..
I have a blog with a lot of users comments and would love for this Functionality to be added..
Please advice..
Thnx.

Hi Gab
I am no techie at all. I was looking at internal linking my blog which has lots of posts(over600).
I was looking at RB-Internal Linking, and I must admit I found it slightly complicated and no real instructions on how to set it up correctly(Its in my plugin category but doing nothing.
Yours seems workable, Although i would like to ask if you have a video to show the whole process for us non-techie bloggers:)
It will be much apprciated.

I've been using this plugin for a while and it has worked wonderfully! However today I had my first need to use the exact match option to keep a capitalized version of a keyword from being linked. Even when the checkbox is selected, the keyword is linked.
Any ideas what I might be doing wrong so that keyword will be linked, but Keyword won't be?

I think I found the bug in the code. On line 167 if you replace the @ sign on either side of the $needle definition to / the exact match options work.
I'm having trouble finding documentation on the @ symbol though so I don't know if my change breaks something else.

Erm, I'm clueless about that, Marios, tbh. If you can edit the code and make it work, that's great. I'd love for you to send me your updated version so I can offer it for download as well. Be good if you detailed what version of WP you're on and what other plugins are running, since those sometimes conflict.

I'm happy to share the fix although like I said I can't figure out what the original bit of code was trying to do.
Anyway, to get the exact match working, just replace this line
$needle = '@([^a-zA-Z0-9\[\]])@';
with this line
$needle = '/([^a-zA-Z0-9\[\]])/';

Hey! Great job, it's the only one that worked for me in hebrew.
It would be nice to have an option that removes a link from a specific post after setting a global rule.
I defined an inner link to a post, and I don't want to have self-links on that post.
Thank you.

Gab,
I've got some feature ideas I want to add to this plugin. I don't have the time to do them myself so I was wondering if you've got a plugin developer you could recommend that won't break the bank?
Thanks!

gr8 plugin. I've one query suppose I set keyword
wordpress.
And my post contains div contents here . Then it mess up output since
it convert class name to link.I think it should avoid existing tags.

Comment by Kishor - January 15, 2010 @ 6:20am

Just ignore my first comment.
gr8 plugin. I’ve one query suppose I set keyword to
wordpress.
And my post contains some HTML data having wordpress as id or class name for any HTML tag then that time plugin changes this with link.I think it should avoid existing HTML tags.

Hey Gab, firstly a thousand thanks for creating this plugin, I've been using it for a while now on numerous clients and its one of the best WP SEO plugins around in terms of what it can achieve!
One gripe though which I would absolutely love if you could fix: when you enter variations of a keyword can you make "times" refer to overall times any of the variations are used? It can become messy if you have multiple variations of the term within the same blog post...

I already have a link to post plugin. Will it restructure my previous internal linking?
And how well will it benefit me. newbie :)

Comment by charli - February 23, 2010 @ 1:40pm

I can't even describe what a great plugin this is. I was looking for something similar to this one when I came across a link to yours. I'm very glad I did because your plugin has already solved issues I wouldn't have even thought would of came up and I love how it won't replace links that are already there. This will truly be an amazing plugin to easily improve a sites internal linking structure. Thanks a ton!

Hi
I'm finding that this plugin messes with other plugins and completely messes things up.
the pluginn in question that it messes up is the "who sees ads" plugin

Comment by Bob - March 15, 2010 @ 2:09am

aille aille aille
this is the 5th plugin I am trying to match URL's with keywords - only one works - and I was pretty sure this one would work too...but no ! nothing is hyperlinked !
I tried with different themes, it just doesnt work.
Does this plugin need to be upgraded ?

Hi,
Does this plugin limit the number of links it places on a post for each keyword to 1.
E.g. If SEO appears 15 times throughout a post, does it just link from the first SEO word citation or from all 15?
Matt Cutts said something about over linking one page to another can hurt your rankings. Or that maybe ranking from one page to another with different anchor text. Ahh not sure now.
But yeah, does it limit the amount of links it inserts into a post?

@Aaron - I can answer that for you - it can limit the number of times a particular phrase if you use the "times" setting - try for yourself and you'll see.
However unfortunately if you set multiple variations of the same phrase to link to a single page, it will count all of these separately.
So if you had "blue widget", "blue widgets", "bluewidgets" and "blue" all set to the same URL you could end up with multiple links to that page if you used them all in one post. This can be annoying and Gab if you're listening and you have any time I'd love to be able to set "once" across all of the variations...

Can anyone submit the code to add target="_blank" to the link generated ~ I DO want to link to external websites, but I don't want to loose my customer :-)
While posting how do I check I have the latest version?