WP-DownloadManager · Version history
WP-DownloadManager changelog and version history
- Latest version
- 2.0.2
- Oct 2, 2026 (1 month ago)
- Releases
- 28
- since 2007
- In the last year
- 5
- about one every 58 days
- Tested up to
- WordPress 7.1.4
- PHP 8.2 or later
Releases each year
- 20071 release
- 20082 releases
- 20091 release
- 20101 release
- 20144 releases
- 20153 releases
- 20161 release
- 20181 release
- 20202 releases
- 20212 releases
- 20231 release
- 20241 release
- 20253 releases
- 20265 releases
20265 releases
WP-DownloadManager 2.0.2Latest
- FIXED: Updating to 2.0.1 could reset your download path to wp-content, and every file then answered “File does not exist” — the listing still showed them, the links still pointed at them, and none of them downloaded. The update re-checks your settings, and the check that keeps the download path ins…
- FIXED: Manage Downloads lost its ID column in 2.0.0, which left the Edit link’s URL as the only place on that screen to find the number [download id="…"] needs. The column is back, and sorts
WP-DownloadManager 2.0.1
- NEW: A Settings link on the plugin’s row on the Plugins screen
- CHANGED: A stylesheet named wp-downloadmanager.css in the parent theme now overrides the plugin’s copy too; a child theme’s copy still wins over both
- CHANGED: The update migration runs on any request rather than only when an admin page loads, so a site updated by an automatic background update no longer serves its front end from unmigrated settings until somebody logs in
- FIXED: A fresh install shipped one category, General, in the numbered slot that means “no category”, so the Add File dropdown offered it as category 0 and every file you added was filed there. The first time you saved the Settings tab — for any reason at all — the category list was renumbered and G…
- FIXED: Manage Downloads read “N/A” for a file in no category, or in one you had deleted, while the Delete File confirmation for that same file left the category blank — one click apart, on the row you had just clicked
WP-DownloadManager 2.0.0
- FIXED: %FILE% and %FILE_DOWNLOAD_URL% were substituted into the templates unescaped, where %FILE_NAME% and %FILE_DESCRIPTION% are filtered. Those two are the fields a site owner is meant to put markup in; a file path and a URL are not. The stock templates put the URL in a double-quoted attribute, w…
- FIXED: Search highlighting rewrote already-rendered markup, so a search term that happened to appear inside an attribute — example in a stored link to example.com — spliced the highlight into the middle of the attribute and ended it early. Any visitor could corrupt a listing’s markup through the se…
- FIXED: The Browse source stored whatever file name was posted, and the download endpoint read it. A name climbing out of the downloads directory — /../../../wp-config.php — was accepted by Add File and served to anyone, because the stored name is a relative path and neither sanitize_text_field() no…
- FIXED: A remote file URL was checked for its scheme and its port and nothing else, so http://169.254.169.254/latest/meta-data/ and http://127.0.0.1/ were both accepted — and the endpoint proxies a remote file with readfile(), which is not wp_safe_remote_get() and makes none of the checks WordPress…
- BREAKING: Requires WordPress 6.8 and PHP 8.2.
- BREAKING: The downloads_page filter is now wp_downloadmanager_page and the download_embedded filter is now wp_downloadmanager_embedded. The old names are gone.
- BREAKING: The nineteen download_* option rows are consolidated into wp_downloadmanager_options, and the schema marker into wp_downloadmanager_version. Settings are migrated automatically and the old rows deleted.
- BREAKING: Download Options and Download Templates are two tabs on one Settings page, so their admin URLs have changed.
- BREAKING: Every class gained a WP_DownloadManager_ prefix, and DownloadManager_Templates became WP_DownloadManager_Template.
- BREAKING: %FILE_ICON% is the complete icon element rather than a GIF file name, and the plugin ships no images at all.
- BREAKING: The stats_display and stats_mostlimit rows shared with WP-Stats are replaced by this plugin’s own settings, and WP-Stats collects sections through the wp_stats_sections filter.
- NEW: A wp downloadmanager WP-CLI command: list, get, stats, reset-hits and delete, the last two asking for confirmation and delete --delete-file taking the file off the server as well.
- NEW: Two editor blocks, Download and Downloads Page, wrapping [download] and [page_download]. The shortcodes are unchanged, still registered and still supported — [download], [download=2], [page_download] and [page_downloads] all behave exactly as before, nothing needs re-saving, and the blocks ren…
- NEW: Manage Downloads is a real WP_List_Table, with sortable columns, row actions, bulk delete, a search box and a per-user rows-per-page setting.
- NEW: One inline SVG icon sprite, drawn in the theme’s own colour and covering modern file types the GIF set never had.
- NEW: Restructured into includes/class-wp-downloadmanager-*.php, with nothing loose at the plugin root.
- NEW: The wp_downloadmanager_capability filter controls who reaches each screen.
- NEW: The widget supports selective refresh in the customizer.
- CHANGED: Dropped jQuery entirely. The quicktag, editor button, timestamp toggle and template reset buttons are vanilla JavaScript, and inline onclick= handlers are gone.
- CHANGED: The stylesheet sets no fonts or colours, uses CSS logical properties so one file serves both text directions, and honours prefers-color-scheme and prefers-reduced-motion.
- FIXED: SQL injection in get_downloads_category(), reachable by anyone able to edit a widget, which could expose files marked Hidden.
- FIXED: SQL injection in the Manage Downloads search box.
- FIXED: The listing and feed sort columns reached ORDER BY unvalidated.
- FIXED: The upload subfolder was not constrained to the downloads directory.
- FIXED: A file name or description holding markup reached the downloads page and the [download] shortcode unescaped, where the widget and the WP-Stats sections had always filtered it. All five now run it through one allow list.
- FIXED: A search term containing regex metacharacters blanked the file name it was highlighting.
- FIXED: wp_get_sites() was removed in WordPress 5.1, so activating or uninstalling on a network fatalled; uninstall also stopped at 100 sites and unwound switch_to_blog() one short.
- FIXED: The widget’s “Display Link To Download Page?” setting never showed as selected and silently reverted, and widget edits made in the block widget editor or the customizer were discarded.
- FIXED: Files in a deleted category no longer emit “Undefined array key” warnings on PHP 8.
- FIXED: The downloads directory is actually created on activation now.
WP-DownloadManager 1.69.2
WP-DownloadManager 1.69.1
20253 releases
WP-DownloadManager 1.69
WP-DownloadManager 1.68.11
WP-DownloadManager 1.68.10
20241 release
WP-DownloadManager 1.68.9
20231 release
WP-DownloadManager 1.68.8
20212 releases
WP-DownloadManager 1.68.7
WP-DownloadManager 1.68.6
20202 releases
WP-DownloadManager 1.68.5
WP-DownloadManager 1.68.4
20181 release
WP-DownloadManager 1.68.2
20161 release
WP-DownloadManager 1.68.1
20153 releases
WP-DownloadManager 1.67
WP-DownloadManager 1.66
WP-DownloadManager 1.65
20144 releases
WP-DownloadManager 1.64
WP-DownloadManager 1.63
WP-DownloadManager 1.62
WP-DownloadManager 1.61
20101 release
WP-DownloadManager 1.50
20091 release
WP-DownloadManager 1.40
20082 releases
WP-DownloadManager 1.31
WP-DownloadManager 1.30
20071 release
WP-DownloadManager 1.00
Questions about WP-DownloadManager’s releases
What is the latest version of WP-DownloadManager?
2.0.2, released on Oct 2, 2026 (1 month ago). It’s tested up to WordPress 7.1.4 and needs PHP 8.2 or later.
How often is WP-DownloadManager updated?
5 releases in the last year, about one every 58 days. Its first release on WordPress.org dates from September 2007.
Know when your rivals ship
Track your plugin and its rivals: TrackWP sees each new release in the nightly snapshot and alerts you, with what it did to their rank.
Start freeRelease dates come from the day each version’s folder was made in WP-DownloadManager’s WordPress.org SVN repository; the notes from its readme’s changelog, as its authors wrote it.