Broken Link Checker for WordPress

Notice: This plugin has been transferred to ManageWP. I am no longer working on it. Please direct any feedback to the new developer. See the plugin homepage for more information.

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.

Features

  • Detects links that don’t work, missing images, deleted YouTube videos and other problems.
  • Periodically checks links in posts, pages, comments, custom fields and the blogroll.
  • New and modified entries are checked ASAP.
  • Notifies you on the Dashboard if any problems are found.
  • Lets you edit all instances of a specific link at once.
  • Gives you a list of all links ever posted on your site, with the ability to search and filter it.
  • Lets you apply custom CSS styles to broken and removed links.
  • Highly configurable.

The broken links show up in the Tools -> Broken Links tab along. If any invalid URLs are found a notification will also show up on the Dashboard widget. To save screen real-estate, the widget can be configured to stay closed most of the time and automatically expand when broken links are detected.

Download

broken-link-checker.zip (412 KB)

    Requirements

    • WordPress 3.0 or later
    • MySQL 4.1 or later

    The current version of this plugin is only compatible with WordPress 3.0 and up. If you have an older version of WP, try one of the older releases. Specifically, version 0.8.1 is the last one that’s still compatible with the WP 2.8 branch, and version 0.4.14 is the last one compatible with WP 2.1 – 2.6.x.

    Installation

    Install “Broken Link Checker” just like any other WordPress plugin :

    1. Download the .zip file (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.
    Related posts :

    2,572 Responses to “Broken Link Checker for WordPress”

    1. Jānis Elsts says:

      @ Hardy:

      That’s probably the way to go. The plugin should report them again if they break for real.

      Once you flag a link as not broken, the plugin records its current status. For example, if the link returns a “403 Forbidden” error because it requires login, the plugin won’t report any further “403 Forbidden” errors for that link. However, if the link becomes “404 Not Found”, the plugin will notice that this is a different error and report the link anew.

    2. Ralf says:

      Hi,

      Great plugin and it works fine for one of my blogs. For another it doesn’t find about 1500 broken image links which i have to remove now by hand. Just wanted to pay you by paypal, if it would work in this case. Maybe you could have a look on it and i will pay for your help. Many thanks. Ralf

    3. […] Broken Link Checker: Comprueba tu blog en busca de enlaces y imágenes ausentes y te informa en el escritorio de WordPress si alguno fue encontrado. […]

    4. […] Broken Link Checker checks your WordPress blog for broken links and missing images and notifies via email or on the dashboard if any are found. (Essential WordPress Plugin 2012) […]

    5. […] Broken Link Checker: Maybe it’s just me, but I truly hate broken links, even though it’s almost unavoidable when you’re managing a complex website.  When people are intrigued enough to click on the link, they expect it to take them to the correct place. Now this plugin can automatically check all the links on your website and send you a report on the broken links. By modify the settings at your dashboard, you can decide the when, what and where to check for broken links. […]

    6. […] website requesting them to correct the link. You can also use a useful wordpress plugin called Broken link checker if your website is based on wordpress CMS. Hope you find the above tip […]

    7. […] Broken Link Checker Checks for broken links and will help you easily fix them. […]

    8. […] Broken Link Checker Janis Elsts […]

    9. Amy says:

      Is there a way to export the broken links to a spreadsheet? Some I want to have my client fix. I’ve been advised that if left activated it will slow down my website. Input?

    10. alexandra says:

      hi, broken link checker is a great tool!

      the only thing is: i activated the checkbox: “send mail to admin if broken link is found” but it doesen´t send me a mail. (checking-turnus i sat “1hr”)

    11. Jānis Elsts says:

      @ Amy:
      No, I’m afraid there’s no export function. You could try to go into the WP database and export the links via phpMyAdmin or something like that, but that would be fairly complicated.

      @ alexandra:
      That’s strange. Do other WordPress emails – e.g. comment notifications – get sent fine?

    12. Jv says:

      when i try to install the plugin, i get a message saying that the plugin has failed and that “Destination folder already exists.”

      how can i fix this?

    13. Sharon Vaz says:

      I’m trying to clean up some 404 errors listed in the Google Webmasters account. How do I use the Broken Link Checker plugin to set up a redirect for a specific URL when it has not already been detected by the plugin?

    14. SP says:

      Apologies for above link, I was trying to give an example of the link type I am using, but it appears to have been parsed! So here it is again (no code brackets this time): a h ref =”/example-post/”

    15. alexandra says:

      @alexandra

      ” is: i activated the checkbox: “send mail to admin if broken link is found” but it doesen´t send me a mail. (checking-turnus i sat “1hr”)”

      now it works

    Leave a Reply