Upgrade to Pro — share decks privately, control downloads, hide ads and more …

The A to Z of WordPress Multisite

The A to Z of WordPress Multisite

WordPress Multisite is a very powerful piece of functionality built into WordPress which is often under-utilised. In this presentation I'll introduce you to Multisite and cover:

* The concepts of Multisite
* Installation and setup
* What differs from a standard WordPress installation
* The management of sites and users
* The management of plugins, themes, and settings
* Advanced usage
* Gotchas and best practices

This presentation is primarily aimed at people who have experience building or implementing WordPress sites but have yet to dip their toe into WordPress Multisite.

Presented at:
* WordCamp Brighton 2017
* WordCamp Oslo 2018

#wordpress #wcbtn

John Blackbourn

August 18, 2017
Tweet

More Decks by John Blackbourn

Other Decks in Technology

Transcript

  1. The A to Z
    of
    WordPress Multisite

    View full-size slide

  2. John Blackbourn
    • WordPress core developer
    • Senior engineer at Human Made
    • Find me on Twitter, GitHub, WordPress.org:
    @johnbillion

    View full-size slide

  3. • The concepts of Multisite
    • Installation and setup
    • What differs from a standard WordPress installation
    • The management of sites and users
    • The management of themes, plugins, and settings
    • Advanced usage
    • Gotchas and best practices

    View full-size slide

  4. example.com
    example.com/site1
    example.com/site2
    example.com/site4
    example.com/site5
    example.com/site3

    View full-size slide

  5. • Groups of client sites
    • College or university departments
    • Company intranets
    • Localised or regional sites
    • Clubs, churches
    • Business franchises
    • Network of blogs
    Managing related sites

    View full-size slide

  6. • Scottish Schools National Intranet
    • Harvard University
    • Reuters News
    • New York Times
    Networks of blogs

    View full-size slide

  7. Site
    Site
    Site
    Site
    Site
    Site
    Network

    View full-size slide

  8. Prerequisites:
    1. In your wp-config.php:

    define( 'WP_ALLOW_MULTISITE', true );
    2. Deactivate all your plugins

    View full-size slide

  9. However...
    wp core multisite-convert
    wp core multisite-install
    --title="My Network"
    --admin_email="[email protected]"

    View full-size slide

  10. Multisite WP-CLI
    wp-cli.org

    View full-size slide

  11. wp post list
    --url="example.com/site1"
    wp option update blogname "Site Three"
    --url="example.com/site3"
    wp user list --network

    View full-size slide

  12. • Database tables
    • Separate uploads directories
    • Super Admins
    • Different capabilities for Admins and Editors
    • Network Admin screen
    What's new?

    View full-size slide

  13. Database tables
    wp_comments
    wp_commentmeta
    wp_options
    wp_posts
    wp_postmeta
    wp_term_relationships
    wp_term_taxonomy
    wp_terms
    wp_termmeta
    wp_users
    wp_usermeta
    wp_blogs
    wp_blog_versions
    wp_registration_log
    wp_signups
    wp_site
    wp_sitemeta
    wp_2_comments
    wp_2_commentmeta
    wp_2_options
    wp_2_posts
    wp_2_postmeta
    wp_2_term_relationships
    wp_2_term_taxonomy
    wp_2_terms
    wp_2_termmeta
    Single Site Multisite Each site on Multisite

    View full-size slide

  14. Separate uploads directories

    View full-size slide

  15. Super Admins
    A user that can do anything on any site
    on the whole network, and administer
    the network from Network Admin

    View full-size slide

  16. Administrators cannot:
    • Install plugins or themes
    • Use the plugin or theme editors
    • Create new users
    • Edit existing users
    • Update core/plugins/themes
    • Post unfiltered HTML
    Editors cannot:
    • Post unfiltered HTML
    Different capabilities for Admins and Editors

    View full-size slide

  17. Network Admin screen

    View full-size slide

  18. mtrunk.wp/wp-admin/network/sites.php
    Network Admin - Sites & Users

    View full-size slide

  19. mtrunk.wp/wp-admin/network/themes.php
    Network Admin - Themes & Plugins

    View full-size slide

  20. More drop-in plugins
    • sunrise.php
    • blog-deleted.php
    • blog-inactive.php
    • blog-suspended.php

    View full-size slide

  21. Multi-network

    View full-size slide

  22. REST API
    • Functions as expected on individual sites
    • Endpoints for network are in progress

    View full-size slide

  23. HTTPS
    Either use it (ideally), or don't use it

    View full-size slide

  24. Content syndication
    Not a reason itself to use Multisite
    • REST API
    • Elastic Search / ElasticPress

    View full-size slide

  25. /blog URL prefix
    Remove from permastructure in main site settings

    View full-size slide

  26. Plugins and libraries
    More on GitHub than WordPress.org

    View full-size slide

  27. User activity logging
    • Stream
    • Simple History

    View full-size slide

  28. Database sharding
    Don't even think about it.
    • Scale vertically first
    • HyperDB
    • LudicrousDB

    View full-size slide

  29. Multisite code is old
    upload_is_file_too_big()
    "This file is too big"

    View full-size slide

  30. Get involved
    • #core-multisite in
    • Bug fixing and improvements
    • 10 year old code

    View full-size slide

  31. Thanks!
    Find me on Twitter, GitHub, WordPress.org:
    @johnbillion

    View full-size slide