The Problem With Standard File Downloads
If you sell or distribute digital files on your WordPress site — eBooks, PDFs, software, templates, audio files — a regular download link is a liability. Anyone who gets the URL can share it, post it publicly, or pass it to a thousand friends. You lose control the moment that link leaves your page.
Most download protection solutions are either bloated with features you don’t need, require a paid subscription, or depend on complex server configurations. There had to be a better way.
Introducing LindaWP Download Manager
LindaWP Download Manager is a free WordPress plugin that protects your digital files using unique, one-time-use download links. Each time someone clicks to download, a new cryptographically secure token is generated. That token expires the moment the file is downloaded — or after one hour if it goes unused. Once a link is used, it’s gone forever.
No subscriptions. No bloat. Just secure downloads.
How It Works
1. Upload your files From your WordPress dashboard, navigate to Linda Downloads → All Files. Upload any file by dragging it onto the upload area or clicking Browse. The file is stored in a protected directory outside of web root, shielded by .htaccess rules that block direct URL access entirely.
2. Add a download button to any page Copy the shortcode for your file and paste it anywhere on your site:
That’s it. When a visitor clicks the button, a fresh one-time token is generated on the spot and they’re served the file. There is no persistent URL to share.
3. Optionally capture emails before download Want to grow your list while distributing content? Toggle Require Email for any file. When enabled, visitors are prompted for their email address before they receive their download link. The link is sent to their inbox — single-use, expiring in one hour.
All captured emails are visible under Linda Downloads → Email List and can be exported as a CSV with one click.
4. Track every download Head to Linda Downloads → Statistics for a full picture:
- Total files and total downloads
- Top downloaded files by count
- Recent download log with timestamps, IP addresses, and user agents.
Key Features
- One-time-use links — each link expires immediately after download
- Token expiry — unused links expire after 1 hour automatically
- Cryptographically secure tokens — generated with PHP’s
random_bytes(), not guessable - Protected file storage — files stored behind
.htaccessrules, inaccessible via direct URL - Optional email capture — collect emails before granting access, with automatic email delivery
- Email list export — download your collected emails as CSV anytime
- Download statistics — track downloads per file, see recent activity, monitor top performers
- Shortcode integration — works with any theme, page builder, or block editor
- No dependencies — no third-party services, no subscriptions, everything runs on your server
Supported File Types
PDF, ZIP, DOC, DOCX, XLS, XLSX, PPT, PPTX, JPG, JPEG, PNG, GIF, SVG, PSD, AI, MP3, MP4, AVI, MOV, TXT, CSV, EPUB, MOBI — and you can extend the list with a WordPress filter.
The Technical Side (For Developers)
Under the hood, LindaWP Download Manager creates four lightweight database tables:
wp_ddlm_files— file metadatawp_ddlm_tokens— one-time tokens with expiry timestampswp_ddlm_downloads— download log per tokenwp_ddlm_emails— email capture submissions
Tokens are bin2hex(random_bytes(32)) — 64 character hex strings, brute-force proof. Downloads are served directly through PHP, never exposing the real file path in the browser.
Two developer filters are available:
// Add extra allowed file types
add_filter('ddlm_allowed_file_types', function($types) {
$types[] = 'rar';
return $types;
});
// Increase max upload size to 200MB
add_filter('ddlm_max_file_size', function($size) {
return 200 * 1024 * 1024;
});
Who Is It For?
- Course creators distributing PDFs, workbooks, or resource packs
- Musicians and podcasters sharing audio samples or episode files
- Designers and developers selling templates, fonts, or plugins
- Authors offering eBook downloads
- Anyone who wants to prevent their download links from being forwarded or shared
Get Started
- Download LindaWP Download Manager
- Activate from Plugins → Installed Plugins
- Go to Linda Downloads in your admin sidebar
- Upload your first file and paste the shortcode onto any page
Your files are protected from the very first upload.
Check out my other wordpress services @ lindawp.com

