Instalaciones multisitio.
DXPR Builder funciona en una instalación multisitio de Drupal igual que en servidores separados: una copia del código del módulo, una base de datos por sitio y una clave de producto que comparten todos los sitios. Esta página explica qué se comparte, qué es propio de cada sitio y cómo configurarlo.
Licencias entre sitios
Una clave de producto sirve para todos tus sitios. Las licencias son por persona que edita, no por sitio, y el recuento lo lleva el servidor de licencias de DXPR:
- Cada sitio envía su nombre de host y sus personas que editan (las cuentas con
el permiso
edit with dxpr builderque no están excluidas, más el usuario 1) al servidor de licencias (src/Service/DxprBuilderLicenseService.php). Las cuentas sin una dirección de correo válida no se envían. - El servidor guarda un registro por dirección de correo con la lista de dominios en los que esa dirección ha editado. Una persona que edita en tres sitios con la misma dirección de correo cuenta una vez.
- Cada sitio obtiene del servidor la lista compartida de edición e informa del total en el informe de estado y en la página User Licenses. La lista se guarda en caché 24 horas.
Lee Licencias multisitio para saber cómo se cuentan y liberan las personas que editan.
Qué se comparte y qué es propio de cada sitio
Compartido por la base de código:
- El módulo y sus submódulos en
modules/contrib/dxpr_builder. - El JavaScript del editor. Con Asset source fijado en Cloud, el valor predeterminado, cada sitio carga la misma versión desde la CDN de DXPR. Cuando el directorio del módulo contiene una compilación local, cada sitio carga los archivos desde allí.
- Conjuntos de iconos y clases de utilidades declarados por módulos y temas
(
*.dxpr_icon_sets.yml,dxpr_builder_classesen el.info.ymlde un tema). Las clases de un tema solo aparecen en los sitios donde ese tema está habilitado.
Propio de cada sitio, porque vive en la base de datos y la configuración de ese sitio:
dxpr_builder.settings: la clave de producto o la entidad Key que la contiene, Custom styles, Sideload Bootstrap files, Browser type para medios, los ajustes de filtros de texto y de recursos del editor.- La propia entidad Key (
key.key.*), cuando la clave de producto se guarda con el módulo Key. - Ajustes de IA (DXPR Studio > DXPR Builder > AI), incluidos los modelos habilitados.
- Perfiles del constructor (
dxpr_builder.dxpr_builder_profile.*), plantillas de página (dxpr_builder.page_template.*) y plantillas de usuario (dxpr_builder.user_template.*). - Imágenes subidas en el directorio de archivos de cada sitio
(
dxpr_builder_images,dxpr_builder_videos,dxpr_builder_files).
El ajuste de Bootstrap tiene dos valores, None (theme provides Bootstrap) y Bootstrap 5. Elige por sitio según el tema que usa ese sitio.
Configura un sitio nuevo en el multisitio
-
Crea el
sites/<name>/settings.phpdel sitio y su base de datos como para cualquier sitio multisitio de Drupal. -
Habilita el módulo en ese sitio:
drush --uri=https://<site-host> en dxpr_builder -y -
Ve a DXPR Studio > DXPR Builder > General Settings (
/admin/dxpr_studio/dxpr_builder/settings) en ese sitio. En la sección License, pega la misma clave de producto que usas en los otros sitios, o selecciona una Key de este sitio que la contenga. -
Fija Sideload Bootstrap files según el tema del sitio.
-
Crea los perfiles del constructor del sitio y, si hace falta, importa plantillas como se describe abajo.
Comparte plantillas entre sitios
Las plantillas de página y de usuario son entidades de configuración, así que puedes moverlas con exportación e importación de configuración:
-
Exporta la configuración del sitio de origen:
drush --uri=https://<source-host> config:export -
Copia los archivos
dxpr_builder.page_template.*.ymlydxpr_builder.user_template.*.ymlal directorio de sincronización de configuración del sitio de destino. -
Impórtalos en el sitio de destino:
drush --uri=https://<target-host> config:import --partial
Las plantillas de usuario llevan un uid; el archivo exportado referencia el
ID de usuario de la persona propietaria en el sitio de origen, así que comprueba la propiedad tras la
importación.
¿Qué sigue?
- Licencias multisitio: recuento y liberación de licencias de edición.
- Importación y exportación de plantillas: mover plantillas sueltas desde la interfaz de administración.