Broken Link Checker for WordPress

Sometimes, links get broken. A page is deleted, a subdirectory forgotten, a site moved to a different domain. Most likely many of your blog posts contain links. It is almost inevitable that over time some of them will lead to a “404 Not Found” error page. Obviously you don’t want your readers to be annoyed by clicking a link that leads nowhere. You can check the links yourself but that might be quite a task if you have a lot of posts. You could use your webserver’s stats but that only works for local links.

So I’ve made a plugin for WordPress that will check your posts (and pages), looking for broken links, and let you know if any are found.

Download it now! (10 KB)

Features

  • Checks your posts (and pages) in the background (whenever the WP admin panel is open ).
  • Detects links that don’t work and missing images. Checks both internal and outbound links.
  • Notifies you on the Dashboard if any problems are found.
  • Link checking intervals can be configured.
  • New/modified posts are checked ASAP.

The broken links show up in the Manage -> Broken Links tab. If any invalid URLs are found a notification will also show up in the sidebar on the Dashboard.

The Broken Links tab displays a list of invalid URLs found along with the relevant posts and the anchor text of the links. “View” and “Edit Post” do exactly what they say and “Discard” will remove the message about a broken link, but not the link itself (so it will show up again later unless you fix it; this plugin doesn’t modify your links).

By default all old posts/links are re-checked every 72 hours, or you can set a different time period.

Notes (Semi-Technical)
I realize there’s a lot of features that could be added to improve this plugin considerably. However, this release is intended to “test the waters” and see if there’s demand for a plugin like this, so I only implemented the most basic functions. The plugin has been upgraded to be slightly beyond “basic” ;)

I thought about using WP’s pseudo-cron to run the link checker by schedule and decided against it. AFAIK the cronjobs execute when a page is requested; since this plugin does some lengthy processing it may increase page load times unacceptably when used in this manner. That’s why I set it to run the checks asynchronously (AJAX) and invisibly in the admin panel.

Installation
Just like any other WordPress plugin -

  1. Download (see below).
  2. Unzip.
  3. Upload the broken-link-checker folder to you wp-content/plugins directory.
  4. Activate the plugin in the Plugins tab.

Upgrading

  1. Deactivate the plugin (important!).
  2. Do steps 1.-3. from “Installation”.
  3. Upload the broken-link-checker folder to you wp-content/plugins directory.
  4. Re-activate the plugin in the Plugins tab.

DownloadCC-GNU GPL
Version 0.3.5 : broken-link-checker.zip (10 Kb)
(It needs at least WordPress 2.0.x to work, maybe 2.1.x. I’ve tested on 2.1.3 - 2.5)

Related posts :

315 Responses to “Broken Link Checker for WordPress”

Pages: « 11 10 9 8 7 [6] 5 4 3 2 1 » Show All

  1. 165
    20+ Must-Have WordPress 2.5 Compatible Plugins | World News Says:

    [...] Broken Link Checker for WordPress - As your blog gets more and more posts, it can be difficult to go back and look for what has broken with time.  This plugin will check images and links and notify you via the dashboard when it locates something. [...]

  2. 164
    White Shadow Says:

    @Kim Woodbridge - It should be a bit quicker after the first pass, but with that amount of posts it will always take time to check them all.

  3. 163
    Kim Woodbridge Says:

    @White Shadow - thanks! I will try and see what happens … after the first pass wouldn’t it be quicker because there won’t be so many broken links or will it always be slow because there are just so many links to check? I’m also looking into using a standalone program such as Xenu to deal with this my broken links.

  4. 162
    20+ plugins para WordPress 2.5 que debes tener | Bitperbit Says:

    [...] Broken link checker [...]

  5. 161
    White Shadow Says:

    @Kim Woodbridge - It will work, but I can’t say how well it will work. It might take a long time to check all the posts.

  6. 160
    20+ MustHave plugins compatibles avec WordPress 2.5 Says:

    [...] Broken Link Checker for WordPress : Lorsque votre blog devient de plus en plus riche en contenu, il devient difficile de retourner en arrière pour chercher les liens cassés. Ce plugin va faire le travail à votre place en vérifiant les images et les liens. Une notification sera visible sur votre tableau de bord. [...]

  7. 159
    Kim Woodbridge Says:

    I have a website that contains about 3500 posts all of which contain a link to a news article. I used to check for broken links manually every month - in May, for example, I would go through all the posts for May for each year. Lately, however, I have been unable to keep up with this. Will this plugin work efficiently with this many posts?

    Thank you.

  8. 158
    20+ Must-Have WordPress 2.5 Compatible Plugins Says:

    [...] Broken Link Checker for WordPress - As your blog gets more and more posts, it can be difficult to go back and look for what has broken with time.  This plugin will check images and links and notify you via the dashboard when it locates something. [...]

  9. 157
    Essential WordPress Plug-ins (urbanmainframe.com) Says:

    [...] Broken Link Checker: Checks your posts for broken links and missing images and notifies you on the Dashboard if any are found. [...]

  10. 156
    White Shadow Says:

    @koullis - Nope, haven’t heard of any.

  11. 155
    koullis Says:

    @White Shadow -

    thnx for your reply

    do you know other plugin which checks RS links?

  12. 154
    White Shadow Says:

    @koullis - nope, as I mentioned before, it doesn’t work with RS. It would always treat those links as working.

  13. 153
    koullis Says:

    does it checks rapidshare links if they are alive or files have been deleted?

  14. 152
    White Shadow Says:

    Maybe, but it doesn’t seem very likely. If the download was corrupted he wouldn’t have been able to extract the ZIP archive (at least not with WP’s automatic upgrade). The plugin worked before, so access rights were okay; there’s most likely no reason why the should have changed with the update.

  15. 151
    Anna Says:

    @White Shadow - Maybe Cody’s update went wrong - connection errors, access rights or smth like that…

  16. 150
    White Shadow Says:

    @Anna - Yes, but it still caused problems for Cody and I, too, have no idea why. I’m quite sure there were no other changes in the plugin aside from i18n-related stuff.

  17. 149
    Anna Says:

    @White Shadow - Err, I put an internationalisation in, but i18n-ing is just a special markup of text strings and one extra function to tell wordpress where the translation file is. I use All-In-One SEO too and I had no problems with SQL… WTF?

  18. 148
    White Shadow Says:

    @Cody - It’s all probably caused by the internatialization code which was contributed by someone else (see a few comments below). I don’t know anything about debugging this aspect of WP plugins, so I’m tempted to simply “downgrade” the public version to the code that was in 0.3.9…

  19. 147
    Cody Says:

    I had similar problems as Tino, but mine actually have to do with your plug-in. Despite the fact that I can’t find a post on your site referencing the new version 0.4, I received an update notice on my WP Plugins page. I applied the automatic upgrade and it instantly started kicking out SQL errors about my All-in-one-SEO plugin, which I’ve been using for a long time in conjunction with Broken Link Checker. These errors started the moment I upgraded your plugin, so it appears it conflicts with All-in-one-SEO. I wish it weren’t the case, but as soon as I deleted your plugin off of my server (because I couldn’t access my admin to deactivate first), the SQL errors disappeared. Bummer, ’cause I like your plugin a lot…

  20. 146
    White Shadow Says:

    @tino - I don’t have the slightest idea why that happens. Also, I think you’ve got something wrong here, as none of my plugins are currently on ver. 2.1.2

  21. 145
    tino Says:

    After activating I get this:
    Aborting: WordPress API Malfunction
    For some reason the function get_currentuserinfo() did not behave as expected. Your user_level seems to be null. This can be resolved by navigationg to the Users section of the WordPress administrative interface. In this section check the user that you use for administrative purposes. Then under the drop down labled “change role to…” select administrator. Now click the change button. Should you still recieve this error please report this bug to the plug-in author. In your report please specify your WordPress version, PHP version, Apache (or whatever HTTP server you are using) verion, and the version of the plug-in you are using.
    WordPress version: 2.5.1
    PHP version: 4.4.7
    Plug-in version: 2.1.2

  22. 144
    Keeping your Blog Alive When You’re Tired of Writing | Make Money Online Blog Says:

    [...] should thank W-Shadow for providing us with this automatic broken link checker plugin for WordPress. And you may also want to check outgoing links using bad neighborhood checker [...]

  23. 143
    White Shadow Says:

    @Anna - Thanks. I fixed a few things (that shouldn’t have been translater) and will upload a new version soon.

    By the way, I understand Russian just fine, though I’m not russian myself. ;)

  24. 142
    Anna Says:

    Hello! I made the Broken Link Checker translatable.
    It’s here - http://mistress.hweia.ru/2008/06/broken-link-checker/ (the post is in russian, but it’s the only .zip there, hard to miss :)

  25. 141
    6 Wordpress Plugins You Want But Don’t Know It | SKETCHEE Says:

    [...] 4. Broken Link Checker [...]

  26. 140
    White Shadow Says:

    @Piklog - Ah okay, you’re just being lazy here, how hard would it be to add a RS link to a post and see if the link checker catches it? :P

    Anyway, I tested it, and it doesn’t work for them. Apparently RS won’t report the standard 404 HTTP code when a file is missing. Shame on them.

  27. 139
    Piklog Says:

    I’m new wp user, can you test it for me?
    I think RS, MU links are different from direct link checking.
    It’s different.
    thanks :)

  28. 138
    White Shadow Says:

    @Piklog - I suppose it should work for those as well, but I haven’t tested it.

  29. 137
    Piklog Says:

    Hi,
    How can i use link checker for rapidshare or mu links?
    Is it work for those?

  30. 136
    White Shadow Says:

    I’m testing comments to see if the DNS issue is on my end, or somewhere else.

Pages: « 11 10 9 8 7 [6] 5 4 3 2 1 » Show All

Leave a Reply