Un site Drupal peut devenir une application mobile de quatre manières : le rendre installable en tant qu'application Web progressive, charger le site en direct dans un shell natif avec un convertisseur de site Web en application, créer une application découplée distincte sur JSON:API, ou embaucher un service géré ou une agence pour en faire une pour vous. La question décisive pour la plupart des équipes Drupal est de savoir si l’organisation peut se permettre de gérer un deuxième front-end à côté de celui qu’elle gère déjà.
Ce guide compare les quatre itinéraires, y compris les cas où SiteTo.App n'est pas le bon choix, puis propose un plan de test téléphonique pour l'authentification unique, les fichiers privés et les langues. Pour la version courte, voir le Drupal vers la page de l'application.
Votre site Drupal a-t-il besoin d’une application ?
Drupal gère des sites Web d'universités et de conseils, des portails d'associations et de membres, des bibliothèques de ressources à but non lucratif, des intranets, des sites d'actualités et des magasins Drupal Commerce. Ce qu’ils ont en commun, c’est un public qui revient, souvent connecté, pour effectuer un travail spécifique.
Posez trois questions avant de comparer les produits :
- Que fera quelqu’un dans l’application chaque semaine ? Consultez un emploi du temps, lisez les actualités des membres, réservez une installation, signalez un problème, renouvelez quelque chose, commandez à nouveau. Si vous ne parvenez pas à nommer la tâche, un bon thème responsive suffit.
- Cette tâche fonctionne-t-elle déjà sur un téléphone ? Si un membre a besoin de sept clics dans un méga menu pour accéder à son tableau de bord, une application créée à partir du site hérite de la majeure partie de ce parcours. Corrigez-le d'abord dans le thème.
- La fiche Play Store en elle-même vaut-elle quelque chose ? Les résidents et les étudiants effectuent des recherches par nom sur l'App Store et Google Play, et il est plus facile de revenir à une icône sur l'écran d'accueil qu'à un signet.
Un site uniquement informatif sans tâche répétitive est un mauvais candidat. Apple peut rejeter les applications qui n'ajoutent rien au-delà d'un site Web sous Ligne directrice 4.2.
Quelles sont les quatre façons d’obtenir une application mobile Drupal ?
| Itinéraire | Ce que les utilisateurs obtiennent | Ce que votre équipe maintient | Forme typique des coûts | Liste des magasins |
|---|---|---|---|---|
| Application Web progressive | Votre site, installable depuis le navigateur jusqu'à l'écran d'accueil | Le site Drupal plus un manifeste et un service worker | Temps de développement | Aucun par défaut |
| Convertisseur de site Web en application (SiteTo.App) | Une application sous votre nom qui charge votre site Drupal en direct dans un shell natif | Le site Drupal | Une fois par plateforme : 29 $ Android, 79 $ iOS, 99 $ les deux | Le vôtre, depuis vos propres comptes |
| Application découplée sur JSON : API | Écrans conçus et codés pour iOS et Android | Le site Drupal, un contrat API et une base de code pour l'application | Budget du projet plus maintenance continue | Le vôtre ou celui de votre agence |
| Service ou agence d'application gérée | Dépend du fournisseur : une application WebView ou une version personnalisée, avec une équipe attachée | Le site Drupal et la relation fournisseur | Frais mensuels ou annuels, ou frais de projet | Varie selon le fournisseur |
Chaque itinéraire avec sa propre fiche de magasin nécessite également des comptes de développeur : le programme pour développeurs Apple à 99 $ par an et Google Play à 25 $ une fois, payés directement à Apple et à Google.
Voie 1 : une application web progressive
Une PWA ajoute un manifeste d'application Web et un service worker au site afin que les utilisateurs puissent l'installer à partir du navigateur. La contribution Module d'application Web progressive gère les bases de Drupal. Depuis iOS 16.4, les applications Web ajoutées à l'écran d'accueil de l'iPhone peuvent également recevoir un push Web.
Il n'y a pas d'avis sur le magasin, ni de liste de magasins non plus. Sur un iPhone, l'utilisateur doit savoir utiliser Partager, puis Ajouter à l'écran d'accueil. Pour un intranet du personnel, cela peut suffire. Notre comparaison de PWA, natif et WebView va plus profondément.
Voie 2 : un convertisseur de site Web en application
Avec SiteTo.App, l'application est un shell natif autour de votre site Web en direct : votre icône et votre écran de lancement, un en-tête natif avec votre logo, un menu latéral, des onglets inférieurs, un balayage vers l'arrière, une extraction pour actualiser et des notifications push facultatives via votre propre projet Firebase. Les pages à l'intérieur sont vos pages Drupal, chargées dans une WebView, qui est le même moteur de navigateur que Safari ou Chrome.
Drupal affiche toujours chaque page et prend chaque décision d'accès, et un nœud publié à 9h00 est dans l'application à 9h00 sans nouvelle version. La limite découle de la même conception : l’application est aussi bonne que votre thème mobile. Notre guide pour convertir un site Web en application mobile couvre le processus général.
Une équipe Drupal composée de développeurs mobiles peut créer ce type de shell en interne avec un framework tel que Capacitor, en échange de la possession du pipeline de build, de la signature des certificats et des mises à jour annuelles du SDK.
Route 3 : une application découplée sur JSON:API
JSON : API fait partie du noyau Drupal, le guide Drupal découplé couvre l'approche plus large et les modules contribués tels que OAuth simple gérer les demandes authentifiées. Les développeurs écrivent l'application dans Swift et Kotlin, ou dans React Native ou Flutter, avec Drupal comme back-end de contenu.
Une application découplée peut faire des choses qu'un site Web ne peut pas faire : stocker du contenu pour une utilisation hors ligne, utiliser Bluetooth ou la localisation en arrière-plan et présenter des écrans conçus pour le téléphone. Le prix est un deuxième frontal. Chaque type de contenu nécessite un écran, et les rôles et règles d'accès doivent être respectés via l'API. Les formulaires Web, les traductions, la recherche et le paiement Commerce sont chacun un travail à construire puis à suivre en phase avec le site.
Route 4 : un service ou une agence gérée
Les services gérés créent et soumettent l'application pour vous et facturent des frais récurrents à l'équipe qui la gère. Certains utilisent la même approche WebView comme convertisseur, et notre comparaison avec MobiLoud montre ce que ces frais achètent. Une agence Drupal peut également livrer la route 3 sous forme de projet. Soit cela convient à une organisation dans laquelle personne ne peut posséder la soumission du magasin, soit lorsque l'approvisionnement nécessite un fournisseur sous contrat.
Quel itinéraire correspond à quel site Drupal ?
| Votre situation | Itinéraire à regarder en premier |
|---|---|
| Intranet du personnel, et vous pouvez montrer aux gens comment l'installer | PWA |
| Portail adhérent, étudiant ou résident qui fonctionne déjà bien sur téléphone, et vous souhaitez une fiche store sans projet de développement | Convertisseur de site Web en application |
| Contenu hors ligne, Bluetooth, AR ou traitement en arrière-plan | Application découplée |
| Personne en interne ne peut gérer les soumissions du magasin et examiner les réponses | Service ou agence géré |
| Le thème mobile est lent ou gênant | Corrigez d'abord le thème, puis décidez |
Quand SiteTo.App est-il le mauvais choix pour un site Drupal ?
- Votre fournisseur SSO bloque les navigateurs intégrés et il n'existe aucun autre moyen de vous connecter. L'application ne peut pas dépasser l'écran de connexion. Le plan de test ci-dessous le trouve rapidement.
- Vous avez besoin de contenu hors ligne. L'application a besoin d'une connexion pour charger vos pages.
- Vous souhaitez que le push soit envoyé automatiquement lorsqu'un nœud est publié ou ciblé par rôle ou langue. Les notifications sont envoyées manuellement depuis le tableau de bord à tous ceux qui se sont inscrits, sans segment ni planification pour le moment.
- Vous voulez des écrans qui n’existent pas sur le site. SiteTo.App ajoute une navigation native autour de vos pages et laisse leur conception seule.
- Vous avez besoin d'un fournisseur pour soumettre l'application et répondre aux évaluateurs. Vous soumettez à partir de vos propres comptes Apple et Google et lisez vous-même chaque message des évaluateurs.
- Le site est toujours sous Drupal 7 avec un thème à largeur fixe. Drupal 7 a atteint la fin de sa vie utile en janvier 2025. Migrez avant de présenter le site à davantage de personnes.
Comment les fonctionnalités Drupal se comportent-elles dans une application WebView ?
La plupart des thèmes Drupal s'affichent exactement comme dans un navigateur de téléphone. Ce sont les exceptions.
Authentification unique. De nombreux sites Drupal s'authentifient via un fournisseur d'identité à l'aide de modules tels que Connexion OpenID, Authentification SAML ou CAS. L'utilisateur quitte votre site, se connecte ailleurs et est renvoyé, et le fait que cela fonctionne dans une application dépend du fournisseur. Google Politique OAuth n'autorise pas son écran de connexion dans les vues Web intégrées. Une stratégie d'entreprise qui nécessite un appareil géré ou un navigateur approuvé peut bloquer une vue Web de la même manière. Le formulaire Drupal standard sur /user/login n'a pas une telle dépendance.
Durée de la séance. Le cookie de session par défaut de Drupal dure environ 23 jours, mais les paramètres par défaut côté serveur peuvent effacer une session inutilisée pendant un peu plus de deux jours, et les sites du secteur public et universitaires peuvent se resserrer. gestion des sessions plus loin. Une courte session est sonore sur un bureau partagé. Sur un téléphone personnel, cela signifie se reconnecter bien plus souvent que ce que les gens attendent d'une application. Le Connexion persistante Le module ajoute une option explicite "se souvenir de moi" si vous en voulez une.
Fichiers privés. Documents stockés dans Drupal système de fichiers privé sont servis via Drupal afin que l'accès puisse être vérifié pour chaque demande. Si un lien PDF est transmis à une autre application ou navigateur qui ne contient pas le cookie de session, Drupal voit un visiteur anonyme et refuse.
Langues et domaines. Drupal Module de langue peut choisir une langue parmi un préfixe d'URL, un domaine, le compte de l'utilisateur ou le navigateur. L'application ouvre une URL de démarrage et ses onglets pointent vers des chemins fixes. Un site avec /en et /fr les préfixes nécessitent une décision sur celui que les onglets utilisent et un sélecteur de langue visible pour tout le monde.
Forms. Plaine Formulaire Web les champs ne posent aucun problème. Les téléchargements de fichiers et de photos, les formulaires en plusieurs étapes avec des brouillons enregistrés et les défis CAPTCHA sont ceux à tester.
Superpositions et barre d'outils d'administration. Les bannières de consentement, les modaux de newsletter et les en-têtes collants se disputent l'espace où se trouvent l'en-tête et les onglets natifs de l'application. SiteTo.App peut masquer l'en-tête et les fenêtres contextuelles de votre site avec des scripts qui s'exécutent dans l'application, de sorte que le thème reste intact et que les pages mises en cache soient servies comme d'habitude. Les éditeurs qui se connectent à l'application verront toujours la barre d'outils d'administration de Drupal.
DrupalCommerce. Commerce le paiement avec des champs de carte sur vos propres pages est un cas simple. Les passerelles qui redirigent vers une page de paiement hébergée nécessitent chacune une commande test.
Accessibility. Les organismes publics et les universités ont généralement des obligations légales en matière d'accessibilité. Les pages à l'intérieur de l'application sont le même HTML que celui produit par votre thème, donc le travail déjà effectué y est reporté. L'en-tête, le menu et les onglets natifs sont une nouvelle interface, alors incluez-les lorsque vous testez avec VoiceOver et TalkBack.
Comment tester un site Drupal en tant qu'application, étape par étape ?
Utilisez un vrai téléphone, le site de production et les comptes de test pour deux ou trois rôles. L'aperçu est gratuit et ne nécessite aucune carte, alors exécutez l'intégralité du plan avant de payer quoi que ce soit.
Étape 1 : Vérifiez le thème mobile
Ouvrez vos cinq pages les plus visitées dans le navigateur d'un téléphone. Recherchez le défilement latéral dans les tableaux et les vues, un méga menu qui couvre l'écran et une bannière de consentement qui ne peut pas être ignorée. Corrigez ce que vous trouvez dans le thème.
Étape 2 : Créer l'aperçu
Collez l'URL publique dans SiteTo.App, en utilisant le préfixe de langue ou le domaine sur lequel vos visiteurs mobiles doivent atterrir. Définissez le nom de l'application, l'icône et l'écran de lancement, puis choisissez les onglets pour les tâches répétées par les utilisateurs. Un organisme membre peut utiliser Accueil, Actualités, Événements et Mon compte. Copiez chaque lien de l'alias du chemin du site en direct, puis scannez le code pour ouvrir l'application sur votre téléphone.
Un site intermédiaire derrière une authentification HTTP ou une liste blanche IP ne peut pas être chargé sur un téléphone, le plan utilise donc la production.
Étape 3 : Prouvez d'abord votre connexion
Ce test décide du projet, alors exécutez-le avant toute autre chose.
- Connectez-vous comme le font les vrais utilisateurs. S'il s'agit de SSO, effectuez l'aller-retour complet, y compris l'invite MFA.
- Ouvrez une page que seul votre rôle peut voir.
- Fermez complètement l'application et rouvrez-la. Vérifiez à nouveau le lendemain matin.
- Si votre site utilise des mots de passe Drupal, demandez une réinitialisation. Le lien à usage unique contenu dans l'e-mail s'ouvre normalement dans le navigateur du téléphone, donc confirmez le nouveau mot de passe et fonctionne ensuite dans l'application.
- Déconnectez-vous et confirmez que la page restreinte est refusée.
Si le SSO échoue, demandez à votre équipe chargée de l'identité si une politique bloque les navigateurs intégrés et si une connexion par mot de passe Drupal peut être proposée en parallèle. Si ni l’un ni l’autre n’est possible, arrêtez-vous ici et regardez un autre itinéraire.
Étape 4 : Ouvrez le contenu restreint et les fichiers privés
Connectez-vous, ouvrez un nœud restreint au rôle et un PDF privé. Vérifiez que le fichier s'affiche et que vous pouvez revenir à la page d'où vous venez. Répétez la déconnexion et confirmez que Drupal refuse les deux.
Étape 5 : Parcourir les vues, la recherche et les formulaires
Utilisez un filtre exposé ou une facette sur une longue liste et parcourez les résultats. Exécutez une recherche sur le site. Soumettez ensuite votre formulaire Web le plus chargé du début à la fin, y compris les éventuels champs de téléchargement et CAPTCHA, et vérifiez que le message de confirmation et l'e-mail de notification arrivent.
Étape 6 : Changez de langue et recherchez les chevauchements
Changez de langue avec le sélecteur du site, puis appuyez sur chaque onglet et notez celui qui vous renvoie à la langue par défaut. Appuyez ensuite en tant que membre et en tant qu'éditeur, en recherchant un deuxième en-tête, une bannière de consentement sur les onglets ou la barre d'outils d'administration poussant le contenu vers le bas.
Étape 7 : Décidez
| Zone | Passer quand |
|---|---|
| Se connecter | Votre véritable méthode de connexion est terminée, y compris MFA |
| Session | Vous êtes toujours connecté après la fermeture et la réouverture de l'application |
| Accéder | Les pages restreintes et les fichiers privés s'ouvrent lorsque vous êtes connecté et sont refusés lorsque vous êtes déconnecté |
| Vues et recherche | Les filtres, les facettes et la pagination fonctionnent avec un seul pouce |
| Formulaires Web | Les téléchargements et CAPTCHA sont terminés et la confirmation apparaît |
| Langues | Les onglets restent dans la langue choisie ou la solution de secours est acceptable |
| Mise en page | Un en-tête, un menu, rien ne recouvre les onglets |
Résoudre les problèmes de page dans Drupal et les problèmes de navigation dans les paramètres SiteTo.App. Un échec de connexion sans solution de secours est une raison pour choisir un itinéraire différent.
Combien coûte chaque itinéraire ?
SiteTo.App facture une fois par plateforme : 29 $ pour Android, 79 $ pour iOS ou 99 $ lorsque vous achetez les deux ensemble. Il n'y a pas d'abonnement SiteTo.App. Les reconstructions ultérieures, par exemple pour changer l'icône, sont citées séparément. La publication et l'édition de contenu dans Drupal n'ont jamais besoin d'une reconstruction. Le page de tarification a les détails, et le guide des coûts compare le marché au sens large.
Une application découplée est un projet de développement suivi d'un engagement de maintenance, car l'application doit suivre Drupal et les versions iOS et Android de chaque année. Un service géré facture des frais récurrents tant que l'application est en ligne.
Les 99 $ d'Apple par an et l'inscription de 25 $ de Google s'appliquent à tout itinéraire comportant une fiche de magasin. Les organisations à but non lucratif, les établissements d'enseignement accrédités et les entités gouvernementales peuvent demander à Apple un dispense des frais s'ils distribuent uniquement des applications gratuites et remplissent les autres conditions d'Apple.
Comment publier une application basée sur Drupal sur l'App Store et Google Play ?
Le créer et publier un guide parcourt la séquence complète. Quelques points comptent plus pour les sites Drupal que pour la plupart.
Utilisez les propres comptes de développeur de l'organisation. Inscrivez-vous avec le nom légal de l'établissement afin que la liste indique l'université, le conseil ou l'association en tant qu'éditeur. Apple demande aux organisations un numéro D-U-N-S et la vérification prend du temps, alors commencez tôt.
Builds. La version iOS est signée et téléchargée sur TestFlight dans votre propre compte Apple, donc personne n'a besoin d'un Mac ou de Xcode (les détails ici). Android arrive sous forme d'AAB pour Google Play ou d'APK. Répétez le plan de test sur la version TestFlight avant de la soumettre.
Donnez aux évaluateurs un accès. Si la partie utile de l'application se trouve derrière une connexion, créez un compte de démonstration avec un rôle de représentant et inscrivez ses informations d'identification dans les notes de révision. Un compte qui dépend de votre SSO et MFA arrêtera un réviseur au premier écran.
Planifiez les mises à niveau de Drupal. Drupal 10 arrive en fin de vie le 9 décembre 2026 selon le calendrier des versions principales. Une mise à niveau vers Drupal 11 qui conserve les mêmes alias de domaine et de chemin ne nécessite aucune nouvelle création d'application. Si les alias changent, ajoutez des redirections ou mettez à jour les liens des onglets.
Apple et Google prennent la décision d'approbation, et personne ne peut promettre le résultat. Le guide de publication couvre les listes et l'examen plus en profondeur.
Questions fréquemment posées
Puis-je transformer un site Web Drupal en application mobile sans module ?
Oui. Un convertisseur de site Web en application tel que SiteTo.App charge les pages déjà affichées par votre thème, il n'y a donc aucun module à installer ni aucune API à exposer. L'optionnel SDK JavaScript pour les badges d'onglets, la feuille de partage et l'haptique sont un script que vous pouvez joindre via la bibliothèque de votre thème.
Notre SSO fonctionnera-t-il dans l'application ?
Cela dépend de votre fournisseur d'identité. Le formulaire de connexion de Drupal fonctionne comme dans un navigateur. Les connexions SAML, OpenID Connect et CAS redirigent vers un fournisseur qui peut restreindre les navigateurs intégrés. Exécutez une connexion complète, y compris MFA, dans l’aperçu gratuit avant de vous décider.
Est-ce que ça marche avec Drupal 10, Drupal 11 et Drupal CMS ?
Oui. SiteTo.App fonctionne à partir de l'URL publique et ne dépend pas de la version de Drupal, de sorte que tout site Drupal public et adapté aux mobiles peut être prévisualisé, y compris un site avec un frontal découplé.
Drupal peut-il déclencher des notifications push lorsque du contenu est publié ?
Pas avec le SiteTo.App aujourd'hui. You send each notification from the dashboard with a title, text, optional image and a link, and it goes to everyone who opted in. If automatic or role-based notifications are essential, a decoupled build is the better fit.
Étape suivante
Commencez par le test de connexion. Collez votre URL Drupal dans le aperçu gratuit, ouvrez-le sur votre téléphone et connectez-vous comme le font vos utilisateurs. Si cela fonctionne, exécutez le reste du plan. Le Drupal vers la page de l'application a la courte liste de contrôle à partager avec quiconque doit l'approuver.
Voyez votre site Web comme une application
Personnalisez l'expérience et prévisualisez-la avant de choisir une plateforme.
Créez votre aperçu


