File Structure

Here’s our specs wardrobe—how WordPress site files organized at Presslabs, e.g. themes, plugins, uploads, as well as the special location for the files served at the root of the domain.

Various parts of the site hosted with us are stored in different places and you can find here more details about it.

WordPress core files

The core files of WordPress are always read-only as the core should never be altered in any way. In case you need to alter various default behaviours of WordPress, please use hooks and filters. Besides being read-only, the core files are not visible through Gitea for the same reason as they are meant to be read-only. You can find more details about this on our security page.

Themes and plugins

The code of your site is stored on our Git stack. Besides themes and plugins, we also store here other folders such as languages or other folders that might be created by plugins. All changes done on these files, no matter if they’re done from Gitea or the WordPress Editor, are stored as Git commits.

Files and folders from the root folder

In case you need to place a file or folder directly in the root of your site, these files need to be added in the folder wp-content/root/. The contents of this folder is stored on Git, therefore if you need to place files that are downloaded, or large attachments, then we recommend placing them inside a folder from wp-content/uploads/. That’s the place where static files should stay.

For example, in case you need to verify the domain ownership by placing a file called verify.html in the root of your site, then you need to copy this file in wp-content/root/verify.html and it will become available at Folders work too, but you can’t add a folder called root (e.g.

Images & attachments

These files are stored by WordPress in wp-content/uploads/ and the contents of this folder is stored on our ZFS stack. In short we have two pairs of servers for each cluster, in permanent sync with automatic failover in case the primary one goes down. The files are then mounted over NFS in the corresponding container of your site, on the backend server, where php gets executed and the pages are generated.

More information about our ZFS setup and snapshotting is available on our backup policy page.

See Also


Some frequently asked questions about common day-by-day Git operations.

How to configure your SSH Keys

A step-by-step tutorial on how to generate and set up your SSH Keys in the Presslabs dashboard in [...]

Local development

You can locally develop a WordPress site that is hosted at Presslabs by following a few easy steps. [...]

Presslabs development guidelines

Developing on our Presslabs platform is no different than developing on a regular WordPress website [...]