This is a fallback, and most people never need it. The normal route is uploading the zip through the admin, which handles unpacking and permissions for you.
#When it is justified
- The archive is larger than your host upload limit
- The upload times out partway
- Your host or a security plugin removed the ability to install files from the admin
- WordPress shows an FTP credentials form instead of installing
The advantage in one sentence: file access does not depend on PHP limits, so it works where the admin gives up.
#What you need
Access to the site files, meaning SFTP, FTP, or your hosting panel file manager, and the theme archive unpacked on your own computer.
Use SFTP rather than plain FTP wherever your host offers it.
Plain FTP sends your password in clear text, which on a shared network is the kind of detail you only find out about afterwards. Credentials come from your hosting panel, usually in an FTP accounts section, and any standard client works: FileZilla, Cyberduck and WinSCP are all free and all fine.
#The process
Unpack the theme archive locally
Inside there should be one folder containing the theme files. If it unpacked into a folder containing another folder, the inner one is what you upload.
Connect and open the themes folder
Navigate to wp-content/themes/.
Upload the whole theme folder
This is the long step. A theme has a lot of files, so it can take several minutes. Do not interrupt it.
Wait for the client to report a clean finish
If some files did not transfer, the theme behaves strangely afterwards. Re-uploading is faster than working out which file is missing.
Activate
Back in the admin, go to AppearanceThemes. The theme is already in the list. Click Activate.
#The mistakes this route invites
You uploaded the archive instead of the unpacked folder. WordPress does not see a theme at all.
An extra folder level. themes/verba/verba/style.css instead of themes/verba/style.css. This is the single most common manual upload error, and the symptom is the theme not appearing.
Not everything transferred. The connection dropped partway. The theme exists and the site looks broken or throws errors.
File ownership. After uploading, the files may be owned by a different user than the one PHP runs as. That is a question for your host, and it shows up as permission errors later rather than immediately.
#Plugins work the same way
The Pro plugin and the companion install identically, into wp-content/plugins/ instead.
If the theme had to go on this way, the plugin almost certainly will too. The limits that stopped one stop the other.
#Common questions
The theme still does not appear in the admin
Check the folder depth first, because style.css has to sit directly inside the theme folder rather than one level deeper, and that accounts for most cases, then confirm your client reported the transfer as finished with no skipped files. A theme that appears but breaks the site is usually the second of those.
Which folder do I upload into?
wp-content/themes/ for a theme and wp-content/plugins/ for a plugin, one folder per item, and nothing else about the layout matters.
WordPress keeps asking me for FTP credentials in the admin
That is WordPress telling you the web server cannot write to wp-content itself, so it is offering to do the write over FTP instead, and while you can fill the form in, the underlying file ownership is worth raising with your host because it will keep coming back on every update.
#Still stuck
Open a support ticket with a screenshot of wp-content/themes/ showing the folder you uploaded and what is inside it.
Last updated