How to Create a Download Link With WordPress

For this post, we're going to show you how to create a download in WordPress with links and buttons. Check it out!

There’s a classic flow to a typical website. You’ll create the content, and the end-user consumes it. While websites can be dynamic in that a user might be able to enter text into form fields, the user still has to make the interaction. However, if you create a download link within WordPress, the user can interact and you can provide something in return.

There are lots of ways to create a download link, and each one will suit a different need. Plugins are the typical way you’ll add extra functionality, although WordPress itself has a basic, native way to carry out the job. Regardless, you can have a way to offer downloads based on the requirements of your site and your users.

For this post, we’re going to show you how to create a download in WordPress, first without plugins. From there, we’ll introduce a better way to add downloads to your site and show you how to do it.


You will have interacted with a download link at least once – if not thousands of times – on the web. It’s a button that could initiate any action, but in this case, it’s to download a file:

The Download Manager mascot, with a download button next to it.
Download button

It’s a fantastic way to offer files, but will also form a key part of any online e-commerce strategy you employ. For example, if you sell e-books, photos, music, or video files, each one of these will need a download button. There are a few reasons why a button-based download link is a solid idea to implement:

  • You can give the user a way to ‘self-serve’ themselves. This way, they can download a file as much as they need without your input.
  • You’re able to make the download process more secure. If you think of an alternative, you’d need to send a file or link over email. This can lack encryption and protection.
  • What’s more, a download link or button enhances trust in your site. This is through direct ways, especially if your site uses a Secure Sockets Layer (SSL) certificate. It can also be through indirect ways, such as not using unencrypted methods to deliver files.

As such, download links can provide myriad benefits to your site and your users. Depending on your requirements, and if you implement the right solution, you can also manage your files better, and get valuable insight into how your users interact with your downloads. This gives you the opportunity to create download links and buttons that offer more value in the future.


How to Create a Download Link With WordPress Without Plugins

In the next section, we’re going to take a look at how to create a download link that’s simple and straightforward. However, after this, we’re going to talk about why this might not be the best option for every use case. We’ll also look at how a plugin can help, and also how to use it.

This should be a familiar approach to you if you need to add any type of link to your content. However, you can press the method into service for downloads too with some preparation.

To achieve this, first log into WordPress and head to the Media Library:

The WordPress Media Library.
WordPress Media Library

Next, find the file you want to upload on your computer and bring it into WordPress. You can do this through drag-and-drop, or with the Add New button:

Uploading a file to the WordPress Media Library.
Add files

WordPress will initiate the upload, and this could take a while based on the size of your file, your internet connection, and the specifications of your server. Once this process finishes, you can select the file to highlight it. On the right-hand side, you’ll see a number of fields relating to the metadata of the file:

The attachment details for a WordPress asset.
Image metadata

Here, look to the File URL field. This is the direct link to the file, and you’ll need to copy it using the Copy URL to clipboard button in order to use it elsewhere:

The Copy URL to clipboard button.
File URL

From here, head to the post or page you’d like to create a download link within and find the relevant place in your content. Next, you’ll add a hyperlink as you would for any other WordPress link:

  • Highlight a portion of the text.
  • Choose the hyperlink option from the context menu.
  • Add in the link and confirm your changes.

This is a basic way to create a download link in WordPress. There is more you can do though, and we’ll look at this a little later.

2. Add Downloads Using the Native File Block

The WordPress Block Editor also provides a quick and simple way to create a download link. It looks nicer than a hyperlink and at least offers a dedicated way for a user to download a file or product.

You’ll need to upload your file as per the last method, and from there, head into the WordPress Block Editor. When you find the right location for your file, add a new File Block to your post or page:

Selecting the File Block within WordPress.
File block

This will give you the option to upload a file from the Block, which is handy if you don’t want to leave the editor interface:

Choosing a file using the File Block uploader.
Add file

Once you choose an item, you’ll see a download button within your content, along with a filename for the download:

Creating a download link within the WordPress Block Editor.
Create download link

You’ll notice that there are a few options available within the editor sidebar. However, other than choosing what the button will link to, and removing the download button from the front end, there isn’t much to work with. However, this looks better than a hyperlink and shows a clear way to download a file.

Speaking of which, let’s discuss why this manual approach might not be the best option to create a download link. We’ll then talk about a WordPress plugin that you should consider instead.


Why the Manual Approach Is Not Optimal

Before we continue, it’s worth noting the benefits of using a manual approach to create a download link within WordPress:

  • You get full control over the file’s location on your server, and the placement of the link.
  • The native methods give you a performant way to add download buttons or links to your posts and pages that also match your site’s design.
  • Speaking of which, if you have a little CSS knowledge, you can enhance the look of your download button (if you use the File Block).
  • A hyperlink approach can offer an organic and fast way to create a download link and display it for users.

However, we think the manual approach won’t provide enough functionality and flexibility for most users who need to offer download links. Here’s why:

  • You’ll need coding knowledge to change aspects of your download button or link, which could be a barrier if you don’t (or choose not to) have those skills.
  • Your files won’t be secure, they’ll be on your server alongside your other files. For example, consider how you can save images from around the web with ease – this could be how users interact with your content too. As such, a download link or button won’t be necessary as users will ‘hotlink’ to your files without interacting with your site.
  • There is no way for you to find out how your users do interact with your downloads. A dedicated solution can help you keep tabs on which files perform well, and let you build in greater value and a better experience for your downloads.

However, there is a solution that can provide the benefits of the manual approach, and offer what you need to ensure your download strategy is solid. Next, we’ll take a look at it.


Introducing Download Monitor

Download Monitor is a top-notch WordPress download plugin that provides almost everything you need to ensure you can create a download link, track those downloads, and cater to your audience with a fantastic experience.

create a download link with Download Monitor
Download Monitor

Here’s what makes Download Monitor the number one plugin for hosting and displaying your downloads:

  • You’ll use the familiar WordPress interface to add, organize, and manage your downloads.
  • There’s the option to offer different file types and versions of your download. This is killer if you regularly update your products yet want to offer the older versions to users.
  • Unlike the native approach, you can customize how the download button looks on the front end. Not only do you have a number of customization options, you can also display key metadata to users too.

The core plugin is free forever, but you can get a greater experience through one of our premium plans. For example, each plan provides a number of extensions to help enhance the functionality of Download Monitor. You’re able to implement CAPTCHAS, download pages, CSV import and CSV export functionality, and more.

You’re even able to lock access to downloads based on whether the user will send out a Tweet, sign up for your newsletter, and a whole raft of other options:

The MailChimp Lock options within WordPress.
MailChimp Lock extension

For a top plugin that can earn your more money, net you more valuable information, and more, Download Monitor represents amazing value.


To use Download Monitor, you’ll need to install and activate it.

Once this process finishes, you can add a new download through the Downloads > Add New link:

The Downloads > Add New link within WordPress.

You’ll see a screen here that looks like the WordPress Classic Editor. While you can add a title and description here if you wish, the Downloadable Files/Versions metabox underneath is where you’ll create a download link. If you click the Add File button, you’ll see a number of fields appear:

The Downloadable Files/Versions metabox.
Add files with Download Monitor

You won’t need to enter a version number or download count if you don’t want, but you will want to use the Upload File and Browse For File buttons to find your download. The former takes you to the Media Library screen, but the latter lets you find a file on your server. This will be helpful if you have a dedicated location for specific download files.

Once you complete this, you can head to a post or page, find a relevant location for your content, and look to add a Block. This time, you can choose the Download Button Block:

The Download Button Block.
Download button block provided by Download Monitor

After you add this, you can choose the download from the WordPress sidebar, along with a Download Monitor button template. This lets you customize how the download button will look on the front end:

Choosing a template for a download button.
Add template button

From here, you can preview your download link on the front end, and save your changes.


Wrapping Up

A download link is something most users will insist on if they want to access a file on your site. Indeed, for an e-commerce business, it’s going to be a non-negotiable element of your site. You offer the ability for users to control how and when they receive a file, while also giving them greater security. If you create a download link in WordPress, you can turn an insecure and inefficient site into a productivity powerhouse.

The native WordPress approach is fine for some situations, but it isn’t going to cut the mustard if you are serious about how you offer downloads to users. A plugin such as Download Monitor can help you in a number of ways. It provides a slick way to import and offer download links and will give you transparency with how users interact with your downloads.

The best news is that Download Monitor provides premium plans for every budget. Each one offers a blend of extensions that will help you create a download link in WordPress with top functionality. Each purchase also offers a 14-day, no questions asked, money-back guarantee!

Default image
Tom Rankin

Tom Rankin is a quality content writer for WordPress, tech, and small businesses.

When he's not putting fingers to keyboard, he can be found taking photographs, writing music, playing computer games, and talking in the third-person.

Join over 20,000+

Subscribe to learn more about growing a digital business online.

Start Protecting your WordPress Downloads

Protect, sell and track downloads on Wordpress... What are you waiting for?