*Licensed Video Link Checker owners will get automatic updates through their WordPress admin.
= 4.5.1 Released February 1st, 2022 =
* PHP 8 support changes.
* WP 5.9 support changes.
* NxLoad – removed support. Site is offline.
* PlayTube – removed support. Site is offline.
* SoundCloud – removed support. API is no longer public.
* VidCloud – removed support. API removed.
* VidLoad – removed support. Site is offline.
= 4.5 Released September 24th, 2021 =
* updated some urls to https
* also check for age restrictions for videos in custom meta fields
* action_wp_mail_failed made a public function.
* Backwards compat fix for PHP 5.6.40
= 4.4.1 Released August 8th, 2021 =
* Option to Remove broken video links now includes videos on their own line that WordPress embeds.
= 4.4 Released August 6th, 2021 =
* Added option to allow a delay between each chunk scan, if desired.
* Posts now scanned oldest to newest, to allow for new posts added during a long scan.
= 4.3 Released May 25th, 2021 =
* Log Report – Post links show correct permalink when post status is changed to draft/pending.
* YT scraper now recognizes generic error messages from the player.
* Verify waiting data between chunk scans so there is no overlap.
* Duplicate videos between chunks are now only checked once.
= 4.2 Released May 20th, 2021 =
* Added ability in Scan Options to add tags on posts with broken videos.
* Added 1s delay to scraper for each video to avoid Google captcha bot.
= 4.1.2 Released May 19th, 2021 =
* Report Options – Added YouTube-only option to scrape video page for non-api conditions.
= 4.1.1 Released May 16th, 2021 =
* Report Options – Added YouTube-only option to report ended live streams as broken.
= 4.1 Released May 11th, 2021 =
* Report Options – Added YouTube-only options to avoid certain conditions being reported as broken.
* YouTube embeds that are age restricted now considered broken (they are only playable on youtube).
* Plugin Update Checker updated to v4.11
* All filters and action hooks now have vlc_ prefix.
* Sanitize all output elements.
* Custom log table now cleared with DELETE FROM instead of TRUNCATE (lock issues with old innoDBs).
* Added filter ‘vlc_link_result’ so users can customize video check results and actions.
* Added support for DoodStream.com
* Added support for PlayTube.ws
= 4.0.2 Released April 21st, 2021 =
* YouTube bugfix: unlisted videos do not override region restriction checks.
= 4.0.1 Released April 19th, 2021 =
* YouTube: unlisted videos now flagged as broken.
= 4.0 Released April 2nd, 2021 =
* YouTube regex patterns rewritten to handle more formats.
* YouTube mixed urls will prioritize videoID over playlistID.
* Vimeo advanced: will check HTTP status code if player.vimeo.com API request returns not found.
* Bugfix when saving multiple emails to email scan report to or from.
* Error message for VLC being unable to extend execution time should only appear once.
* Better handling when stopping a chunk scan.
= 22.214.171.124 Beta Released March 23rd, 2021 =
* YouTube playlist ID minimum characters lowered to 18 and regex ID match to greedy.
= 3.8.1 Released March 2nd, 2021 =
* Recognize embed html tag as embedded urls for YouTube, DailyMotion and Vimeo.
* Better fix for no separators between urls.
= 3.8 Released December 16th, 2020 =
* Try to handle no separators between urls. (http://domain1.comhttp://domain2.com)
* Expand shortcodes in content and custom meta before checking for pattern match.
* Added entries for Apiary driven sites in API Options tab. Default keys no longer work.
* Bugfix some YouTube embeddable videos were not checking embeddable status after video switched from public to
* Added API Option for GoUnlimited key.
* Apiary bugfix: Report API timeout as API ERROR.
= 3.7.1 Released April 15th, 2020 =
* Added Scan/Report Options for posts with no detected videos.
= 3.7 Released March 30th, 2020 =
* Added support for VideoBin.co
* Added support for GoUnlimited.to
* Added support for NxLoad.com
* Added support for ClipWatching.com
* Added support for MixDrop.co
* Added support for Vidload.net
* Added support for SuperVideo.tv
* Code consolidation.
* Updated Plugin Update Checker to 4.9
* Streamango site shut down. Removed.
* Verystream site shut down. Removed.
* RapidVideo site shut down. Removed.
* Openload site shut down. Removed.
= 3.6 Released November 1st, 2019 =
* Added support for Archive.org
* Added support for checking YouTube Music Premium.
* Moved ‘Check for copyright violations’ to Report Options tab, reworded.
* Verystream added support for woof.tube urls.
* Verystream added support for /e/ urls.
* regex tweak for Archive.org to allow periods in identifiers.
= 3.5 Released June 6th, 2019 =
* Tweak code for Envato plugin requirements.
* Added support for Verystream.
* Added ‘not registered’ message check to Plugins page.
* Added nonce verification for settings page.
* uninstall support for multisite
* Openload – added support for oladblock.me domain.
* Add query call to log message when API error.
* Added streamcherry
* YouTube pattern tweak for multi-videos on one line.
* Pattern tweaks for strict regex checking.
* Minor pattern tweaks to catch an open tag right after videoUrl.
* More info on preg_last_error code.
* More debug info when checking meta values.
* Fix for command line VLC running from WP-CLI commands.
= 3.4 Released January 28th, 2019 =
* YouTube pattern tweak for older playlist url formats.
* Adjusted minimum delay between chunk scans on page loads.
* Bugfix – Stop Chunk Scan button was not showing during Chunk scans.
* Bugfix – a specific YouTube embed format was not being recognized.
= 3.3 Released January 21st, 2019 =
* Bugfix for scanning serialized multi-dimension arrays as custom meta values.
* Url regex tweaks for YouTube, DailyMotion, fEmbed, GoogleDrive, MixCloud, SoundCloud, Vimeo.
* Added ability for user to add custom url regex patterns via filter hooks.
* Updated plugin update checker (PUC) to v4.5
= 3.1.1 Released December 10th, 2018 =
* Code tweak for GiantBomb regex pattern.
* Better checking for video links stored in a serialized custom meta field.
* YouTube pattern tweak for shortcodes.
* Added copyright checks for YouTube (TESTING).
* Added youtube-nocookie.com to regex patterns.
* Unique link identification for removal option.
* Extra checks to see why wp_schedule_event would fail.
* Code improvement tweaks.
* Changed get_post_stati() to get_post_statuses()
= 3.0 Released November 12th, 2018 =
* Added option to remove broken video links from posts.
* Added support for checking VidCloud videos.
* Added option to scrape video pages for copyright violations for Openload.
= 2.9 Released October 3rd, 2018 =
* Added support for checking Fembed videos.
* Added filter vlc_post_update_check to change args for wp_update_post when broken link detected.
* DailyMotion fix to singly check private IDs.
* DailyMotion report valid private videos as PRIVATE.
* DailyMotion report valid but non-embeddable videos as broken, NOT EMBEDDABLE.
* DailyMotion fix to match private video IDs with their link IDs.
* Change VLC download link to secure SSL.
* Check for multiple array formats in custom meta fields.
* Added extra check for wp_get_current_user for edit links in scan report.
= 2.8.2 Released July 23rd, 2018 =
* Added support for matching Openload and Streamango alias domains oload.download, oload.site, streamcherry.com.
* Bugfix – ensure get_metadata is for post meta types only.
* Bugfix for get_permalink and getMore check.
= 2.8 Released June 16th, 2018 =
* Disable Clear Log button if scan is running.
* Disable Enable Scans button if scan already running.
* Disable Scan Now button if scan already running.
* Exit current scan chunk safely if hit Vimeo ratelimit. Retry scan chunk next Vimeo window reset.
* Small display fixes for chunk scan results.
* Avoid warning message if custom meta fields do not exist for post.
* Default email now set from bloginfo(admin_email) instead of get_userdata(1).
* Urlencode Streamango links.
* Bugfix – check (message only) for ‘video_link_checker_event’ cron entry was wrong.
* Added charset to email message if not default UTF-8.
* Added drop down html5 selection datalist for custom meta fields (taken from last post created).
* Better error message if WP Mail fails.
= 2.7 Released April 26th, 2018 =
* Added option to scan by post chunks on page load, to avoid server timeout limits.
* Set minimum time between chunk scans to 30 seconds to prevent overlap.
* Added option to specific post chunksize.
* VLC will show warning notice if server configuration will timeout PHP scripts.
* Recognize video urls that are urlencoded.
= 2.6 Released April 1st, 2018 =
* VLC meta box fix and will now show on custom post types.
* Added support for Google Drive links.
* Bugfix on DailyMotion limit field.
* Bugfix on YouTube playlist reporting postID.
= 2.5 Released March 27th, 2018 =
* Added option to participate in beta updates.
* Bugfix on DailyMotion if total videos > 100.
* Admin message if set_time_limit fails to extend script execution time.
* wp_remote_get drop decompress=false and sslverify=false
* removed support for Hulu. They have dismantled API for paid service.
* function checks for older WP functions back to WP 3.3
= 2.4 Released March 2nd, 2018 =
* Added support for checking Rapid Video links.
* Log Messages to db instead of tmp files.
* Streamango set timeout queries to API ERROR.
* Streamango preg pattern tweaks.
* YouTube preg pattern tweaks.
* OpenLoad query API in batches of 50.
* Load css/js only on VLC admin pages.
= 2.3 Released February 7th, 2018 =
* Added support for checking Streamango.com video links.
* Added RTL support.
* Preg pattern tweaks to use lazy match over greedy match to avoid PREG_BACKTRACK_LIMIT_ERROR on some PHP versions.
= 2.2 Released October 31st, 2017 =
* set PUC to plugins_loaded hook
* Workaround for PHP 7.1+ file_get_contents bug with negative offset less than start of file.
* OpenLoad: recognize open ended urls.
* Ignore adf.ly prefixes on video links so they can be identified.
= 2.1 Released October 3rd, 2017 =
* Bugfix for ‘Check for Updates’ hook used in 2.0 release.
* Bugfix for recognizing YouTube urls with period in a parameter.
* Bugfix for displaying OpenLoad selection in Scan Options.
= 2.0 Released August 27th, 2017 =
* Added support for checking OpenLoad.co video links.
* Vimeo: will report private or whitelisted videos as broken.
* Vimeo: will detect ‘not found’ error messages as broken.
* YouTube: identify playlists even when keyword ‘playlist’ is missing from link.
* YouTube: VLC will report playlists with 0 videos as broken with status ‘EMPTY’.
* VLC will recover if its scheduled event is removed by another entity.
* Check for updates on WP schedule instead of plugin_init.
= 1.8 Released June 28th, 2017 =
* YouTube updated regex to handle all possible parameters.
* YouTube updated regex to handle video ID with playlist ID.
* Fix for when Vimeo returns error message instead of error code.
* Can now specify hours between scans with decimals (0.5 etc.)
* Switched mail() to wp_email() to allow user to hook in if needed.
* Added option to give a notice for posts where no videos were detected.
= 1.7 Released February 28th, 2017 =
* Added Report Option to expand YouTube playlists and check each video.
* Added filter ‘vlc_post_content’ for user to modify post content.
* Added Report Option to consider YouTube videos as broken if they are blocked in specified region(s).
= 1.6 Released February 7th, 2017 =
* YouTube now checks for any video Region Restrictions.
* Added advanced meta box on Edit pages to scan individual posts.
* Added API support for GiantBomb videos.
= 1.5.7 Released January 18th, 2017 =
* Verify post edit link is valid before adding to scan report.
= 1.5.6 Released January 12th, 2017 =
* Changed email charset to UTF-8.
= 1.5.5 Released December 5th, 2016 =
* Added Report Option to change email ‘From’ field.
= 1.5.4 Released November 22nd, 2016 =
* Added option to skip verification of specified videoIDs.
* Bugfix: Increase max log report db size from 64k to 16mb.
= 1.5.3 Released October 28th, 2016 =
* Bugfix: Clear Log button.
= 1.5.2 Released October 23rd, 2016 =
* Bugfix: Recognize custom meta fields for premium themes that are stored as non-json arrays.
= 1.5.1 Released October 11th, 2016 =
* Valid YouTube playlists with 0 public videos now reported as broken with status EMPTY.
* Replaced Logfiles with Log Reports that are saved to database.
* Added new ‘Report Option’ : ‘Log Reports to save’. Default is 1.
= 1.5 Released Aug 16th, 2016 =
* Vimeo: Added variable delay between requests based on access token’s Vimeo rate limit enacted Aug 9th. Highly recommend getting
your own Vimeo App access token. Please see Docs->API Options for more details.
* moved usable hook for video IDs to apply to ‘any’ custom meta field
= 1.4.3 Released June 13th, 2016 =
* added usable hook in case theme only stores the ID in custom meta fields
= 1.4.2 Released April 10th, 2016 =
* Ensure meta fields search for both video links and video embeds.
= 1.4.1 Released March 28th, 2016 =
* function check for apache_get_modules for certain PHP builds.
= 1.4 Released March 27th, 2016 =
* if changing post status, stop WordPress KSES from stripping suspect code.
* show debug/error messages if running from command line.
* changed ‘vlc_scan_posts’ filter and added ‘vlc_scan_max_posts’ filter.
* Settings: show info message if mod_php5 not found.
* replaced curl with wp_remote_get
* pages will now be checked separately if a category is selected.
= 1.3.3 Released February 23rd, 2016 =
* Report: Do not show edit link if broken post sent to Trash.
* Report: Show post status if it is not published.
* Bugfix: don’t report playlistIDs if API Error.
* Report curl error if unable to connect to Envato API.
= 1.3.2 Released January 26th, 2016 =
* Bugfix: use correct post ID when changing post status.
= 1.3.1 Released December 30th, 2015 =
* Added DISABLE_WP_CRON check when trying to enable Scheduler.
* Bugfix: include_once plugin.php for is_plugin_active() via cron.
= 1.3 Released December 4th, 2015 =
* Added ability to select posts by category.
* Added ‘su_youtube_advanced’ to recognized embed shortcodes.
* If Video API call returns error (such as timeout), set video status to API ERROR.
* Envato API class tweak
= 1.2 Released November 15th, 2015 =
* Added command line scan available to avoid hardset mod_fcgid timeouts.
* Tweak for embed shortcode url detection.
* Added support for custom post stati.
* Added shortcode check to verify it is used for embedding.
* Recognized embed shortcodes: embed, video, jwplayer, fvplayer, embedyt, flowplayer, videojs, mbYTPlayer.
* Added filter ‘vlc_embed_shortcodes’ to add custom shortcodes recognized as embeds.
* Fix for determining single line urls as embeds.
* filter vlc_scan_posts tweaked.
* Data saved to tmp files instead of memory.
* Plugin will automatically extend PHP max script time as needed using mod_php.
* Will try to create empty logfile if it does not exist.
= 1.1 Released November 2nd, 2015 =
* Added YouTube status notification for unlisted yet still valid videos.
* Added Plugin Update Checker for automatic updates.
* Separated Options into tabs for easier management.
* Added YouTube check for embeddable boolean value.
* Added support for [WordPress Video Gallery](https://wordpress.org/plugins/contus-video-gallery/).
*  links work directly in scan report if logged in.
* Email reports will be sent FROM the admin email specified in WordPress Settings->General->Email Address.
* Buttons for support and review. Changed buttons to primary color.
* Removed rawurldecode call on content. Allow hexcodes in regex patterns.
* MixCloud – tweak regex pattern for !thumbnail subdomain.
= 1.0 Released September 22nd, 2015 =