The repository for each VIP site (see vip-skeleton for an example) has the following directory structure:
For always active, global plugins (similar to mu-plugins) — see our plugin documentation for more information.
.mo translation files, which specify the translated strings for the site. See below for how to upload languages.
Your site’s plugins — more details here.
Provides access to files that are not directly web accessible, but can be accessed by your theme or plugin code.
Themes to be made available to your sites. We recommend keeping the default theme available for testing purposes.
For custom configuration changes and additional
sunrise.php code. This folder’s
vip-config.php file is used in place of
All of these directories are required and should not be removed. These directories will also be available on production web servers. Any additional directories created in your GitHub repository that are not included in the above list will not be mounted onto your site, and so will not be web-accessible.
Plugins and themes directories
The plugins and themes directories are mapped to
wp-content/themes/ and should be treated like any other WordPress install.
vip-config directory contains a file named
vip-config.php. This is where to put things usually found in
wp-config.php. Not all settings can be changed, as we have optimized certain aspects of the WordPress install, but it is handy if you need to define something like an API key or secret. Note that most of WordPress is not available when this file is loaded and code should be limited to pure PHP.
languages directory is mapped to
wp-content/languages, and should contain the
.mo files which specify the translated strings for the site. In order to upload the language files for a particular language, follow these steps. In this example, we’ll be uploading Italian:
- Download the Italian WordPress distribution from here.
- Unpack it to, for example,
cp -r /path/to/wordpress/wp-content/languages/* /path/to/your-repo/languages/
(IMPORTANT! If you have custom translations in any currently
present it_IT.*files, you might want to back those files up. You can then backport those custom translations in the new
it_IT.mofrom it. If you need to do this and need assistance, let us know in a ticket, and we’ll be happy to help.)
- After that, you’ll have to commit, push up, and deploy the changes.
- To upload other languages, follow the same steps, downloading that particular language WordPress distribution in step 1.
apple-touch-icon*.png variant files are mapped to files with the same name within the
images directory of the client repository.
private directory is mapped to
/private/, which is not web accessible; this might be used to store files streamed via PHP, e.g., a paid, commercial plugin which needs a purchase record checked before starting the download.