#jab14 | Joomla! multiplied - How to run Multi-Sites | @viktorvogel JOOMLA! MULTIPLIED How to run Multi-Sites
Aug 23, 2014
#jab14 | Joomla! multiplied - How to run Multi-Sites | @viktorvogel
JOOMLA! MULTIPLIED
How to run Multi-Sites
#jab14 | Joomla! multiplied - How to run Multi-Sites | @viktorvogel
Note:
This is a shortened version of the entire presentation!
#jab14 | Joomla! multiplied - How to run Multi-Sites | @viktorvogel
Viktor Vogel
• Work with Joomla! since 2005
• Private projectKubik-Kubik Joomla! Extensionshttp://joomla-extensions.kubik-rubik.de/
• Employee at 1&1 Internet as their Joomla! specialisthttp://www.1and1.com/
#jab14 | Joomla! multiplied - How to run Multi-Sites | @viktorvogel
MULTI-SITE FUNCTIONALITY IN THE JOOMLA! PROJECT
• Multi-Site Working Group
• Meetings in 2011 and 2012
• Documentation: Multi-site Design Options
• http://docs.joomla.org/Multi-site_Design_Options
• Group is currently not active
• PLT Contact: David Hurley
#jab14 | Joomla! multiplied - How to run Multi-Sites | @viktorvogel
RESULTS OF MEETINGS -CONCEPTS
• 2011 (JoomlaDays New York)
• ACL Approach
• Layer Approach
• 2012 (JandBeyond)
• Shared Program Folder, Separate Databases
• Shared Files, Single Database
#jab14 | Joomla! multiplied - How to run Multi-Sites | @viktorvogel
ACL APPROACH
• Also known as Seblod Approach (Sebastien)
• Site divided in sub-sites using ACL groups
• Mapping of URLs to a logical site to a group
• Separation of modules, menu items and plugins difficult• Could be solved by using View Access levels
• Or by adding ACL permissions for these entities
#jab14 | Joomla! multiplied - How to run Multi-Sites | @viktorvogel
SITE LAYER APPROACH
• Logical layer between Global Configuration and the component options
• Assignment of component items to sites, controlled by ACL permission rights
• Consequences• System is more complex but easier to maintain
• Modification of existing extensions is necessary
#jab14 | Joomla! multiplied - How to run Multi-Sites | @viktorvogel
SHARED PROGRAM FOLDER AND SEPARATE DATABASES
• Site setup with a separate application to map needed data
• Few setup files for each site instance, shared core files
• Updates of 3rd party through Site Manager, updates are specifically installed for each site instance
• No content sharing, except of copying it with application
• Could be achieved with minor changes to the CMS
#jab14 | Joomla! multiplied - How to run Multi-Sites | @viktorvogel
SHARED FILES, SINGLE DATABASE
• A single Joomla! instance can have multiple domains
• Each domain has different menu items
• Approach can be implemented by Virtual Domains
• Template assignment, content sharing
• Single point of software updates
• Separation of user access only partly possible with ACL• Customer access to backend not recommended
#jab14 | Joomla! multiplied - How to run Multi-Sites | @viktorvogel
FOCUS ON SHARING DATA, NOT SHARING PROGRAM FILES
• Agreement in 2012 at the JAB• Most important priority is to share data between entirely separate
Joomla! instances
• Single instance with same files is not more in the focus
• Messaging could be achieved with a restful approach
• Current status• Working group is inactive, no working solution out of the box
• Multi-sites will not be provided in the near future by Joomla! core
#jab14 | Joomla! multiplied - How to run Multi-Sites | @viktorvogel
DEMO EXAMPLE WITH VIRTUAL DOMAINS
• Approach: Shared Files, Single Database
• Free extension by Michael Liebler, Roman Teske
• Multi-domain capability for Joomla without changing the Joomla core files and tables
• Specific designs, (default) languages, home page content and navigation.
• http://janguo.de/lang-de/joomla-25-higher/virtual-domains-joomla-2-5.html
#jab14 | Joomla! multiplied - How to run Multi-Sites | @viktorvogel
DOMAINS SETUP FOR VIRTUAL DOMAINS
• Same server• Each domain must reside on the same server and must be
accessible from the same IP
• Same folder• The webserver must point each domain to the same
folder
• No redirection• To achieve that goal, you must not use a redirection like
.htaccess oder by frame.
#jab14 | Joomla! multiplied - How to run Multi-Sites | @viktorvogel
DOMAINS SETUP FOR VIRTUAL DOMAINS 2
Source: Virtual Domains Documentation
#jab14 | Joomla! multiplied - How to run Multi-Sites | @viktorvogel
DOMAINS SETUP FOR VIRTUAL DOMAINS 3
• 3 subdomains on the same server
• Each subdomains points to the same folder
• No redirections, only assignments
#jab14 | Joomla! multiplied - How to run Multi-Sites | @viktorvogel
BACKEND VIEW OF VIRTUAL DOMAINS
• 3 entries for the subdomains• 3 different templates• 3 different articles assigned to the subdomains
#jab14 | Joomla! multiplied - How to run Multi-Sites | @viktorvogel
OUTPUT OF DEMO INSTALLATION
#jab14 | Joomla! multiplied - How to run Multi-Sites | @viktorvogel
LIMITATIONS WITH VIRTUAL DOMAINS
• Constellation only suitable for small, non-complex websites
• Encountered limitations• (Core) Components are not designed to be used in a
multi-website (separation of items doesn’t work properly)
• Many components can only be used exclusively for one domain
• With ACL some restrictions can be made possible but not enough to separate all strictly
• Plugins are executed on every domain equally
#jab14 | Joomla! multiplied - How to run Multi-Sites | @viktorvogel
THANKS!