KLXM Studio – Home
Get in touch

Several websites

One installation, many websites.

All websites share code, kitIn KLXM Studio, the package of design and building blocks for a website: layout, colours, fonts and the matching blocks. A kit can be adapted or switched – the content stays. and updates. Content, users, media and keys are completely separate per website – each with its own database.

Separate and shared

What belongs to whom.

  • Separate per website

    Database (pages, data, users, roles, APIApplication programming interface: programs use it to exchange data without the user interface – for example to take over entries from another system.en.wikipedia.org (opens in a new tab) tokens, settings, requests), media, cache, search index, app_key, design values.

  • Once for all

    Code, kits, extensions, network accounts, media poolShared media library for several websites of one installation: images and files exist once and can be used on all participating websites., shared tables, support database, AI providers.

Step by step

Create a website.

Network administrators can also do this in the network overview (“New website”) – with the same result.

  1. Create the website

    Short name, domains and kit. The command writes config/sites/<shortname>.php with its own keys and shows the setup token.

    site:create
    php bin/console site:create client www.client.org,client.org basis
    php bin/console site:create client2 www.client2.org --content=ask   # kit and content at first sign-in
    php bin/console site:list
  2. Domain in hosting

    Create the domain or alias in the same subscription, document root on httpdocs/public of the installation, the same Apache/nginx directives, Let’s Encrypt.

  3. First account

    The first request creates the database and media folder and installs the starter content.

    /admin/setup
    php bin/console user:create boss@client.org admin --site=client
  4. Reject unknown domains

    As soon as several websites run: domains pointing to the server without belonging to a website get “not set up”.

    config/config.local.php
    'fallback_site' => null,
  5. Network administration

    Central accounts for all websites with sign-in via one website (SSOSingle sign-on: sign in once and use several applications or websites without having to sign in again each time.en.wikipedia.org (opens in a new tab)) and mandatory two-factor sign-inSign-in with two proofs, such as a password plus a six-digit code from an app (TOTP). Even if the password becomes known, the account stays protected.en.wikipedia.org (opens in a new tab).

    network:user
    php bin/console network:user admin@agency.org --invite

Sharing

Share media and data.

Shared media library

Media pools are central media libraries for several websites: php bin/console pool:create brand "Brand images", enabled per website with 'media_pools' => ['brand']. Protected pools only serve files to signed-in members.

Shared data tables

For example events of an association and its clubs: one website is the owner, others are members – php bin/console data:share events --members=club-a,club-b.

Its own kit for each website?

Yes. With 'kits' => ['praxis'] in config/sites/<shortname>.php you define which kits a website may choose.

Contact

Talk to KLXM Crossmedia.

Installation, migration or hosting for your project – we are happy to help. We reply personally.

KLXM Crossmedia GmbH
Am Schürmannshütt 40g
47441 Moers
Germany