L’éditeur n’apparaît pas.

Apprendre DXPR BuilderGérer le siteRésoudre un problème

Vous ouvrez une page et rien ne se passe quand vous pointez le contenu, ou les contrôles s’affichent mais la boîte de dialogue de réglages ne s’ouvre jamais. Passez les causes ci-dessous en revue dans l’ordre. Les quatre premières couvrent la plupart des cas.

Je suis sur le formulaire de modification du nœud

L’éditeur tourne sur la page elle-même, pas sur le formulaire de modification. Enregistrez le nœud, ouvrez la page et pointez la zone de contenu. L’éditeur reste aussi éteint sur les pages de révision, comme /node/12/revisions/34/view.

La page affiche un message de clé de produit ou de licence

L’éditeur reste éteint tant qu’un de ces messages s’affiche :

  • « DXPR Builder needs a product key to work ». Aucune clé de produit n’est définie. Accédez à DXPR Studio > DXPR Builder > General Settings (/admin/dxpr_studio/dxpr_builder/settings) et remplissez la section License.
  • « Oops, the no-code editor is not loading here ». Le message nomme la cause : trop peu de licences d’utilisateur, la limite de contenus de votre offre, ou un compte sans adresse e-mail valide. Suivez Erreurs de licence et de clé de produit.
  • « Access to DXPR Builder is blocked because of a payment or licensing problem ». DXPR a bloqué le domaine du site. Contactez DXPR via le lien du message.

La console affiche des erreurs 401 ou 403 depuis cdn2.dxpr.com

Avec Asset source réglé sur Cloud, les scripts de l’éditeur se chargent depuis cdn2.dxpr.com avec votre clé de produit dans l’URL. Une 401 ou 403 signifie que le CDN a rejeté la clé. Vérifiez la section License des General Settings, puis suivez Erreurs de licence et de clé de produit. Si les requêtes expirent au lieu de cela, un pare-feu bloque le CDN ; voir Utiliser DXPR Builder derrière un pare-feu.

L’éditeur s’est arrêté après une mise à jour

  1. Lancez drush updb -y (ou visitez /update.php).
  2. Lancez drush cr.
  3. Ouvrez une page du builder et enregistrez-la à nouveau.

Si le journal signale un fichier manquant dans le dossier du module, le code sur le serveur est incomplet. Réinstallez le code :

  1. Supprimez le dossier modules/contrib/dxpr_builder.
  2. Lancez composer require drupal/dxpr_builder.
  3. Lancez drush cr.

Important : ne désinstallez jamais le module pour le réinitialiser. La désinstallation supprime modèles enregistrés, profils et réglages.

Les contrôles s’affichent, mais les boîtes de dialogue de réglages ne s’ouvrent jamais

La console affiche bootstrap is not defined, ou une erreur sur getOrCreateInstance. Les boîtes de dialogue de l’éditeur tournent sur le JavaScript Bootstrap 5. La page n’en a pas, ou le thème charge Bootstrap 3 ou 4 à la place.

  1. Accédez à General Settings et ouvrez la section Bootstrap.
  2. Si votre thème ne charge pas Bootstrap 5, réglez Sideload Bootstrap files sur Bootstrap 5 et cliquez sur Save settings.
  3. Si votre thème charge le JavaScript Bootstrap 3 ou 4, arrêtez de le charger ou passez à un thème Bootstrap 5.

La console affiche une erreur JavaScript d’un autre script

Un autre script de la page casse l’éditeur. Dans les tickets de support, les coupables étaient des bandeaux de consentement cookies, des gestionnaires de balises, une intégration MailChimp et un agent navigateur New Relic. Les thèmes l’ont aussi causé, via un bundle Webpack ou leur propre JavaScript Bootstrap 3 ou 4, tout comme les minifieurs JavaScript.

  1. Accédez à Configuration > Development > Performance et désactivez l’agrégation JavaScript. Rechargez.
  2. Désactivez les modules de consentement, d’analyse et de supervision un par un. Rechargez après chacun.
  3. Basculez sur un thème du cœur comme Olivero pour un test.

Ce que le résultat vous dit :

  • Corrigé par l’étape 1 : un minifieur est en cause. Les bibliothèques auxiliaires de l’éditeur, comme Sortable, sont agrégées avec le reste de la page, donc Sortable is not defined avec l’agrégation activée pointe ici. Avec Advanced CSS/JS Aggregation, changez le minifieur de JSqueeze en JSMin.
  • Corrigé par l’étape 2 : gardez ce module désactivé sur les pages de modification, ou signalez le conflit à son mainteneur.
  • Corrigé par l’étape 3 : le JavaScript du thème est en cause. Arrêtez de charger le JavaScript Bootstrap 3 ou 4 depuis le thème, et réglez Sideload Bootstrap files sur Bootstrap 5.

La page affiche « The website encountered an unexpected error »

Le journal affiche une trace de pile via DxprBuilderService qui nomme une vue ou une classe de bloc d’un autre module.

Pour les contributeurs, le builder liste chaque affichage de vue et chaque plugin de bloc pour les ajouter aux pages. Pour chaque visiteur, il affiche les blocs et vues placés dans la page. Une seule vue ou un seul bloc cassé qui lève une erreur à l’une de ces étapes fait tomber la page.

  1. Ouvrez Reports > Recent log messages et trouvez la vue ou le module nommé dans la trace.
  2. Corrigez ou supprimez cette vue, ou désactivez ce module.
  3. Videz tous les caches.

L’éditeur ne s’affiche jamais sur un type de contenu

  1. Accédez à Structure > Content types > (type) > Manage display.
  2. Réglez le format du champ du builder sur DXPR Builder.
  3. Répétez pour chaque mode d’affichage qui affiche le champ, pas seulement Default.

Note : l’éditeur a besoin d’un champ avec une valeur pour s’y attacher. Quand vous enregistrez un nœud, DXPR Builder remplit un champ vide qui utilise le format DXPR Builder dans l’affichage Default. Un nœud enregistré avant votre changement de format reste vide : modifiez-le et enregistrez-le une fois.

Seuls certains utilisateurs voient l’éditeur

Vérifiez ceci pour le compte qui ne voit pas d’éditeur :

  1. Sous People > Permissions (/admin/people/permissions), le rôle a Edit with DXPR Builder.
  2. Le rôle peut aussi modifier ce contenu, par exemple Basic page : Edit any content. L’éditeur ne se charge que pour les utilisateurs qui peuvent mettre à jour la page.
  3. Le compte a une adresse e-mail valide. Les licences en ont besoin d’une.
  4. Sur le formulaire de modification de l’utilisateur, Exclude from DXPR builder editing n’est pas coché.
  5. Sous DXPR Studio > DXPR Builder > User Profiles, le profil de ce rôle a Start editor when page loads coché. Quand c’est désactivé, les contrôles n’apparaissent qu’après un clic sur l’icône en forme d’œil des contrôles du conteneur.

Un autre contributeur a verrouillé le contenu

Un avertissement dit « The content … is locked by » un collègue, et le conteneur ne montre qu’un bouton Locked. Ce contributeur a cliqué dans le conteneur et n’a pas encore enregistré ; le verrou se lève à son enregistrement. Demandez-lui d’enregistrer, ou cliquez sur Locked et confirmez pour prendre la main. Si vous modifiez à deux, le dernier enregistrement gagne.

Vérifier la correction

Rechargez dans une fenêtre privée et pointez la zone de contenu. La barre du conteneur affiche View mode, Plus et Save, et la console ne montre aucune erreur rouge.

Et ensuite ?

Problèmes après une mise à jour si l’éditeur a cassé juste après une version.