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 Slide

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

    View 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 Slide

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

    View Slide

  5. View Slide

  6. View Slide

  7. View Slide

  8. View Slide

  9. View Slide

  10. View Slide

  11. View Slide

  12. • 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 Slide

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

    View Slide

  14. Site
    Site
    Site
    Site
    Site
    Site
    Network

    View Slide

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

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

    View Slide

  16. View Slide

  17. View Slide

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

    View Slide

  19. Multisite WP-CLI
    wp-cli.org

    View Slide

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

    View Slide

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

    View Slide

  22. 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 Slide

  23. Separate uploads directories

    View Slide

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

    View Slide

  25. 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 Slide

  26. Network Admin screen

    View Slide

  27. View Slide

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

    View Slide

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

    View Slide

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

    View Slide

  31. Multi-network

    View Slide

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

    View Slide

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

    View Slide

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

    View Slide

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

    View Slide

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

    View Slide

  37. User activity logging
    • Stream
    • Simple History

    View Slide

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

    View Slide

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

    View Slide

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

    View Slide

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

    View Slide