Threshold Plugins

Threshold Easy Downloader

One click to download any installed plugin or theme as a ZIP, from the Plugins list or a Tools page. Built on the fly, nothing stored, no outside services.

  • Version 1.1.0
  • Updated October 28, 2026
  • WordPress 6.0+
  • PHP 7.4+
  • GPL-2.0-or-later
A WordPress plugins list beside a ZIP file with a download arrow

Why I built Easy Downloader

I move plugins and themes between client sites all the time: a licensed build that lives on one site and needs to go to another, a custom theme I want a copy of before an update, a plugin I need to hand to a developer. WordPress has no download button. The plugins that add one were either abandoned, bundled with upsells, or did more than I wanted. So I wrote the small one.

Small code base

Five PHP files, under 70 KB, with no frameworks and no bundled libraries.

Nothing stored

The ZIP is built in the temp folder, streamed to your browser, and deleted. Nothing stays on the server.

Admin only

Needs the install-plugins or install-themes capability plus a per-link token, and the item is checked against the real installed list, so there is no path to anything else.

Keeps itself current

Self-hosted updates through the normal WordPress Updates screen, enrolled in auto-updates the moment it is activated.

Easy Downloader is free software, licensed under GPL-2.0-or-later, like WordPress itself.

User guide

There are no settings. Install it, activate it, and every plugin and theme on the site gets a Download ZIP link.

Getting started

Install and activate the plugin. There is nothing to configure. A Download ZIP link appears in the row actions of every plugin on the Plugins screen, and Tools → Easy Downloader lists every plugin and theme with its own download button.

Updates arrive through the normal WordPress Updates screen, and auto-updates are switched on for the plugin when it is activated.

From the Plugins list

Hover a row on the Plugins screen and click Download ZIP. The file is named slug-version.zip, for example code-snippets-pro-3.9.6.zip, and re-uploads cleanly through Plugins → Add New → Upload Plugin on another site.

Must-use plugins and drop-ins are not offered a link, because WordPress cannot reinstall them from a ZIP. A single-file plugin such as Hello Dolly is packed into its own folder, so re-uploading it installs beside the original rather than over it.

The Tools page

Tools → Easy Downloader shows every plugin and theme with its version, whether it is active, its size on disk, and a download button. The filter box narrows both lists as you type. Sizes are counted once a day, so a plugin you just updated may show its old size until tomorrow.

The page also has a Check for updates now button for the plugin itself.

Themes

Themes are listed on the Tools page, and on a multisite network they also get a Download ZIP link on the network Themes screen. A child theme ZIP contains only the child; the Tools page marks it “child of …”, and the parent is a separate download.

Symbolic links

A symbolic link inside a plugin or theme folder is left out of the ZIP rather than followed, so a link that points outside the folder can never put another file into the download.

Updates

The plugin checks my update server once an hour and shows new releases on the Plugins and Updates screens like any other plugin. Auto-updates are turned on at activation so sites never sit on an old build; if you switch them off on the Plugins screen, that choice is respected.

Deleting the plugin removes everything it wrote: its update cache, the size cache, and its own entry in the auto-update list. It stores no settings.

Troubleshooting

“Unknown plugin” or “Unknown theme”

The item was removed after the page loaded. Reload the list and try again.

A large theme takes a long time

Page-builder themes can run to hundreds of megabytes. The plugin lifts the PHP time limit while it packs the folder, so give it a minute. If the browser gives up first, a lighter copy over SFTP is the fallback.

The host has no ZipArchive

The plugin falls back to the PclZip library that ships with WordPress. The ZIP is the same; building it is a little slower.

Nothing happens on “Check for updates now”

The result box reports the reason. “Could not reach the update server” usually means the host blocks outbound requests; ask your host to allow updates.webdevsandbox.com.

What’s new

1.1.0 — October 2026

A full code review of the previous version. Symbolic links are no longer followed into the ZIP; the update manifest is validated before it is trusted; downloads no longer hang or truncate when output buffering is on; canceled downloads clean up after themselves; Download ZIP no longer appears on must-use plugin rows; uninstall removes everything. The admin page carries the 2026 brand and an accessibility pass. The full list is in the plugin changelog.

License, support, and requirements

License and availability

Threshold Easy Downloader is free software, released under GPL-2.0-or-later. Sites that run it get updates through the normal WordPress Updates screen, from my own update server.

Download latest version

Support and contact

Easy Downloader is developed and supported by Spencer Taylor, Threshold Solutions, South Jersey, USA. For questions about the plugin, use the contact page.

Requirements

WordPress 6.0 or newer and PHP 7.4 or newer. Any web server; no other plugins needed.

Have an idea for a feature you'd like to see in Easy Downloader? Drop me a note.

More Threshold Plugins

Questions about Easy Downloader?

Ask me about the plugin, Google sign-in, or the security of your own site.