Hosting

SFTP on WordPress.com

SFTP access is available to administrators on the WordPress.com Business and eCommerce plans.

Before Beginning

Accessing your site’s file structure is not required for your site to function. Do not touch your site’s file structure unless you have a very specific reason.

If you’re unsure, contact a Happiness Engineer for help before accessing your site via SFTP.

You should not edit files unless you know exactly what the change will do.

If you don’t understand what a file does, don’t edit it. Uploading unknown files, or editing existing files, without understanding them may lead to your site breaking, and can also cause you to lose data.

We are happy to help you determine whether you need to access your file structure and help restore your site should accidents occur, however WordPress.com Happiness Engineers are not here to assist you with adding, removing, or modifying files and folders. If something happens to your site we’d be glad to help you attempt to Restore Activity.

↑ Table of Contents ↑

What is SFTP?

It’s a way for you to access the files and folders on a website via a client program such as Filezilla on your local computer.

SFTP stands for Secure File Transfer Protocol (or SSH File Transfer Protocol). It was designed as an extension of the SSH (Secure SHell) protocol. The “secure” part is because it is run over a secure channel, in this case SSH.

SFTP is not to be confused with File Transfer Protocol (FTP) which is similar but not secure. Thanks to the security provided by SFTP you can rest easy knowing that your files and your site are safe and sound.

A variety of custom plugins and themes may ask you to create specific folders or add files via SFTP however, generally speaking, SFTP is not required for your site to function.


↑ Table of Contents ↑

Getting Started with SFTP

Go to My Site(s) → Settings → Hosting Configuration to access your site’s SFTP options.

You can also use https://wordpress.com/hosting-config to access this section

We do not create an SFTP user by default. The first time you access this section of your Dashboard you’ll need to click the Enable SFTP button.

Once you’ve enabled SFTP, you’ll see your SFTP URL, Port Number, Username and Password. Keep these credentials safe!

The username and password are generated by the system automatically. These are unique to your site, so if you have multiple sites, you’ll need to use multiple usernames and passwords, one for each site, in your SFTP Client.

After you’ve created a user and password, you can enter them in an SFTP Client of your choice! If you don’t have a preference, Filezilla is a popular and free SFTP client. Clicking the copy button will copy them to your clipboard for ease of use.


↑ Table of Contents ↑

Setting up a Client

Please make sure the ‘Protocol’ field is filled with SFTP (SSH File Transfer Protocol) option, not FTP.

Filezilla

Each SFTP client is slightly different, these steps and screenshots are how you’d add your information in Filezilla.

Screenshot of Filezilla's credentials screen

The information you’d add to the client is accessible from your dashboard.

To open this window, in Filezilla go to File > Site Manager then click the new site button.

Make sure you’re setting up an SFTP site, and add your credentials.

Screenshot of Filezilla's credentials screen with Protocol set to SFTP - SSH File Transfer Protocol, User with username here text and password fields

Click the Connect button to connect to your site. In the default Filezilla layout, you’ll see your local files on the left, and your site’s files on the right.

Transmit (MacOS)

If you are using MacOS, you can use Transmit app on your computer. You can download the app directly from the app developer here: Transmit 5.

Once the app is downloaded and installed properly on your computer, you should see a starter module.

A sample Transmit screenshot login module

Make sure the ‘Protocol’ field is set to ‘SFTP’.

A sample Transmit screenshot. An orange arrow pointing to SFTP option

Then, fill in the SFTP credentials (address, username, port, and password) on the available fields:

A sample Transmit screenshot login module

Once done, click ‘Connect’ and you should be all set.

Cyberduck (MacOS and Windows)

Cyberduck is available both on MacOS and Windows. You can download the software/app from their website: cyberduck.io

After installing, you will see a starting module.

A sample Cyberduck screenshot. Open Connection button on the left

Click the button ‘Open Connection’ on the top left.

A sample Cyberduck screenshot with an orange arrow pointing to Open Connection button

You should see the login popup that you can fill in with your SFTP credentials. Please note it should be SFTP.

A sample Cyberduck screenshot login module

Click the dropdown arrow next to ‘FTP (File Transfer Protocol)’ option.

A sample Cyberduck screenshot with an orange arrow pointing to dropdown arrow next to FTP (File Transfer Protocol) option

Then choose ‘SFTP (SSH File Transfer Protocol)’ option.

A sample Cyberduck screenshot with dropdown and an orange arrow pointing to SFTP (SSH File Transfer Protocol) option

Once you done so, you should see the ‘Port’ area changed to 22. Fill the fields with the credentials available at Settings → Hosting Configuration in your WordPess.com account.

A sample Cyberduck screenshot with text field boxes for Server, Port, Username, and Password

Click ‘Connect’ and you should be good to go.


↑ Table of Contents ↑

Forgotten Password

While we do store your username, URL and Port number, for security reasons we do not store your SFTP password. Keeping it safe is your responsibility. We recommend adding it to a password manager.

However if you’ve forgotten your password you can reset it from the SFTP & MySQL section of your Dashboard, by clicking the Reset Password button.


↑ Table of Contents ↑

What if something goes wrong?

If something happens to your site we’d be glad to help investigate what’s wrong. If after we investigate we are unable to otherwise fix the error, we will help you restore it from a Rewind backup.


↑ Table of Contents ↑

Common SFTP Hurdles

Below we’ve included a list of Common SFTP hurdles and how to overcome them.

I uploaded a plugin/theme and can’t see it in my dashboard?

Make sure you’ve uploaded it to to the correct folder. If plugins aren’t in /wp-content/plugins/ and themes aren’t in /wp-content/themes/ they won’t work.

I have modified my theme files but my changes have disappeared after the theme updated.

This is expected if you have not used a Child Theme to make modifications, as any modifications will be overwritten by the new version of the theme. If you want to run your own customized themes, please follow our instructions here.

I’ve added my site to my SFTP client and it’s not working!

Make sure you’ve specified an SFTP connection in your client’s settings. If you use the quickconnect, make sure you prefix your SFTP address with sftp://

I uploaded images/video via SFTP but are not showing in my Media Library

This is expected as WordPress does not recognize media files uploaded via SFTP, while they are accessible via the direct URL, these will not show inside the admin area. You can use plugins like Media Sync to resolve this, so images and video uploaded to the site via SFTP will appear normally in your Media Library.


↑ Table of Contents ↑

Frequently Asked Questions

I deleted something by mistake, can I get it back?

If you deleted a folder or file by accident, and wish to recover it, we’re happy to help you Restore your site to an earlier point, from before you deleted your file or folder.

You can Rewind your site to an earlier point in time from your Activity Log using Rewind.
If you need help with this please contact a Happiness Engineer.

What file permissions should I set?

By default, your folders and files should be set to 755, changing these settings can break your site. You’ll also see some symlinked files may appear to have different permissions, this is normal and cannot be changed.

Can I use SFTP on any WordPress.com Plan?

SFTP access is only available to Administrators of sites on our Business and eCommerce plans. If you are on one of our other plans, and want SFTP access, you can upgrade your site from your plans page.

Can I edit my site’s wp-config.php file?

Yes, you can make changes to your site’s wp-config.php file. We recommend that you do not touch this file unless absolutely necessary. If you’re not sure if you should make changes, contact us before you make a change.

Can I edit functions.php?

Yes, the functions.php can be edited. Please keep in mind that editing or adding untested code to functions.php can crash your site. We recommend using plugins such as Code Snippets if you want to apply any modifications to your site’s functions.php file. This plugin will allow more control and granularity over where these snippets are run, and snippets in the plugin can be easily disabled if something does not go as expected.

Does content uploaded via SFTP count against my site’s storage limits?

Yes, content you upload via SFTP counts against your site’s storage limits, just like the content you upload via the Media Library.

Can I edit core WordPress files?

No, you cannot edit core WordPress files. These files are essential to keep your site functional. They are not editable via SFTP.

This also includes the default WordPress.com themes and plugins.

I uploaded a plugin using SFTP but I can’t activate it. What should I do?

While we try to ensure your site here at WordPress.com is compatible with as many plugins as possible, we’ve found that some plugins aren’t a good fit on our platform, or are otherwise incompatible. Please make sure you haven’t uploaded an incompatible plugin by checking our list here.

I’m trying to upload a theme to my site, but it says is too big. Can I upload it via SFTP?

Yes. While generally you’ll be able to upload most themes going to your site Appearance > Themes > Add New, there’s a 50MB limit in place for security, as some themes may include other files that are not part of the theme itself.

The first step in these cases would be to double-check if you have the correct theme files. Themes from 3rd party vendors may include things inside their zip file like demo content or license information. You’ll want to make sure you only upload the theme files to your site.

If you’ve removed the extra files, but you’re still getting an error, you can use SFTP to add this theme to your site, by unzipping it and placing it under the /wp-content/themes/ directory.

Can I add custom PHP modules like ioncube?

No. While some plugins require custom PHP modules to be installed to function, this is set on the server-side and it cannot be changed. You can review our environment details here.

Why can’t I access certain folders via SFTP?

Some directories of your file system structure are locked and cannot be accessed via SFTP. This is vital for security and helps ensure the functionality of your site.

In the screenshot below, you can see that some core directories have a ? mark icon next to them. This denotes that the directory is part of your site’s core WordPress installation. We do not allow modifying Core files as they are required to ensure your site is functional.

My plugin or theme developer needs to access my site via SFTP?

If your plugin or theme developer needs access via SFTP you can provide the SFTP credentials. At the present time we are limited to one SFTP user per site. Please make sure you reset the SFTP password when they no longer need access.

In the future, multiple SFTP users will be allowed, and you can generate unique credentials for them.

Not quite what you're looking for?

Get Help