Multisite-Installationen.
DXPR Builder läuft in einer Drupal-Multisite-Installation genauso wie auf separaten Servern: eine Kopie des Modulcodes, eine Datenbank pro Website und ein Produktschlüssel, den sich alle Websites teilen. Diese Seite behandelt, was geteilt wird, was pro Website gilt und wie Sie es einrichten.
Lizenzierung über Websites hinweg
Ein Produktschlüssel bedient alle Ihre Websites. Die Lizenzierung zählt pro bearbeitender Person, nicht pro Website, und der Zähler liegt auf dem DXPR-Lizenzserver:
- Jede Website sendet ihren Hostnamen und die Liste ihrer bearbeitenden Konten (die Konten mit
der Berechtigung
edit with dxpr builder, die nicht ausgeschlossen sind, plus User 1) an den Lizenzserver (src/Service/DxprBuilderLicenseService.php). Konten ohne gültige E-Mail-Adresse werden nicht gesendet. - Der Server hält einen Datensatz pro E-Mail-Adresse mit der Liste der Domains, auf denen diese Adresse bearbeitet hat. Eine Person, die auf drei Websites mit derselben E-Mail-Adresse bearbeitet, zählt einmal.
- Jede Website holt die geteilte Redakteursliste vom Server und meldet die Summe an den Statusbericht und die Seite User Licenses. Die Liste wird 24 Stunden gecacht.
Lesen Sie Multisite-Lizenzierung, wie die Redaktion gezählt und Lizenzen freigegeben werden.
Was geteilt wird und was pro Website gilt
Geteilt über die Codebasis:
- Das Modul und seine Submodule in
modules/contrib/dxpr_builder. - Das Editor-JavaScript. Mit Asset source auf Cloud, dem Standard, lädt jede Website dieselbe Version vom DXPR CDN. Wenn das Modulverzeichnis einen lokalen Build enthält, lädt jede Website stattdessen die Dateien von dort.
- Icon-Sets und Utility-Klassen, die Module und Themes deklarieren
(
*.dxpr_icon_sets.yml,dxpr_builder_classesim.info.ymleines Themes). Die Klassen eines Themes erscheinen nur auf Websites, auf denen dieses Theme aktiviert ist.
Pro Website, weil es in der Datenbank und Konfiguration dieser Website lebt:
dxpr_builder.settings: der Produktschlüssel oder die Key-Entität, die ihn hält, Custom styles, Sideload Bootstrap files, Browser type für Medien, die Textfilter- und Editor-Asset- Einstellungen.- Die Key-Entität selbst (
key.key.*), wenn der Produktschlüssel mit dem Key-Modul gespeichert wird. - KI-Einstellungen (DXPR Studio > DXPR Builder > AI), einschließlich aktivierter Modelle.
- Builder-Profile (
dxpr_builder.dxpr_builder_profile.*), Seiten- vorlagen (dxpr_builder.page_template.*) und Benutzervorlagen (dxpr_builder.user_template.*). - Hochgeladene Bilder im Dateiverzeichnis jeder Website
(
dxpr_builder_images,dxpr_builder_videos,dxpr_builder_files).
Die Bootstrap-Einstellung hat zwei Werte, None (theme provides Bootstrap) und Bootstrap 5. Wählen Sie pro Website passend zum Theme, das diese Website nutzt.
Eine neue Website in der Multisite einrichten
-
Erstellen Sie die
sites/<name>/settings.phpund Datenbank der Website wie für jede Drupal-Multisite-Website. -
Aktivieren Sie das Modul auf dieser Website:
drush --uri=https://<site-host> en dxpr_builder -y -
Gehen Sie auf dieser Website zu DXPR Studio > DXPR Builder > General Settings (
/admin/dxpr_studio/dxpr_builder/settings). Fügen Sie im Abschnitt License denselben Produktschlüssel ein wie auf den anderen Websites, oder wählen Sie einen Key auf dieser Website, der ihn hält. -
Stellen Sie Sideload Bootstrap files passend zum Theme der Website ein.
-
Erstellen Sie die Builder-Profile der Website und importieren Sie bei Bedarf Vorlagen wie unten beschrieben.
Vorlagen zwischen Websites teilen
Seitenvorlagen und Benutzervorlagen sind Konfigurationsentitäten, sodass Sie sie mit Konfigurationsexport und -import bewegen können:
-
Exportieren Sie die Konfiguration der Quellwebsite:
drush --uri=https://<source-host> config:export -
Kopieren Sie die Dateien
dxpr_builder.page_template.*.ymlunddxpr_builder.user_template.*.ymlin das Konfigurations-Sync-Verzeichnis der Zielwebsite. -
Importieren Sie sie auf der Zielwebsite:
drush --uri=https://<target-host> config:import --partial
Benutzervorlagen tragen eine uid; die exportierte Datei referenziert die
ID des Besitzers auf der Quellwebsite, also prüfen Sie den Besitzer nach dem
Import.
Wie geht es weiter?
- Multisite-Lizenzierung zum Zählen der Redaktion und Freigeben von Lizenzen.
- Vorlagen importieren und exportieren, um einzelne Vorlagen über die Adminoberfläche zu bewegen.