This plugin hasn’t been tested with the latest 3 major releases of WordPress. It may no longer be maintained or supported and may have compatibility issues when used with more recent versions of WordPress.

Zip Attachments


Simple and lightweight plugin to add a “Download” button to your posts, pages or custom post types.

This button will create a zip file of the post attachments on the fly and download it.

The output is very basic, no images, no fonts, no CSS. Just a simple button element.


  • No output by default (check the Installation tab).
  • Easy to customizable with CSS.
  • Shortcode available.
  • Download counter stored per post.
  • You chose the output text so no translation needed.
  • Works with posts, pages and custom post types.

Known issues

  • If a download is cancelled, the file will not be deleted from the /wp-content/uploads folder.

Patches are welcome!


Feel free to post a request but let’s keep it simple and light.

Ping me / Blame me

Are you using the plugin? Do you like it? Do you hate it? Let me know!


  • Using the Twenty Fourteen Theme.
  • Using the Twenty Thirteen Theme.
  • Using the Twenty Twelve Theme.


First of all activate the Plugin, then you have three choices:


You can show the button after all your content (posts, pages, custom post types) by pasting this snippet at the end of your functions.php file of your theme:

function za_button_print($content)
    return $content.za_show_button('Download');
add_filter('the_content', 'za_button_print');

Single.php (or similar)

Alternatively you can print the button only in certain parts of your theme. Paste the following snippet wherever you want them to show.

Be aware, it should be within the Loop.

<?=function_exists('za_show_button') ? za_show_button("Download") : ''?>


Finally you can use the shortcode inside your post content like so:

[za_show_download_button text="Download the file"]

As you can see you can use your own text, the default value is “Download Attachments”.

Download Counter

Each method has a download counter, you need to add additional parameters:


function za_button_print($content)
    return $content.za_show_button('Download', 'true', '(% times)');
add_filter('the_content', 'za_button_print');


<?=function_exists('za_show_button') ? za_show_button("Download", "true", "(% times)") : ''?>


[za_show_download_button text="Download the file" counter="true" counter_format="(% times)"]

NOTE: the default counter format is (%), where % is actual number. The plugin will automatically replace this character with the download count.


I activated the plugin and I don’t see the button

You must specify where do you want to show the button your theme or post, check out the Installation instructions.

Can I customize the colors?

Absolutely. Use your theme CSS file to customize the appearnce of the button. The button comes with two CSS classes:



June 28, 2024
The plugin does a good job. But is it still compatible with the newest Wordpress versions?
August 19, 2020
Все сказала в заголовке, ЖУТКО неудобно так как надо прикреплять файлы и нельзя их разграничить. Но в целом! Это то что нужно! Спасибо!
May 2, 2018
To the point – does one thing well and simple. Currently using with WP 4.9.5 – no problem.
Read all 9 reviews

Contributors & Developers

“Zip Attachments” is open source software. The following people have contributed to this plugin.


Translate “Zip Attachments” into your language.

Interested in development?

Browse the code, check out the SVN repository, or subscribe to the development log by RSS.



  • Fix undefined notice. Nothing should break due this change.


  • ATTENTION the plugin might not work! I’ve tried to fix a vulnerability. Now the temporal zip files are generated in the /wp-content/uploads folder of the plugin. Hopefully there’s not permission issues, since the directory should be writtable. If you encounter any problem, post in the forum:


  • Code improvement to match WordPress best practices.


  • Add a download counter.


  • Fixed undefined variable for the plugin’s path.


  • Sanatize the filename to avoid errors with some titles.


  • Initial release, you’ll love it.