/wpmt

Real world setup of WordPress Multitenancy.

Primary LanguagePHP

WordPress Multitenant

This project contains versions of WordPress and WordPress plugins. VIA Studio open sourced this project to demonstrate a our WordPress Multitenant setup.

Setup

  • Clone this repository on your system. We use /opt/wordpress/.

  • Create the single symlink for the WordPress files. We use:

      ln -s /opt/wordpress/latest /var/www/viastudio.com/wordpress
    
  • Update your configuration as outlined in Giving WordPress Its Own Directory

Additional Notes

We add the additional latest symlink for maintainability and flexibility. We can upgrade sites by adding a new versioned directory to this project and update the latest symlink. We also have the flexibility to use a specific version of WordPress for a site by simply changing that site's symlink from latest to the versioned directory.

We have found some plugins and themes break once you move WordPress to its own directory. These plugins incorrectly rely on the SITEURL option. While you can patch these yourself, we encourage you to inform the author so they can correct their code.

After adopting this WordPress multitenant architecture, we noticed a 400% improvement. Mainly due to all WordPress files fitting within the PHP OPCache. Not only making PHP more performant, but decreasing load on the system.