WordPress Ultimate Noindex Nofollow Tool Plugin

Improves your blog’s search engine optimization by “noindexing” pages you choose.

Add the “noindex” robots meta tag to archives, categories, search pages, tags, author pages, login, admin pages or any other page you choose.

Add the rel=”nofollow” attribute to individual pages listed by the wp_list_pages function or the Pages widget. Also, add the rel=”nofollow” attribute to archive links, category links, registration and login links.

Installation

  1. Upload the ‘ultimate-noindex.php’ file to the ‘/wp-content/plugins/’ directory.
  2. Activate the plugin through the ‘Plugins’ menu in WordPress.
  3. Under ‘Settings,’ click ‘Ultimate Noindex’ and modify your settings accordingly.
  4. That’s it!

Download

Download the Ultimate Noindex Nofollow Tool here.

Support

Comments are closed, but please use the forum for any support requests or discussion.

Changelog

  • 1.1.2
    Bug fix where options set were not being correctly executed.
  • 1.1.1
    Bug fix where if user did not set nofollow pages, pages links would not display.
  • 1.1
    Added support for nofollowing login and registration links. Also, optimized some of the code.
  • 1.0
    Added support for nofollowing individual pages in wp_list_pages function.
  • 0.5

93 thoughts on “WordPress Ultimate Noindex Nofollow Tool Plugin

  1. Dumb question of the day…

    How does this help SEO? Is it because otherwise Google finds the same pages more than once, and puts them in the supplemental index? I’ve noticed that some of my posts/pages are indexed in Google by tag or by category (e.g. johnnasta.com/blog/?cat=6). Is this bad for SEO?

    Obviously I need to learn about SEO…

    Thanks

  2. sorry..more info…

    after upgrading from wp27 to 271

    headers disappeared from main nav bar and returned when deactivated. the pages were published and css correct but not appearing so only “home” header appeared. methinks there was some collision with page permalink structure

  3. John, WordPress creates a lot of duplicate content. Noindexing and nofollowing those pages helps keep them out of the search engines to avoid any penalties. Plus there are some pages you don’t need in there, like contact, privacy policy, etc.

  4. BGR, Sorry. I’ve tested it in my own custom themes and the WordPress default themes with no problems. I can’t support a paid custom theme I don’t have access too.

  5. BGR -

    Try installing the Theme Test Drive plugin and see if it happens with a different theme. You can find a link to that plugin on the acknowledgments page of my blog or by searching wordpress.org/extend/plugins. You can contact me directly if you have questions about that plugin. I didn’t write it but I do use it to show themes and customizations to my clients.

    HTH,
    John

  6. John, I’ve tested it and it works fine for me. I even tested it using your code and it works fine. It’s really hard for me to debug someone else’s installation as I don’t have access to your code. Sorry, I can’t help.

  7. Ah John, you were right. I found the error. It was occurring when the nofollow page field was blank so that’s why I didn’t see it. I just updated the plugin again so it should be fixed now. Thanks for letting me know of this error.

  8. Good John. Thanks, the problem seems to be cleared up now. Where’s the donation button? You should be rewarded for listening to your users. Better than Peet’s Coffee that’s for sure.

  9. oh dear, now post preview is blank after this upgrade and upgrading wp supercache and clean option plugins. I will begin troubleshooting.

    Maybe it’s my IP connection at the hotel.

  10. looks like wp-supercache is playing hob with WP tonite

    turned it off and previews reappear as does the blog itself (thanks to an e-mail from a visitor complaining he couldn’t load the blog).

    sheesh

  11. It was not supercache. vigorous testing and logic! found that the update to contextual posts was culprit.

    i will find the donate button!

  12. John, Would you link my name to my site instead of WordPress? Thank you.

    I meant to say the donate button is on the right, not the left.

  13. Hi

    Could you also implement the function to rel=nofollow the the tags?

    Greets&Thanks

    • Which tag function would you apply this to? There are multiple tag functions. I will look into it.

    • It is not possible at this time. Plus there are multiple functions for tags. It would be unwieldy to try and incorporate all of them.

  14. I can’t seem to get the noindex to work.
    I’ve entered the post id #, but still not working. I’ve created a google custom search results page that I want the noindex tag on. Is the post id the number that shows when you hover over a post and the subsequent url is “http……post=114″ and I enter “114″ in the “page id” field of the plugin settings?

    Thanks

    • Yes, that is correct. Make sure the wp_head(); function is in your theme in the header.php file. If it is, then once you noindex the page, you should see the noindex meta tag in your source code for that page.

  15. This is in my header file:

    The result from the above line in the source code for the page I want noindex shows:
    & the only robots tag is this:

    I have the all in one seo pack, could that be messing up the noindex tag?

    Can’t seem to figure it out? Thanks for you help.

  16. oops, forgot about code not showing, trying again:

    This is in my header file:
    php wp_head();

    The result from the above line in the source code for the page I want noindex shows:
    meta name=”generator” content=”WordPress 2.7.1″
    & the only robots tag is this:
    meta name=”robots” content=”follow, all”

    I have the all in one seo pack, could that be messing up the noindex tag?

    Can’t seem to figure it out? Thanks for you help.

    • I agree with John. I would deactivate the All in One SEO plugin first and see if that changes anything.

  17. Unfortunately you can’t post code here. You could try leaving the brackets off or posting the code somewhere else and supplying a link to it.

  18. You could temporarily deactivate the All In One SEO Pack and see if that changes things, or go into that plugin’s settings and uncheck the various noindex, nofollow options and see what happens. If you think another plugin is causing the problem, you have to rule that out (or prove it to be true).

  19. Hello Jonathan,

    I use wp_page_menu instead of wp_list_pages.

    How do I have to modify the plugin to make it work with wp_page_menu.

    Or, maybe, you can modify the plugin?

    Best regards

    Ole

    • Since wp_page_menu does allow filters you should be able to do this. However, I have no plans to add this to the plugin at this time, nor do I have an idea of the code you would need to accomplish it. If you want this functionality, I suggest you use wp_list_pages. Thanks.

  20. Got a problem.

    When I check “nofollow Categories” OR “nofollow archives” it’s desactivate BOTH.

    I want to nofollow only archives… a known issue ?

    • Argh, you are right. I will issue a fix as soon as I can. My apologies all.

      For now, mess around with the settings and see if that helps or try deactivating and reactivating the plugin. If you still don’t want this to occur, I would suggest deactivating the plugin until a fix is released.

  21. As MagicYoyo pointed out, the plugin has not been working correctly for who knows how long. I just updated it so those bugs should be fixed now. My apologies. My sites were messed up too!

  22. If I no index and no follow a particular page on my blog, is it going to show up in the search engine results. Note: This particular page was previously indexed by Google.

    Thanks for this great plugin.

  23. @Tom

    Noindex means you don’t want the search engines to index the page and nofollow means that you don’t want the search engines to follow the links on the page. So, the answer to your question is no.

    The idea is that WordPress creates a lot of pages that have the same content on them and a lot of links that lead to the same content. The search engines see this as duplicate content, which hurts your ranking.

    • Thanks John for the fast response and clarification. The reason I asked is because I tried to exclude the page from showing up in the search results by disallowing it my robots.txt file, but unfortunately it still ended up in the results. Hopefully, this plugin will solve that problem.

  24. @Tom

    This should do it. Your page should be removed from the index the next time your site is spidered. Google has a form you can fill out for removal requests if you can’t wait until the next time your site is spidered.

    You may also want to check out the Robots Meta plugin. It adds noindex and nofollow tags to your login, registration, lost password, and admin pages and also does some other stuff.

    John

  25. I just checked the source code of the page I want to noindex and nofollow. The noindex appears to be working, but the nofollow is not. See code below:

    I already put the same page IDs for settings. Any idea why nofollow is not working?

  26. I don’t think you can post code here. Entering page IDs only noindexes them. That’s why it says “Enter page ID’s of the pages you want noindexed.”

    • You’re right John, but the plugin also allows you to enter the page ID into the nofollow field in which I did, yet the source code doesn’t reflect the changes I made. Let me try to enter the code I see in the source code again:

      meta name=”robots” content=”noindex, follow”

      (notice the “follow”? Shouldn’t it be “nofollow”?)

      Also, I there’s a note under the nofollow setting, “Note: Page ID’s and page slugs are not interchangable here. You must use one or the other depending on how your permalinks are structured.”

      My permalinks is set as:

      /%category%/%postname%/

      Could it be that I should be using a page slug instead? If so, I’m not sure what a page slug would look like.

      I apologize if this message is too long or confusing.

  27. @Tom

    Sorry. I should mention that I have no connection to this plugin other than the fact that I have used it. Now I see the nofollow page ID box. But, as Jonathan said, the nofollow will be on the links themselves, not in the meta tags. Why it says “follow” in the meta tags is beyond me.

    Also, you unfortunately should redo your permalink structure so that your permalinks start with a number (like the year). Otherwise you’ll be taxing your database and slowing your site down.

    Check out this page:

    http://codex.wordpress.org/Using_Permalinks

    Read the part that starts with “For performance reasons, it is not a good idea to start your permalink structure with the category, tag, author, or postname fields.”

    John

  28. p.p.s. Yes, you should be using page slugs. By default, WP uses the page ID, but when you customize the permalinks it uses the slug. The slug is the title of the page in lower case letters and “sanitized”. If the title is more than one word, the words are separated by hyphens. So if your page is called About, the slug is about. If the page is called About Us, the slug is about-us. If the page is called WordPress.org, the slug is wordpressorg.

    Go to your page and in the address bar of your browser you will see the slug.

    John

    • I tried the slug version without any luck. I guess I’ll just stick with the “follow” version. LOL

      • @Tom:

        Just FYI, the Robots Meta plugin allows you to select one of the following 4 options for any page or post:

        index, follow
        index, nofollow
        noindex, follow
        noindex, nofollow

        If Jonathan’s plugin is not doing what you want, you may want to check that out.

  29. John, thanks for the heads up about the permalinks. I think I’ll stick to my current permalinks despite the performance issue you mentioned. I believe there are some key benefits in SEO if the numbers (date) are omitted. Even better is probably /%postname%/ since search engines like Google give higher weight to keywords present on the URL structure. More info here: http://wphacks.com/wordpress-tip-use-an-optimal-permalink-structure/

    • Interesting, thanks. I’ll discuss it with some people in the WP community.

      Keep in mind that search engine tips that are two years old may not be entirely valid any more.

      Unfortunately they give no explanation as to why the number is such a bad thing.

      My own web site relies on getting qualified traffic rather than the most traffic, so I will leave it as-is.

      John

  30. Hi Jonathan,

    I tried to to put meta tag that has both noindex and nofollow on a page but meta tag is added with noindex and FOLLOW. What am I doing wrong?

    Thanks

    • That is correct. The meta tag that is added tells it to noindex the page but to still follow the links. Nofollowing links is not a meta tag. It is an anchor attribute that looks like this, rel=”nofollow”. That tells a search engine not to spider the link on the page.

  31. Thanks for clearing that out. :) But I’m wondering now about that combination of noindex and follow in the meta tag. So, page won’t be indexed but links on the page will be followed, thus PR would be passed. But I don’t get this: when page passes PR, how on Earth does the Google know what value of that PR is since the page it is not indexed?

  32. I have a suggestion feature, if I may.

    Beside each noindex checkboxes there should be checkbox option “also remove existing robots META tag” and “combine noindex with existing robots META tag” (this option will save other values like follow, nofollow, noarchive…).

    Can we expect something like this soon?
    Thanks!

    • I have no plans at the moment to develop this plugin any further. My suggestion would be to edit the plugin yourself to make the noindex meta tag appear in the format you want. Let me know if you need help doing that.

  33. Plugin adds meta tag just fine. But it doesn’t add rel=”nofollow” when I try to specify individual pages by their IDs. Can you help me? Is this a bug?

  34. The only thing that’s missing in this otherwise excellent plug-in is the ability to disable indexing of subpages of the home page (page 2, page 3, etc.).

    Best regards!

  35. This is a great, simple, plugin. I do agree, it would be nice to add subpages to the list. I was able to add it to my header.php file. I think having an option to add noindex to individual pages of a specific category would be useful. Again, I was able to add that to my header.php easily, so it’s not critical.

  36. I am looking to create a ‘sales page’ within wordpress but dont want google to index the page. Would this plugin be suitable for this application?

    Eg. Page 1 will be an optin page, The next page will be a sales letter that I dont want visitors to be able to find on google etc..

  37. Hey Jonathan,

    can you add the ability to add rel=”nofollow” on a link per link basis to links you add to posts.

    And an option to add or not add nofollow to all links in a post, just in case a user elects.

    If not the second suggestion, at least the first! That would be awesome!

    It’d work like this: When you click the little “chain link” button to add a link, there’s options for alt text, target, class. THere would be an extra option here, a checkbox, for nofollow. If you check it, it adds nofollow.

    What do you think?

  38. @Joe Pea – You can add that to your links yourself in HTML editor mode. The plugin (IMO) is really more for dealing with the links that WordPress generates.

  39. How do you do that ?

    If you from your homepage dont want to pass linkjuice to one separate page , what should you write in your HTML editor then ?

  40. HI – I have recently added this plugin. But as I am new to WP, I realize I don’t really know how to use it. I am not sure what I need to enter in the settings where it asks for page ID. for the page ID do I just put the page ID numbers (ie 2,7,13)(I forget where to find the slugs)

    Does ‘nofollow’ the archive links avoid duplicate content (are they the same as what is is category)?

    thanks for any help

      • Hello Jonathan –

        I am still trying to find out how to use the plugin. (see my Dec 3rd post) How do I tell it which pages/posts to no follow? I am not sure what I need to enter in the settings where it asks for page ID. For the page ID do I just put the page ID numbers (ie 2,7,13)(I forget where to find the slugs)

        Does ‘nofollow’ the archive links avoid duplicate content (are they the same as what is is category)?

        thank you

        thanks for any help

  41. I just installed the plugin and its very useful. So thanks!

    I have a question though: Is it possible to add the noindex tag to custom category pages? My problem is that due to having used the url structure “../permalink” for internal links, combined with some plugins, Google for some reason indexed many pages as duplicates under really strange category urls (e.g. http://www.example.com/category/products/..category/products). I cannot access these category url pages directly so I cannot insert the noindex tag manually. Is there any way to apply your plugin to these custom urls, via settings or the php file? Any advice would be greatly appreciated!

    (p.s. And yes, I’m going through the effort of changing all my internal link urls…but I want to have the urls deindexed from Google asap as I have been “penalized” due to these duplicates. Plus you never know when something like this might happen again!)

    • @Dennis T

      1) Do you use a sitemap plugin? If so, are the links incorrect in your sitemap?

      2) Do the links as indexed by Google actually work? Seems like they would not

      3) Use the Search & Replace plugin and it will take you no more than about a minute to replace all of those relative paths with either absolute paths (i.e. beginning with a leading slash to indicate the root) or full URLs

      4) If you don’t have a sitemap plugin, get one, create a sitemap and (re-)submit your correct link structure to Google.

      It seems to me that the real issue you are having is that you have to get your pages indexed correctly, not modify the behavior of the plugin.

      HTH,
      John Nasta

  42. Thanks John! No, I don’t have a sitemap but I guess I will have to take care of that. I just want to make sure that google will throw out these unnecessary urls asap.

  43. HI Dennis –
    (thank goodness!)
    1) I am not sure HOW to put in the correct pages.
    2) if it is numbers, I am not positive where to get the numbers
    3) No follow I understand I am not sure the meaning of noindex (asking the search engines not to index that page at all?)
    4) Does ‘nofollow’ the archive links avoid duplicate content (are they the same as what is is category)? I am guessing you should only ‘nofollow’ one of archives or categories?

    thanks so much!

  44. I would still like to know if and how I could noindex urls like “domain/category/x/page/2″. In essence I would like the categories indexed, but not their subpages. I dont think I could individually set these up under the page ID option?

    I have some other strange url patterns I would like to tag with noindex. I have taken care of everything for my site (sitemap,robots etc.) so these urls wont get crawled anymore but the point is that I want them out of Googles index – the sooner the better. I can hardly use the webmaster url removal tool for these tons of urls. Thanks for any help!

    @adi: 1) You check the boxes of those pages you want noindexed under noindex and those you want nofollowed under nofollow.
    2) What numbers? Are you talking about the page IDs for the individual pages option? Yes, the IDs would be numbers. I believe you can find the page IDs in wordpress or if you look at page source but I’m not sure.
    3) Yes, google will not index these pages but it may follow them (unless you also “nofollowed” them). Or, if they already are in googles index they will now be taken out of the index.
    4) Nofollow will only avoid duplicate content if these pages arent already indexed (see above). Archive and category are not the same. Archives are urls with datestamps like domain.com/2009/4 etc. while category is domain.com/category/xyz. It would be wise to noindex & nofollow one of the two, if not both. (Unless youre trying to aim for keywords with your categories)

    It may be a good idea, Adi, if you did some reading up on the basic structure of a wordpress blog and what elements can cause duplicate content, especially if you have no sitemap or robots.txt.

    • @Dennis T – The broken URLs will automatically be removed the next time they do a full crawl of your site. You only need to use the removal tool if you want them removed right away. Just the fact that you have submitted a site map for the first time will probably get them to crawl the site.

  45. Dennis – thanks – that helps. I just ran across a strange one. My sidebar widgets are getting indexed! I have no idea how one would prevent that. I do not see any way to do it using this plugin, unless I’m missing something.

  46. Not sure what you mean with your sidebar widgets getting indexed…can you provide a url example? If you mean the urls from your side navigation then its normal that they get indexed.

  47. Hmmm. The checkboxes seem to be working, but the individual page IDs or slugs are not (for nofollow). I’ve tried

    1,2,3,4
    1, 2, 3, 4
    slug1,slug2,slug3,slug4
    slug1, slug2, slug3, slug4
    slug1/, slug2/, slug3/, slug4/

    No variation seems to do the trick…

  48. I am using your first example (1,2,3…)
    I have those in the BOTH the no index and no follow sections. the code ends up like this:

    Isn’t that saying ‘do follow’?!
    the noindex seems to be working

Comments are closed.