PluginProbe ʕ •ᴥ•ʔ
Broken Link Checker / 2.4.7
Broken Link Checker v2.4.7
1.5.4 1.5.5 1.6 1.6.1 1.6.2 1.7 1.7.1 1.8 1.8.1 1.8.2 1.8.3 1.9 1.9.1 1.9.2 1.9.3 1.9.4 1.9.4.1 1.9.4.2 1.9.5 2.0.0 2.1.0 2.2.0 2.2.1 2.2.2 2.2.3 2.2.4 2.3.0 2.3.1 2.4.0 2.4.1 2.4.2 2.4.3 2.4.4 2.4.5 2.4.6 2.4.7 2.4.8 0.9.4 0.9.4.1 0.9.4.2 0.9.4.3 0.9.4.4 0.9.4.4-last-non-modular 0.9.5 0.9.6 0.9.7 0.9.7.1 0.9.7.2 1.10 1.10.1 1.10.10 1.10.11 1.10.2 1.10.3 1.10.4 1.10.5 1.10.6 1.10.7 1.10.8 1.10.9 1.11.1 1.11.10 1.11.11 1.11.12 1.11.13 1.11.14 1.11.15 1.11.17 1.11.18 1.11.19 1.11.2 1.11.20 1.11.21 1.11.3 1.11.4 1.11.5 1.11.8 1.11.9 1.2.2 1.2.3 1.2.4 1.2.5 1.3 1.3.1 1.4 1.5 1.5.1 1.5.2 1.5.3 trunk 0.1 0.2 0.2.2 0.2.2.1 0.2.3 0.2.4 0.2.5 0.3 0.3.1 0.3.2 0.3.3 0.3.4 0.3.5 0.3.6 0.3.7 0.3.8 0.3.9 0.4 0.4-i8n 0.4.1 0.4.10 0.4.11 0.4.12 0.4.13 0.4.14 0.4.2 0.4.3 0.4.4 0.4.5 0.4.6 0.4.7 0.4.8 0.4.9 0.5 0.5.1 0.5.10 0.5.10.1 0.5.11 0.5.12 0.5.13 0.5.14 0.5.15 0.5.16 0.5.16.1 0.5.17 0.5.18 0.5.2 0.5.3 0.5.4 0.5.5 0.5.6 0.5.7 0.5.8 0.5.8.1 0.5.9 0.6 0.6.1 0.6.2 0.6.3 0.6.4 0.6.5 0.7 0.7.1 0.7.2 0.7.3 0.7.4 0.8 0.8.1 0.9 0.9.1 0.9.2 0.9.3
broken-link-checker / readme.txt
broken-link-checker Last commit date
app 6 months ago assets 6 months ago core 6 months ago languages 6 months ago legacy 6 months ago broken-link-checker.php 6 months ago readme.txt 6 months ago uninstall.php 2 years ago
readme.txt
1128 lines
1 === Broken Link Checker ===
2 Contributors: managewp, wpmudev
3 Tags: links, broken links, internal link, external link, broken images
4 Requires at least: 5.2
5 Tested up to: 6.8
6 Stable tag: 2.4.7
7 Requires PHP: 7.4
8 License: GPLv2 or later
9 License URI: http://www.gnu.org/licenses/gpl-2.0.html
10
11 Broken Link Checker helps you catch broken links & images fast, before they hurt your SEO or UX. Scan and bulk-fix issues from one easy dashboard.
12 == Description ==
13 Automatically monitor your WordPress site for broken links and missing images, so you can fix them proactively and protect your SEO.
14
15 Broken links aren’t just annoying for your visitors, they negatively impact your rankings and make your site look outdated and untrustworthy. But manually checking hundreds of links? Ain’t nobody got time for that!
16
17 Broken Link Checker detects issues 20x faster and more accurately than other plugins, thanks to cloud-based link checking. This powerful plugin scans your pages, posts, comments and custom fields, spotting broken or redirected URLs and giving you a quick way to fix them all from one centralized dashboard.
18
19 With over 17 million downloads and 50,000+ broken links found daily, Broken Link Checker leaves no URL behind. You can even receive email alerts when something breaks, so you’re never caught off guard.
20
21 ## TL;DR: Broken Link Checker’s Key Features at a Glance
22
23 – Automatic Link Monitoring: Scans your posts, pages, comments, and more.
24
25 – Comprehensive Reports: Get breakdowns of broken links, with search and filtering options.
26
27 – Quick Fixes: Edit, unlink, or ignore your broken links in seconds.
28
29 – Cloud & Local Options: Choose cloud-based scans or use your server.
30
31 – Custom Filters: Exclude post types, categories, and domains.
32
33 – Crawl Everything: Pages, posts, even images and redirects. No URL is missed.
34
35 – Broken Image Alerts: Catch missing visuals before anyone notices.
36
37 – Multisite Support: Perfect for agencies managing multiple sites.
38
39
40 ## Why Broken Link Checker?
41
42 Every broken link is a strike against your credibility, and your SEO score. But staying on top of them can feel like fighting a never-ending battle. Broken Link Checker gives you an easy way to scan your content and fix issues before anyone notices.
43
44 Whether you’re maintaining a personal blog, a client-heavy agency setup, or a content-rich eCommerce site, this plugin saves hours of manual work and helps you keep things tidy.
45
46 ### Real-Time Link Monitoring
47 **Scan everything, automatically.**
48 Broken Link Checker scans your site deeply and frequently, to make sure no broken links are missed. The plugin will scan every inch of your sites, including within posts, pages, custom post types, comments and even embedded media, to ensure your site’s SEO and user experience are not compromised in any way.
49
50 ### Email Alerts & Dashboard Notifications
51 **Never get blindsided by a broken link again.**
52 Choose how and when you want to be notified about broken links. You can receive instant email alerts, get a summary in your WordPress dashboard, and stay in control with flexible scan settings that meet your needs.
53
54 ### Advanced Search Filtering
55 **Tailor your search to your workflow.**
56 Broken Link Checker makes it easy to fine-tune your scan settings, with search and filtering tools that help you check what really matters. Look for specific URLs, or filter by status or error type.
57
58 ### Two Link Checking Engines
59 **Choose the right option for your site.**
60 Broken Link Checker gives you the option of using two unique engines based on your needs. Scan your content locally, or opt for the cloud-based checker for better performance and reduced server load.
61
62 ### Fix Links Without Leaving the Page
63 **Manage broken links efficiently.**
64 No need to dig through old posts. Broken Link Checker lets you resolve all detected links right from your BLC dashboard. Bulk action means you can clean up dozens of links from the plugin interface with just a few clicks.
65
66 ### Multisite & Agency Ready
67 **One plugin to manage them all.**
68 Handle broken links across multiple sites – not just one! Perfect for if you’re running a multisite network or managing multiple client installs.
69
70 ## Broken Link Checker: Choose The Right Link Checking Engine for Your Needs
71
72 With Broken Link Checker, you’ll have the flexibility to choose between a fast, cloud-based engine or a reliable, local solution. You can scan your site either way, and even switch between them without losing your saved settings.
73
74
75
76 Not sure which one is right for you? Here’s a quick breakdown to help you decide:
77
78 ### Cloud-Based Engine:
79
80 – 20x faster scans with zero server strain
81
82 – Unlimited page & URL checks, perfect for large or multiple sites
83
84 – Fewer errors and less chance of being blocked by external sites
85
86 – Crawls everything: posts, pages, menus, categories, and more
87
88 – Manage broken links across all your sites in one place
89
90 – Edit and unlink broken links from your dashboard
91
92
93 ### Local Engine:
94
95 – Runs directly on your server, no external connection needed
96
97 – Scans internal & external links in posts, pages, comments, and more
98
99 – Edit links inline and get dashboard//email notifications
100
101 – Customize how broken links appear and control SEO behavior
102
103 – Filter and search links by URL, anchor text, and other fields
104
105
106 ## What Users are Saying About Broken Link Checker
107
108
109
110
111
112
113
114
115 “One of my must-haves. It does a great job checking and classifying all the links on your site and making them searchable and easily editable. I particularly like that it can update redirected links, check the Wayback Machine for missing ones, and makes it easy to update one at a time or in bulk.” – [kelson](https://wordpress.org/support/users/kelson/)
116
117
118
119
120
121
122
123
124 “My site has thousands of links. This plugin ensures the site doesn’t go stale. The tools for URL updating are clever and well-designed.” – [Flaneuring](https://wordpress.org/support/users/flaneuring/)
125
126
127
128
129
130
131
132
133 “This plugin did exactly what I needed. I had a big problem with image links becoming broken on my site. With this plugin, I was able to see the list of broken image links and, without knowing this was a feature, I was able to fix the links! This was more than I could have asked for and it worked perfectly.” – [Rectorsquidd](https://wordpress.org/support/users/rectorsquidd/)
134
135 ### A Note from Broken Link Checker
136
137 Hey there! I’m Broken Link Checker, your trusty tool for keeping your WordPress site clean, polished, and error-free. I scan your site for broken links, missing images, and redirects, so your visitors (and search engines) always get the best experience.
138
139 Whether you're managing one site or many, I make it easy to catch link issues early, fix them fast, and keep your content in top shape. You can even choose between my cloud-based and local engines depending on your needs.
140
141 Like my fellow plugin heroes, I’m part of the WPMU DEV family, home to some of the most powerful site management tools in the WordPress world:
142
143 – [Smush](https://wordpress.org/plugins/wp-smushit/): Image compression & optimization
144
145 – [Forminator](https://wordpress.org/plugins/forminator/): Forms, polls, quizzes & surveys
146
147 – [Hummingbird](https://wordpress.org/plugins/hummingbird-performance/): Page speed & performance booster
148
149 – [Hustle](https://wordpress.org/plugins/wordpress-popup/): Pop-ups, slide-ins & email opt-ins
150
151 – [Defender](https://wordpress.org/plugins/defender-security/): Security, monitoring & hack protection
152
153 – [SmartCrawl](https://wordpress.org/plugins/smartcrawl-seo/): SEO checker, analyzer & optimizer
154
155
156 Want to level up your WordPress skills? Dive into the [WPMU DEV Blog](https://wpmudev.com/blog/?utm_source=wordpress.org&utm_medium=readme&utm_campaign=blc-readme&utm_content=wpmu_dev_blog_link) for expert tutorials, tips, and inspiration.
157
158 Thanks for checking me out. I'm here to help you build a stronger, smoother, more professional website.
159
160 -Broken Link Checker
161
162
163 ### Broken Link Checker: Use Cases
164 ✔ You’re a content creator who wants to protect SEO rankings
165 ✔ You run a blog with hundreds of posts and external links
166 ✔ You manage client websites and want a clean, reliable backend
167 ✔ You’re an agency looking to scale QA across multiple sites
168 ✔ You want to automate error detection and save time
169
170 ### Installation: Get Started in 5 Minutes
171 Broken Link Checker is super simple to set up.
172 Install the plugin from the WordPress Plugin Directory or upload it manually.
173
174 1. Activate it through the 'Plugins' menu in WordPress
175
176 2. Choose between cloud or local mode in the settings
177
178 3. Start scanning, and fix broken links right from your dashboard
179
180
181 Need help? Check out the [full documentation on wpmudev.com](https://wpmudev.com/docs/wpmu-dev-plugins/broken-link-checker/?utm_source=wordpress.org&utm_medium=readme&utm_campaign=blc-readme&utm_content=fully_documented).
182
183 ### About Us
184
185 At WPMU DEV, we’re dedicated to helping WordPress users build faster, smarter, more secure websites with our suite of powerful plugins, site tools, and expert support.
186
187 Join our community of developers, designers, and site owners at [wpmudev.com](https://wpmudev.com/?utm_source=wordpress.org&utm_medium=readme&utm_campaign=blc-readme&utm_content=wpmu_dev_link), your all-in-one destination for WordPress success.
188
189 Want to sharpen your skills and stay on top of the latest tips and trends? The [WPMU DEV Blog](https://wpmudev.com/blog/?utm_source=wordpress.org&utm_medium=readme&utm_campaign=blc-readme_about-us&utm_content=wpmu_dev_blog_link) is your go-to source for top-tier tutorials, updates, and insights.
190
191 And hey, thanks for [using our free plugins](https://profiles.wordpress.org/wpmudev/#content-plugins)! We’ve loved building them for you, and we’re excited to see what you create with them.
192
193 #### Ready to banish broken links for good?
194
195 Download Broken Link Checker and keep your site sharp, speedy, and SEO-friendly, no manual checking required.
196
197 == Frequently Asked Questions ==
198 =Is Broken Link Checker really free?=
199 Yes! The plugin is completely free and includes all the core scanning features. The plugin works either locally on your own server, or 20x faster, better and more accurately on WPMU DEV cloud servers. The Local version only works in your site admin, while the Cloud version works in both your site admin and in your Hub.
200
201 The cloud version requires a connection to WPMU DEV to access its API. However, you don’t need to be a premium WPMU DEV member to access the cloud version! You can create a free Hub account (with some restrictions) directly in the plugin while settings things up.
202
203 =Does it work with custom post types and fields?=
204 Absolutely. You can scan everything from custom fields to WooCommerce product links.
205
206 =Can I use it on Multisite?=
207 Yes, Broken Link Checker supports WordPress Multisite and gives you full flexibility.
208
209 =Will it mess up my theme or content?=
210 Nope. The plugin doesn’t modify your content. It just finds the broken links and gives you options to manage them.
211
212 = How can I report security issues or bugs? =
213 We take plugin security incredibly seriously; if you have a bug or vulnerability to report, you can do so through the Patchstack Vulnerability Disclosure Program. It’s fast, easy, and you will be notified when the issue is fixed. [Report a vulnerability](https://patchstack.com/database/wordpress/plugin/broken-link-checker/vdp).
214
215 == Screenshots ==
216
217 1. Cloud Broken Link Checker
218 2. Scheduled Broken Link Checker Scanning
219 3. In plugin broken links summary dashboard
220 4. Cloud Broken Link Checker Full Dashboard
221 5. Local Broken Link Checker engine
222 6. Local Broken Link Checker engine settings
223
224 == Changelog ==
225
226 = 2.4.7 =
227 * Fix: Removed Edit and Unlink Banner actions from the Local Scanner page.
228 * Fix: Updated webhook parse_request handler to use add_action instead of add_filter.
229 * Fix: Prevented broken links from being highlighted for non-logged-in users.
230 * Fix: Updated email reports to use public post links.
231 * Enhance: Added the blc_allow_subsites_email_notification filter to control sending email notifications from subsites in multisite installations.
232 * Fix: Updated React JS files to properly support translations.
233 * Fix: Removed type attributes from inline styles.
234 * Fix: Updated user-count logic in the Schedule Scan modal to correctly handle changes in user numbers.
235 * Enhance: Improved keyboard accessibility for the Search Users field in the Schedule Scan modal.
236 * Fix: Miscellaneousness improvements
237
238 = 2.4.6 =
239 * Fix: Patched a vulnerability issue.
240
241 = 2.4.5 =
242 * Fix: Patched a vulnerability issue.
243
244 = 2.4.4 =
245 * Fix: Resolved issue where editing a link would get stuck in the Hub.
246 * Fix: Updated the Hub link to correctly point to the BLC page within the Hub.
247
248 = 2.4.3 =
249 * Enhance: PHP 8.4 compatibility.
250 * Enhance: Compatibility with WordPress 6.8.
251 * Enhance: Add a new menu item to help you discover other free plugins by WPMU DEV and more
252
253 = 2.4.2 =
254 * Fix: Patched a vulnerability issue.
255 * Fix: Notice about _load_textdomain_just_in_time.
256
257 = 2.4.1 =
258 * Security Fix: Cross-Site Scripting (XSS) vulnerability.
259
260 = 2.4.0 =
261 * Enhance: Improved editing and unlinking of URLs with query parameters.
262 * Fix: Resolved issue with implicit conversion from float to int in YouTube links.
263
264 = 2.3.0 =
265 * New: Connect to the Cloud Engine API directly without installing the Dashboard plugin.
266 * Fix: PHP8 Deprecation message.
267 * Fix: Recipient confirmation link from scheduled scan email not working.
268 * Fix: User role conflict with Solidwp
269
270 = 2.2.4 =
271 * Enhance: Code stability improvements.
272
273 = 2.2.3 =
274 * Enhance: Optimize local db tables.
275 * Fix: Rare but possible Fatal error when unlinking a link.
276 * Fix: Removed deprecated Defender hooks.
277
278 = 2.2.2 =
279 * Fix: Exclusions list spacing in Local settings.
280 * Fix: Database error Illegal mix of collations.
281 * Enhance: Use WP_HTML_Tag_Processor and DOMDocument instead of regex in Cloud Edit/Unlink.
282
283 = 2.2.1 =
284 * Fix: Youtube playlist show as not found (Local engine).
285 * Fix: In Scheduled scan, users can be added twice in list.
286 * Fix: PHP8 Deprecation messages.
287 * Fix: Callback missing from Local cron jobs.
288 * Enhance: Added BLC bot UA in Defender's bot allowlist.
289
290 = 2.2.0 =
291 * New: Edit and Unlink broken links in Cloud Engine.
292 * Fix: Editor access blocked in Local Engine.
293 * Enhance: PHP 8.1 and 8.2 compatibility.
294
295 = 2.1.0 =
296 * Improved admin menus, so they are separated to Cloud and Local Engine.
297 * Fix multiple emails issue.
298 * Fix Dashboard fonts.
299 * Fix insisting line-through text decoration on links in front end.
300
301 = 2.0.0 =
302 * Version 2 release
303 * Added connection to free Hub features for cloud based Broken Link Checker.
304
305 = 1.11.21 =
306 * Fix strict comparison causing db queries
307
308 = 1.11.20 =
309 * Fix XSS vulnerability
310
311 = 1.11.19 =
312 * Enhance compatibility with WordPress 6.1
313 * Fix deprecated sanitization filter FILTER_SANITIZE_STRING
314
315 = 1.11.18 =
316 * Updated UA string
317
318 = 1.11.16 =
319 * Enhance compatibility with PHP 8
320 * Enhance compatibility with WordPress 5.8
321 * Remove donation links and adds
322
323 = 1.11.15 =
324 * Added integration with WP External Links plugin
325
326 = 1.11.14 =
327 * Added compatibility for WP 5.5.
328
329 = 1.11.13 =
330 * Added filter for disabling email notifications.
331 * Added filter to use GET requests. (Thanks to [Stian Lund](https://github.com/Pathduck))
332 * Added option to disable last updated time on post types.
333 * Added option to check post excerpts.
334 * Added a confirmation box when unlinking.
335 * Added basic multisite support.
336 * Added proper error messages on YouTube video errors.
337 * Fixed bulk recheck option.
338 * Fixed minor database errors.
339 * Improved performance.
340 * Removed default YouTube API key.
341 * Removed usage of depricated WP Snoopy.
342
343 = 1.11.12 =
344 * Added an interface to use personal YouTube API Key
345 * Fixed database errors on installation for some hosts.
346 * Fixed link editor not working with elementor.
347 * Fixed custom field key with multiple keys not rendering.
348 * Fixed compatibility issues with Business Directory plugin.
349 * Fixed bulk actions not working properly for some actions.
350 * Updated the owner on repository.
351
352 = 1.11.11 =
353 * Fixed SQL errors caused on some hosts.
354 * Fixed search filters & pagination.
355 * Fixed link table design in mobile devices.
356 * Fixed deprecated functions on PHP 7.4
357 * Fixed filter_var deprecated notices.
358 * Improved code with WPCS.
359 * Added a new API key for the YouTube API.
360
361 = 1.11.10 =
362 * Fixed create_function deprecated notices.
363 * Fixed missing license information.
364 * Fixed table prefix on delete post action (Thanks to [Guillaume Boudreau](https://github.com/gboudreau))
365 * Merges cron schedules into 1 hook (Thanks to [Der Mundschenk & Compagnie](https://github.com/mundschenk-at))
366 * Add escaping to search params.
367 * Tested up to WordPress 5.3
368 * Updated laguage files
369
370 = 1.11.9 =
371 * Fixed Reflected XSS (Thanks to [Tobias Fink](https://github.com/sbaresearch/advisories/tree/public/2019/SBA-ADV-20190913-02_WordPress_Plugin_Broken_Link_Checker) for the report)
372 * Fixed param escaping to avoid possible XSS attack.
373
374 = 1.11.8 =
375 * Various fixes.
376
377 = 1.11.7 =
378 * Fixed a PHP 7.2 compatibility issue
379
380 = 1.11.6 =
381 * Fixed link check not saving
382
383 = 1.11.5 =
384 * Fixed a PHP 5.2 compatibility issue
385
386 = 1.11.4 =
387 * Fixed a few more PHP 7.x/5.6 compatibility issues
388
389 = 1.11.3 =
390 * Updated plugin information
391
392 = 1.11.2 =
393 * Fixed a compatibility issue
394
395 = 1.11.1 =
396 * Major performance improvement. Database queries reduced up to 10x in some cases.
397 * Feel free to contribute to the plugin on [GitHub](https://github.com/wpmudev/broken-link-checker). Pull requests welcome!
398
399 = 1.10.11 =
400 * Fixed the issue with HTTPS (Thanks to [gmcinnes](https://wordpress.org/support/profile/gmcinnes))
401 * Broken Link Checker is now on [GitHub](https://github.com/wpmudev/broken-link-checker). Pull Requests welcome.
402
403 = 1.10.10 =
404 * New plugin image that was long overdue.
405
406 = 1.10.9 =
407 * Fixed a security vulnerability where part of the log data visibile in the "Details" view was not properly sanitized.
408 * Updated French translation.
409 * Updated Portuguese translation.
410 * Removed an advertising banner.
411
412 = 1.10.8 =
413 * Added a Swedish translation.
414 * Fixed an encoding-related bug that caused some translated text on the "Broken Links" page to show up as gibberish.
415 * Fixed a potential security vulnerability where the "Final URL" field was not sanitized.
416 * Fixed link text being truncated to 250 characters.
417 * Fixed the "Edit URL" function updating the link text even when the user left that field unchanged.
418 * Tested up to 4.2.1.
419
420 = 1.10.7 =
421 * Tested up to WordPress 4.2.
422
423 = 1.10.6 =
424 * Fixed a serious CSRF/XSS vulnerability.
425 * Switched to YouTube API v3. The old API version will be shut down on April 20, so the plugin needs to be updated to continue checking links to YouTube videos.
426 * Fixed long URLs overflowing into adjacent table columns.
427 * Fixed a few minor PHP strict-mode notices.
428 * Added database character set to the "Show debug info" table.
429
430 = 1.10.5 =
431 * Security: Fixed an XSS vulnerability that could be used by Editors and Administrators to inject arbitrary HTML/JS code in the "Tools -> Broken Links" page.
432 * Other minor security fixes.
433 * Tested on WordPress 4.2 beta.
434
435 = 1.10.4 =
436 * Tested on WordPress 4.1.
437 * Fixed a "Use of undefined constant ENT_HTML401" notice showing up on sites running PHP 5.3 or older.
438 * Fixed a double-escaping bug that could cause some link URLs to be displayed incorrectly.
439 * Updated French translation.
440 * Updated Dutch translation.
441
442 = 1.10.3 =
443 * Security: Filter link URLs before displaying them on the "Broken Links" page.
444 * Security: Prevent Editors and Administrators who don't have the "unfiltered_html" capability from creating "javascript:" URLs by editing existing links.
445
446 = 1.10.2 =
447 * Fixed an XSS vulnerability on the link checker settings page.
448 * Fixed old YouTube embed code parsing – now it should pick up self-closing embed tags without an `<object>` wrapper.
449 * Updated German translation.
450 * Updated Simplified Chinese translation.
451 * Link actions will now wrap properly on small screens.
452
453 = 1.10.1 =
454 * Fixed a database versioning issue that would cause multiple errors when upgrading from 1.9.5 to 1.10.
455
456 = 1.10 =
457 * Added a way to hide individual link actions like "Dismiss" and "Unlink".
458 * Added a "Fix redirect" link action. It replaces a redirect with a direct link. It is hidden by default and can be enabled through the settings page.
459 * Added a "Recheck" link action. Unlike the bulk action by the same name, it checks a link immediately and displays the results without having to refresh the page.
460 * Added a "Dismiss" bulk action.
461 * Added a note below the "link tweaks" settings explaining that they only apply to the contents of posts (and pages, and CPTs), not comments or custom fields.
462 * Made the "Redirect URL" column sortable.
463 * Added a "Details" link to the "Status" column.
464 * Added a "Warnings" section to Tools -> Broken Links. It shows problems that might be temporary or false positives. Warnings can be disabled through the settings page.
465 * Fixed a conflict with plugins that use PHP sessions.
466 * Fixed the "post statuses" option. Now disabling a post status (e.g. "Draft") should take effect immediately.
467 * Fixed the Mediafire link checker.
468 * Fixed the text in the "Status" column being slightly offset vertically when compared to other columns.
469 * Fixed search box position in WP 4.1-alpha.
470 * Added a few workarounds for situations where a custom post type is removed without first removing the posts.
471 * Removed the screen icon. WordPress has deprecated it.
472 * Other minor fixes.
473
474 = 1.9.5 =
475 * Fixed missing YouTube videos not being detected when the video URL starts with https instead of http.
476 * Enabled the YouTube video checker by default on new installations.
477 * Made the "dismiss link" option more permanent. Instead of restoring a dismissed link if the redirect URL changes even a little bit, the plugin will now ignore query string changes. This should fix many of the reports about dismissed links reappearing for no apparent reason.
478 * Updated Portuguese, German and Dutch translations.
479 * Other minor fixes.
480
481 = 1.9.4.2 =
482 * Updated Dutch translation again.
483 * Removed Bulgarian translation because it was poor quality and outdated.
484
485 = 1.9.4.1 =
486 * Updated Dutch translation.
487 * Updated POT file.
488
489 = 1.9.4 =
490 * Tested on WP 4.0 beta.
491 * Added a Serbo-Croatian translation.
492 * Added a Slovakian translation.
493 * Replaced the old Japanese translation with a new and more up-to-date version from a different translator.
494 * Updated Dutch, German, Polish, Hebrew and other translations.
495 * Fixed a notice about undefined index "status_text".
496 * Fixed a "doing it wrong" warning related to screen options.
497 * Fixed spurious false positives on links copied from Word or similar editors.
498 * Fixed view switcher appearance in WP 4.0.
499 * Replaced the deprecated like_esc() function with $wpdb->esc_like() where available.
500 * Fixed plaintext URLs not being detected if they're the very first thing in a post.
501 * Fixed a bug that caused quotes and other special characters in the broken link CSS and removed link CSS fields to be auto-escaped with a slash, potentially breaking the CSS.
502 * Fixed a bug that caused the "check custom fields" feature work inconsistently or not at all on custom post types.
503 * Fixed duplicate custom field links showing up when the user creates a revision with different field values.
504 * Fixed a specific type of false positive where some links would get flagged as "Unknown Error" and the log message would be "Empty reply from server".
505 * Fixed a bug where only the first enabled post type would be resynchronized during plugin activation.
506 * Added more logging.
507 * Removed Megavideo and MegaUpload modules. These sites no longer exist.
508
509 = 1.9.3 =
510 * Tested on WP 3.8.1 and WP 3.9-beta2.
511 * Added an option to sort links by link text. May produce unexpected results for links that have multiple copies with different anchor text.
512 * Added a Vietnamese translation.
513 * Added file-based logging for debugging purposes. Logging can be enabled in the "Advanced" section of the plugin settings page.
514 * Added a "Auto-Submitted: auto-generated" header to notification emails sent by the plugin. This should prevent "out-of-office" auto-responders and similar software from responding to these emails.
515 * Added domain-based rate limiting to the HTTP checker module.
516 * Throttled background parsing by about 40% to reduce overall resource usage.
517 * Fixed (probably) a long-standing bug related to encoding international characters in link URLs.
518 * Fixed a typo in the Polish translation.
519 * Made the error message that's displayed when trying to network-activate the plugin more useful.
520
521 = 1.9.2 =
522 * Fixed several UI/layout issues related to the new WP 3.8 admin style.
523 * Fixed HTML entity codes showing up in confirmation messages in when running a localized version of WP (only affects some languages).
524 * Fixed the "dismiss this notice" link URL not being HTML-escaped.
525 * Fixed a couple of cross-site scripting vulnerabilities related to the sort direction query argument not being properly validated and the bulk action form not escaping the current URL.
526 * Updated Hebrew translation.
527 * Updated French translation.
528 * When you dismiss a link, the dismissed link counter is now updated right away instead of on page reload.
529
530 = 1.9.1 =
531 * Updated Dutch, German, Chinese and Portuguese translations.
532 * Fixed suggestions not working on sites that force HTTPS in the WordPress admin.
533 * Tested on WordPress 3.7.
534
535 = 1.9 =
536 * Added the ability to edit link text from inside the plugin. This features is only available for certain types of links.
537 * Added a "suggestions" feature. When you go to edit a broken link, the plugin will now suggest replacing it with an archived page from the Wayback Machine (if available). You can disable suggestions in Settings -> Link Checker -> General.
538 * Added a Hebrew translation.
539 * Added support for HTML code in custom fields. To make the plugin treat a field as HTML, prefix its name with "html:" in BLC settings. For example, if you have a custom field named "foo" that contains HTML, enter it as "html:foo".
540 * Fixed: The "Status" column is now properly updated when editing a link.
541 * Fixed: Visual feedback when a link is successfully edited. Basically, it briefly changes the row background to green.
542 * Fixed: Email notifications will only include the "see all broken links here" link if the recipient can actually access that link.
543 * Fixed some UI labels not being localizable.
544 * The "Undismiss" action is now displayed in all views instead of only the "Dismissed" view. This way you can tell if a broken link has been dismissed without having to search the "Dismissed" list.
545 * Added information about the last email notification sent to debug info. It's accessible by clicking "show debug info" on the plugin settings page.
546
547 = 1.8.3 =
548 * Added a Hungarian translation.
549 * Fixed a bunch of "deprecated function" notices that showed up due to wpdb::escape() becoming deprecated in WP 3.6.
550 * Fixed a vulnerability that would allow users with the ability to bulk-edit links to execute arbitrary PHP code by using a specially crafted regex as the search string.
551 * Updated German translation.
552 * Replaced the old Dutch translation with a new and more complete translation by Robin Roelofsen.
553
554 = 1.8.2 =
555 * Removed one of the translator credits links because Google flagged it as "suspicious".
556 * Updated French translation.
557 * Updated Polish translation.
558 * Fixed several field size and layout issues that made the search form display incorrectly in Firefox.
559
560 = 1.8.1 =
561 * Updated the Polish and Simplified Chinese translations.
562 * Updated the German translation.
563 * Added translation strings for two modules that were missing them.
564 * Replaced a number of icons with GPL-compatible alternatives from Font Awesome.
565 * Removed some unused images.
566
567 = 1.8 =
568 * Added an option to only show the dashboard widget for users with the Administrator role, or to disable it completely.
569 * Added a way to change the notification email address.
570 * Added support for Smart YouTube "httpv://" links.
571 * Added support for protocol-relative URLs (for example, "//example.com/").
572 * Added support for checking YouTube playlists.
573 * Added a Brazilian Portuguese (pt-BR) translation.
574 * Updated Chinese (Traditional) translation.
575 * Switched over to storing plugin settings as JSON instead of serialized PHP arrays.
576 * Improved error reporting in situations where the plugin can not load settings from the database.
577 * Fixed: Display a more specific error message than just "update failed" when the plugin fails to modify a post. This only applies to WP 3.5+.
578 * Fixed: Display the right URL for embedded YouTube playlists. Previously the plugin would show the same (incorrect) URL for all playlists.
579
580 = 1.7.1 =
581 * Added an Arabic translation.
582 * Updated Portuguese translation.
583 * Updated French translation.
584 * Fixed MySQL errors caused by the plugin converting table names to lowercase.
585 * Fixed a bug where the plugin would sometimes report broken Twitter links as working.
586 * Fixed the plugin author URL.
587
588 = 1.7 =
589 * Added support for youtu.be shortlinks.
590 * Added a Finnish translation.
591 * Fixed a graphical bug where the currently selected settings tab would not be highlighted in WordPress 3.5.
592 * Removed the "Blogroll items" module from the list of link containers enabled by default. The WordPress developer team is planning to remove Link Manager from core, and the "Links" menu will be hidden by default in new WP 3.5 installs.
593 * Removed the Admin Menu Editor Pro ad from the "Settings -> Link Checker" and the "Tools -> Broken Links" pages.
594 * Disabled the news link (if any) for users who have donated.
595 * Removed support for pre-WP 2.9 post meta actions.
596 * Minor styling changes of screen meta links.
597 * Updated Danish, Germa, Italian, French and Simplified Chinese translations.
598 * Tested on WordPress 3.5.
599
600 = 1.6.2 =
601 * Another attempt to fix the "database not up to date" that some users are still experiencing even with 1.6.1.
602
603 = 1.6.1 =
604 * Fixed the "database not up to date" bug. Now the plugin should properly upgrade the DB.
605
606 = 1.6 =
607 * Added a way to dismiss links. Dismissed links don't show up in the "Broken" and "Redirects" lists, but are still checked as normal and get the normal link styles (e.g. strike-through for broken links). Useful if you want to, for example, acknowledge that a link is broken and leave it be.
608 * Added a "Redirect URL" column. For redirects this will display the URL that the link redirects to. For normal, non-redirected links, it will be empty. This column is hidden by default. You can enable it in the "Screen Options" panel.
609 * Updated French translation.
610 * Tested on WP 3.4.1.
611 * Replace the "More plugins…" link on the "Broken Links" page with a link to the Admin Menu Editor page. This link will be hidden for users who have donated.
612 * A number of minor fixes.
613
614 = 1.5.5 =
615 * Fix broken image on the settings page.
616
617 = 1.5.3 =
618 * Fixed a bug that would cause the donation flag to be recorded incorrectly. Apologies to everyone who donated.
619
620 = 1.5.2 =
621 * A few minor comment fixes.
622 * Move certain styles to a separate CSS file, which is where they belong.
623 * Replace the ThemeFuse banner with one from ManageWP (will go live on June 5).
624 * Instead of displaying several plugins in the "More plugins by Janis Elsts" box, sometimes display just one plugin (AME).
625
626 = 1.5.1 =
627 * Updated Portuguese translation.
628 * Updated German translation.
629 * Fixed the donation link to properly return to the Dashboard upon completion.
630 * Do not display ads to users who have donated.
631
632 = 1.5 =
633 * Added a FileServe checker.
634 * Added Turkish translation.
635 * Added GoogleVideo and Megavideo embed support.
636 * Fixed Megaupload links being reported with an "Unknown error" message when it should be "Not found".
637 * Fixed a couple of bugs in the Rapidshare and MediaFire checkers.
638 * Updated German translation.
639 * Updated Italian translation.
640 * Updated Portuguese translation.
641 * The explanatory text for the broken link CSS and removed link CSS inputs can now be translated.
642 * Tested on WP 3.4-alpha-20291.
643
644 = 1.4 =
645 * Added an option to send post authors notifications about broken links in their posts.
646 * Added the ability to sort links by URL (click the column header).
647 * Added YouTube API throttling to avoid going over the request quota, which could result in false positives on blogs with lots of YouTube videos.
648 * Added a Bulgarian translation.
649 * Updated Italian, German and Persian translations.
650 * Fixed a bug where the "Feedback" and other screen meta links wouldn't show up in WP 3.3.
651 * Fixed the tab CSS for the plugin settings page. Now they should be the right size and look the same in all modern browsers (tested in IE, Firefox, Chrome and Opera).
652 * Fixed drop-down arrows showing up on meta links that don't actually have dropdowns.
653 * Tested on WP 3.3 (RC2).
654
655 = 1.3.1 =
656 * Added support for the new YouTube embed code style. It needs to be explicitly enabled in options.
657 * Added credits link for the Persian language translator.
658 * Updated Portuguese translation.
659 * Updated German translation.
660 * Partial fix for Mediafire checker failing with a fatal error in some situations.
661
662 = 1.3 =
663 * Dropped PHP 4 support.
664 * Fixed a whole lot of PHP 5 related notices and strict-mode warnings.
665 * Fixed some inconsistent method declarations.
666 * Fixed a long-standing bug in the ver. 0.9.5 upgrade routine.
667 * Fixed the look and behavior of the "Feedback" and "Go to Broken Links/Go to Settings" links to be consistent with other WP screen meta links.
668 * Updated Chinese (TW) translation.
669 * Updated Portuguese translation.
670 * Updated Italian translation (minor fix).
671 * Replaced the link to FindBroken with a short list of (some of) my other plugins.
672
673 = 1.2.5 =
674 * Added Irish translation.
675 * Added Persian translation.
676 * Added Korean translation.
677 * Added Chinese Traditional translation.
678 * Updated German translation.
679 * Fixed (probably) missing diacritics in the Romanian translation.
680 * Fixed a crash bug caused by class-json.php no longer being present in the latest WP. Luckily, the plugin only really needed that class for backwards compatibility.
681 * Made the "database not up to date" error message a bit more helpful.
682 * Shortcodes in image URLs should work now.
683 * The Dashboard widget is no longer visible to non-privileged users.
684 * Replaced multiple instances of get_option('home') and get_option('siteurl') – both now deprecated – with home_url().
685
686 = 1.2.4 =
687 * Fixed a very stupid bug where links would be checked very slowly or not at all.
688 * Fixed the display of the news link.
689 * Updated Italian translation.
690
691 = 1.2.3 =
692 * Updated Portuguese translation.
693 * Updated German translation.
694 * Switched to a simpler, MySQL-based locking mechanism. Note: This may cause trouble for people who've hacked their WP install to use persistent database connections.
695 * Added a poll asking for feedback on a new BLC-related web application idea.
696 * Minor wording change in the debug info table.
697
698 = 1.2.2 =
699 * All Pro features now included in the free version!
700 * Updated Japanese translation.
701 * Updated Polish translation.
702 * Updated Portuguese translation.
703 * Added Romanian translation.
704 * Fixed a tab layout bug in IE 7.
705 * Fixed UTF-8 characters outside the domain name being encoded incorrectly (may only work with Curl).
706 * Fixed a missing translation in email notifications.
707 * Fixed a rare "only variables can be returned by reference" notice.
708 * Added a donation button and a MaxCDN ad to the Settings page.
709 * Added a "Go to Settings" button to the Broken Links page, and a "Go to Broken Links" button to the Settings page.
710 * Settings page now looks better on small screens.
711 * Email notifications are now enabled by default.
712 * "Link status" in the search form no longer defaults to the currently displayed filter/view.
713 * Made the "installation failed" message a bit more helpful.
714
715 = 0.9.7.2 =
716 * Added Polish translation.
717 * Updated Danish translation.
718 * Updated Italian translation.
719 * Fixed an uncommon "Cannot break/continue 1 level" error.
720 * Added a new user feedback survey (the link only shows up after you've used this version for at least two weeks).
721
722 = 0.9.7.1 =
723 * Updated German translation and fixed the corresponding credits link.
724
725 = 0.9.7 =
726 * Allow custom field names with spaces.
727 * Updated German translation.
728 * Updated Portuguese translation
729 * Made the "Current load" label localizeable.
730 * Fixed a translation-related bug where the various checkboxes in the "Link types" and "Look for links in" sections would appear in English even when a valid translation was available.
731 * Fixed non-ASCII URLs being mangled when links are automatically marked with the "broken_link" CSS class.
732 * Fixed blog names that include quotes being displayed incorrectly in email notifications.
733 * When removing a link via the "Unlink" action, add the old URL as the title attribute of the now-unlinked anchor text.
734 * When resolving relative URLs posted in comments, use the comment's permalink as the base (previously the blog's homepage URL was used).
735
736 = 0.9.6 =
737 * Updated Danish translation.
738 * Updated Italian translation.
739 * Updated Portuguese translation
740 * Fixed incorrect parsing of relative URLs that consist solely of a query string or \#fragment.
741 * Fixed superfluous resynchronization requests being issued when the plugin is re-activated.
742 * Fixed only one of character set and collation being specified for the plugin's tables.
743 * Added default status text for HTTP codes 509 and 510.
744 * Added the installation log to debug info output.
745 * Added lots of logging to routines called on activation.
746 * Added an "Upgrade to Pro" button to the plugin's pages.
747 * Removed the highlight on the "Feedback" button.
748 * Fail fast if trying to activate on an unsupported version of WordPress.
749 * Ensure PHP and browser timeouts don't prematurely terminate the installation/upgrade script.
750 * Plugin JavaScript and CSS files are now loaded using HTTPS when FORCE_ADMIN_SSL is on.
751
752 = 0.9.5 =
753 * Added the ability to check scheduled, draft and private posts.
754 * Added a way to individually enable/disable the monitoring of posts, pages, comments, the blogroll, and so on.
755 * New "Status" column in the "Broken Links" table.
756 * Visible table columns and the number of links per page can now be selected in the "Screen Options" panel.
757 * Replaced the "Delete sources" action with "Move sources to Trash" (except on blogs where Trash is disabled).
758 * New URL editor interface, now more consistent with the look-n-feel of the inline editor for posts.
759 * New status icon to help distinguish "maybe broken" and "definitely broken" links.
760 * Tweaked table layout – links first, posts/etc last.
761 * Added "Compact" and "Detailed" table views (for now, the differences are quite minor).
762 * Split the settings page into several tabs.
763 * Removed the "Details" links as redundant. To display link details, click the contents of the "Status" or "Link text" columns instead.
764 * Added a way to individually enable/disable the monitoring of various link types, e.g. HTML links, images, etc.
765
766 = 0.9.4.4 =
767 * Fixed "Edit URL" and "Unlink" not working on PHP4 servers.
768
769 = 0.9.4.3 =
770 * Another PHP 4 fix. Considering dropping support for PHP4 in light of the counterintuitive workarounds required to make perfectly valid PHP5 code work in that ghastly thing.
771 * Added a partial workaround for sites that have use strange DB\_CHARSET settings.
772
773 = 0.9.4.2 =
774 * Added more debugging data to the "Show debug info" table.
775 * Added missing indexes to the instance table.
776 * Yet more PHP4 compatibility fixes.
777 * Added a notification bubble with the current number of broken links to the Tools -> Broken Links menu item.
778
779 = 0.9.4.1 =
780 * Fixed PHP 4 incompatibilities introduced in the previous release.
781 * Fixed bulk unlink.
782 * Updated Italian translation.
783 * Updated Danish translation.
784
785 = 0.9.4 =
786 * Fixed missing post and comment edit links in email notifications.
787 * Updated Danish translation.
788 * Added Japanese translation.
789 * Added a Hindi translation.
790 * Added a Portuguese translation.
791 * Slightly improved DB error reporting.
792 * Added the ability to disable comment link checking.
793 * Fixed a couple of minor bugs that made some of the UI text impossible to translate.
794 * The plugin's tables are now created with the same character set and collation settings as native WP tables (previously they used the database defaults instead).
795 * Automatically clean up and optimize the plugin's tables twice per month.
796 * Instead of displaying a zero response time for timed out links, now it shows how long the plugin waited before assuming that the link has timed out.
797 * Added the default PHP script execution time limit to the "Debug info" table.
798 * Added a "Mark as not broken" bulk action.
799 * Links that make the plugin crash are no longer assumed to be broken.
800
801 = 0.9.3 =
802 * Fixed a JS error that only happened in IE by removing a superfluous comma from an object literal.
803 * Fixed load limiting not being completely disabled on servers that don't support it.
804 * Fixed a mishandling of new comments that would occur when CAPTCHA verification was enabled and someone entered an incorrect code.
805 * Added installation/update logging.
806 * Fixed a crash that would occur when the user tried to permanently delete a trashed post that has comments.
807
808 = 0.9.2 =
809 * In Tools -> Broken Links, highlight links that have been broken for a long time (off by default).
810 * Fixed an invalid parameter bug in the HTTP link checking routine.
811 * Added nofollow to broken links (optional, only works for links in posts).
812 * Fixed some PHP notices and a bunch of deprecated function calls.
813 * Fixed "Trash" links for comments.
814
815 = 0.9.1 =
816 * Fixed the "syntax error: unexpected $end" problem caused by a unintentional PHP shorttag.
817 * Eliminated a bunch of false positives by adding a workaround for buggy servers that incorrectly respond with 404 to HEAD requests.
818 * Increased the default server load limit to 4.0 to prevent the plugin from idling endlessly on weakling servers.
819
820 = 0.9 =
821 * Masquerade as IE 7 when using the Snoopy library to check links. Should prevent some false positives.
822 * Fixed relative URL handling (yet again). It'll work this time, honest ;)
823 * Fixed post titles being displayed incorrectly on multilingual blogs (props Konstanin Zhilenko)
824 * Misc fixes/comments.
825 * "Unlink" works properly now.
826 * Additional source code comments.
827 * Don't try to display icons in email notifications. It didn't work anyway.
828 * Use AJAX nonces for additional security.
829 * General code cleanup.
830 * Email notifications about broken links.
831 * "Recheck" bulk action.
832 * Check comment links.
833 * Suspend checking if the server is overloaded (on by default).
834 * Icons for broken links and redirects.
835 * Fixed some UI glitches.
836 * "Discard" gone, replaced by "Not broken".
837 * "Exclude" gone from action links.
838 * Better handling of false positives.
839 * FTP, mailto:, javascript: and other links with unsupported protocols now show up in the �All links� list.
840
841 = 0.8.1 =
842 * Updated Italian translation.
843 * Removed the survey link.
844
845 = 0.8 =
846 * Initial support for performing some action on multiple links at once.
847 * Added a "Delete sources" bulk action that lets you delete all posts (or blogroll entries) that contain any of the selected links. Doing this in WP 2.9 and up this will instead move the posts to the trash, not delete them permanently.
848 * New bulk action : Unlink. Removes all selected links from all posts.
849 * New bulk action : Fix redirects. Analyzes the selected links and replaces any redirects with direct links.
850 * Added a notice asking the user to take the feedback survey.
851 * Update the .POT file with new i18n strings.
852
853 = 0.7.4 =
854 * Fixed a minor bug where the plugin would display an incorrect number of links in the "Displaying x-y of z" label when the user moves to a different page of the results.
855 * Added Ukrainian translation.
856
857 = 0.7.3 =
858 * Reverted to the old access-checking algorithm + some error suppression.
859
860 = 0.7.2 =
861 * Only use the custom access rights detection routine if open\_basedir is set.
862
863 = 0.7.1 =
864 * Updated Russian translation.
865 * Yet another modification of the algorithm that tries to detect a usable directory for the lockfile.
866
867 = 0.7 =
868 * Added a Search function and the ability to save searches as custom filters
869 * Added a Spanish translation
870 * Added a Belorussian translation
871 * Added an option to add a removed\_link CSS class to unlinked links
872 * Slight layout changes
873 * Added localized date display (where applicable)
874 * The background worker thread that is started up via AJAX will now close the connection almost immediately after it starts running. This will reduce resource usage slightly. May also solve the rare and mysterious slowdown some users have experienced when activating the plugin.
875 * Updated Italian translation
876 * Fixed an unlocalized string on the "Broken Links" page
877
878 = 0.6.5 =
879 * Added Russian translation.
880
881 = 0.6.4 =
882 * Added French translation.
883 * Updated Italian translation.
884
885 = 0.6.3 =
886 * Added a German translation.
887
888 = 0.6.2 =
889 * Added an Italian translation.
890 * Added a Danish translation.
891 * Added a Chinese (Simplified) translation.
892 * Added a Dutch translation.
893
894 = 0.6.1 =
895 * Some translation-related fixes.
896
897 = 0.6 =
898 * Initial localization support.
899
900 = 0.5.18 =
901 * Added a workaround for auto-enclosures. The plugin should now parse the "enclosure" custom field correctly.
902 * Let people use Enter and Esc as shortcuts for "Save URL" and "Cancel" (respectively) when editing a link.
903
904 = 0.5.17 =
905 * Added a redirect detection workaround for users that have safe\_mode or open\_basedir enabled.
906
907 = 0.5.16.1 =
908 * Be more careful when parsing safe\_mode and open\_basedir settings.
909
910 = 0.5.16 =
911 * Also try the upload directory when looking for places where to put the lockfile.
912
913 = 0.5.15 =
914 * Editing links with relative URLs via the plugin's interface should now work properly. Previously the plugin would just fail silently and behave as if the link was edited, even if it wasn't.
915
916 = 0.5.14 =
917 * Made the timeout value used when checking links user-configurable.
918 * The plugin will now report an error instead of failing silently when it can't create the necessary database tables.
919 * Added a table listing assorted debug info to the settings page. Click the small "Show debug info" link to display it.
920 * Cleaned up some redundant/useless code.
921
922 = 0.5.13 =
923 * Fixed the bug where the plugin would ignore FORCE\_ADMIN\_SSL setting and always use plain HTTP for it's forms and AJAX.
924
925 = 0.5.12 =
926 * Let the user set a custom temporary directory, if the default one is not accessible for some reason.
927
928 = 0.5.11 =
929 * Use absolute paths when loading includes. Apparently using the relative path could cause issues in some server configurations.
930
931 = 0.5.10.1 =
932 * Fix a stupid typo
933
934 = 0.5.10 =
935 * Separated the user-side functions from the admin-side code so that the plugin only loads what's required.
936 * Changed some internal flags yet again.
937 * Changed the algorithm for finding the server's temp directory.
938 * Fixed the URL extraction regexp again; turns out backreferences inside character classes don't work.
939 * Process shortcodes in URLs.
940 * If the plugin can't find a usable directory for temporary files, try wp-content.
941 * Don't remove <pre> tags before parsing the post. Turns out they can actually contain valid links (oops).
942
943 = 0.5.9 =
944 * Added an autogenerated changelog.
945 * Added a workaround to make this plugin compatible with the SimplePress forum.
946 * Fixed <pre> block parsing, again.
947 * Fixed a bug where URLs that only differ in character case would be treated as equivalent.
948 * Improved the database upgrade routine.
949
950 = 0.5.8.1 =
951 * Added partial proxy support when CURL is available. Proxies will be fully supported in a later version.
952
953 = 0.5.8 =
954 * Fixed links that are currently in the process of being checked showing up in the "Broken links" table.
955 * The post parser no longer looks for links inside <pre></pre> blocks.
956
957 = 0.5.7 =
958 * Slightly changed the dashboard widget's layout/look as per a user's request.
959
960 = 0.5.6 =
961 * Improved relative URL parsing. The plugin now uses the permalink as the base URL when processing posts.
962
963 = 0.5.5 =
964 * Minor bugfixes
965 * URLs with spaces (and some other special characters) are now handled better and won't get marked as "broken" all the time.
966 * Links that contain quote characters are parsed properly.
967
968 = 0.5.4 =
969 * Fixed the uninstaller not deleting DB tables.
970 * Other uninstallation logic fixes.
971
972 = 0.5.3 =
973 * Improved timeout detection/handling when using Snoopy.
974 * Set the max download size to 5 KB when using Snoopy.
975 * Fixed a rare bug where the settings page would redirect to the login screen when saving settings.
976 * Removed some stale, unused code (some still remains).
977
978 = 0.5.2 =
979 * Fixed a SQL query that had the table prefix hard-coded as "wp\_". This would previously make the plugin detect zero links on sites that have a different table prefix.
980
981 = 0.5.1 =
982 * Fix a bug when the plugin creates a DB table with the wrong prefix.
983
984 = 0.5 =
985 * This is a near-complete rewrite with a lot of new features.
986 * See �http://w-shadow.com/blog/2009/05/22/broken-link-checker-05/ for details.
987
988 = 0.4.14 =
989 * Fix false positives when the URL contains an #anchor
990
991 = 0.4.13 =
992 * (Hopefully) fix join() failure when Snoopy doesn't return any HTTP headers.
993
994 = 0.4.12 =
995 * *There are no release notes for this version*
996
997 = 0.4.11 =
998 * Set the Referer header to blog's home address when checking a link. This should help deal with some bot traps.
999 * I know, I know – there haven't been any major updates for a while. But there will be eventually :)
1000 * Fix SQL error when a post is deleted.
1001
1002 = 0.4.10 =
1003 * Changed required access caps for "Manage -> Broken Links" from manage\_options to edit\_ohers\_posts. This will allow editor users to access that page and it's functions.
1004
1005 = 0.4.9 =
1006 * Link sorting, somewhat experimental.
1007 * JavaScript sorting feature for the broken link list.
1008
1009 = 0.4.8 =
1010 * CURL isn't required anymore. Snoopy is used when CURL isn't available.
1011 * Post title in broken link list is now a link to the post (permalink). Consequently, removed "View" button.
1012 * Added a "Details" link. Clicking it will show/hide more info about the reported link.
1013 * "Unlink" and "Edit" now work for images, too. "Unlink" simply removes the image.
1014 * Database modifications to enable the changes described above.
1015 * Moved the URL checking function from wsblc\_ajax.php to broken-link-checker.php; made it more flexible.
1016 * New and improved (TM) regexps for finding links and images.
1017 * A "Settings" link added to plugin's action links.
1018 * And probably other stuff I forgot!
1019 * Grr :P
1020
1021 = 0.4.7 =
1022 * Minor enhancements :
1023 * Autoselect link URL after the user clicks "Edit".
1024 * Make sure only HTTP and HTTPS links are checked.
1025 * More substantive improvements will hopefully follow next week.
1026
1027 = 0.4.6 =
1028 * Minor compatibility enhancement in wsblc\_ajax.php – don't load wpdb if it's already loaded.
1029
1030 = 0.4.5 =
1031 * Bugfixes. Nothing more, nothing less.
1032 * Revisions don't get added to the work queue anymore.
1033 * Workaround for rare cURL timeout bug.
1034 * Improved WP 2.6 compatibility.
1035 * Correctly handle URLs containing a single quote '.
1036
1037 = 0.4.4 =
1038 * Consider a HTTP 401 response OK. Such links won't be marked as broken anymore.
1039
1040 = 0.4.3 =
1041 * Fix : Don't check links in revisions, only posts/pages.
1042
1043 = 0.4.2 =
1044 * *There are no release notes for this version*
1045
1046 = 0.4.1 =
1047 * Split translated version from the previous code. Was causing weird problems.
1048
1049 = 0.4-i8n =
1050 * *There are no release notes for this version*
1051
1052 = 0.4 =
1053 * Added localization support (may be buggy).
1054
1055 = 0.3.9 =
1056 * Fix : Use get\_permalink to get the "View" link. Old behavior was to use the GUID.
1057
1058 = 0.3.8 =
1059 * Edit broken links @ Manage -> Broken Links (experimental)
1060
1061 = 0.3.7 =
1062 * Change: A bit more verbose DB error reporting for the "unlink" feature.
1063
1064 = 0.3.6 =
1065 * Switch from wp\_print\_scripts() to wp\_enqueue\_script()
1066 * Wp\_enqueue\_script()
1067
1068 = 0.3.5 =
1069 * New: "Delete Post" option.
1070 * New: Increase the compatibility number.
1071 * Change: Default options are now handled in the class constructor.
1072
1073 = 0.3.4 =
1074 * Ignore mailto: links
1075 * Ignore links inside <code> blocks
1076
1077 = 0.3.3 =
1078 * *There are no release notes for this version*
1079
1080 = 0.3.2 =
1081 * Fix Unlink button not working, some other random fixes
1082
1083 = 0.3.1 =
1084 * *There are no release notes for this version*
1085
1086 = 0.3 =
1087 * *There are no release notes for this version*
1088
1089 = 0.2.5 =
1090 * Applied a small patch @ 347
1091 * Fix some omissions
1092 * Lots of new features in version 0.3
1093
1094 = 0.2.4 =
1095 * Bigfix – use GET when HEAD fails
1096
1097 = 0.2.3 =
1098 * MySQL 4.0 compatibility + recheck\_all\_posts function
1099
1100 = 0.2.2.1 =
1101 * *There are no release notes for this version*
1102
1103 = 0.2.2 =
1104 * *There are no release notes for this version*
1105
1106 = 0.2 =
1107 * *There are no release notes for this version*
1108
1109 = 0.1 =
1110 * *There are no release notes for this version*
1111
1112 == Upgrade Notice ==
1113
1114 = 1.10.5 =
1115 Fixes a significant security issue.
1116
1117 = 1.9.2 =
1118 Fixes UI issues related to the new WP 3.8 admin style and a few security vulnerabilities.
1119
1120 = 1.6.2 =
1121 Attempts to fix the "database not up to date" bug that some users are still experiencing with 1.6.1. If you have not encountered this bug, you can skip this update.
1122
1123 = 1.4 =
1124 Adds an option to send post authors notifications about broken links in their posts and the the ability to sort links by URL, as well as a number of other updates and fixes.
1125
1126 = 0.9.4.2 =
1127 Fixes a major PHP4 compatibility problem introduced in version 0.9.4 and adds a notification bubble with the current broken link count to the "Broken Links" menu.
1128