Aujourd'hui, WordPress gère 25% de tous les sites Web du monde. Il est donc raisonnable de dire que ce qui a commencé comme un logiciel de blogging est devenu bien plus grand que ses modestes origines et qu'il est prêt à être utilisé sur des sites de production, des portails d'informations à applications web complètes.
Avec ce niveau de professionnalisme, de nouveaux besoins apparaissent.
Sur un blog personnel lu par des amis et la famille, une mise à jour de plug-in cassée ne causera pas plus que de légers ennuis - probablement, vos lecteurs ne verront même pas l'erreur. Cependant, lorsque vous travaillez devant des centaines de milliers de visiteurs, une telle erreur est immédiatement détectée et vous ne vous en tirerez pas aussi facilement..
"Cela a fonctionné sur mon ordinateur" peut-être vrai, mais cela ne rendra pas le client frustré plus heureux.
C'est pourquoi, lorsque vous créez un site WordPress professionnel destiné à un public plus large, vous avez besoin d'une configuration d'hébergement vous permettant de vous assurer que vos mises à jour sont sécurisées et ne brisent jamais l'environnement en direct..
Alors, comment vous assurer que votre serveur ne se cassera pas lorsque vous présenterez une nouvelle mise à jour, qu’il s’agisse d’une nouvelle version de votre thème ou d’une mise à jour d’un ou de plusieurs de vos plugins??
En testant dans un environnement identique au serveur actif avant d'appliquer vos modifications en direct.
La configuration commence par un serveur de développement que vous utilisez pour votre travail quotidien sur le produit: tests de développeur, présentation des premiers changements aux clients, etc. Ce serveur peut fonctionner sur votre ordinateur ou sur un serveur dans le cloud.
Lorsque vous êtes satisfait de la façon dont les choses se présentent sur le serveur de développement, dans cette configuration, vous ne vous précipitez pas pour appliquer votre code en direct. Au lieu de cela, vous validez vos modifications dans le contrôle de version et les déployez dans un répertoire. serveur de test.
Parce que l'environnement de test exécute un logiciel serveur identique à celui du serveur réel (à l'exception du fait que le nouveau code n'a pas encore été mis à jour sur le serveur actif), vous pouvez l'utiliser pour détecter tout problème susceptible de survenir sur le serveur. pas sur votre environnement de développement. Pour rendre les tests encore plus réalistes et repérer les erreurs causées par les données saisies par vos clients, vous pouvez également renseigner la base de tests avec des données réelles de votre serveur live..
Sur le serveur de test, vous vous assurez que tout fonctionne comme il se doit en testant le site manuellement ou en exécutant des tests automatisés, ou une combinaison des deux. Et alors seulement, une fois les tests terminés, transmettez les modifications en direct. Avec confiance, sachant que les changements ne briseront pas votre site.
Bien que l'approche Dev-Test-Live soit bien connue des éditeurs de logiciels qui construisent des services en ligne, elle s'est traditionnellement limitée aux développeurs et aux entreprises disposant des ressources nécessaires pour exécuter et gérer plusieurs serveurs par eux-mêmes et pour les synchroniser avec le même serveur. logiciel et données.
Cela signifie payer pour de nombreux serveurs, mais aussi beaucoup de travail de maintenance.
Sur Pantheon, cette approche est intégrée au service.
Pantheon est un service d’hébergement WordPress et Drupal rapide et évolutif, qui vous permet non seulement de tester votre code sur un serveur de test avant de le diffuser, mais qui vous oblige également à suivre la procédure recommandée dans tous vos déploiements..
Dans ce tutoriel, vous apprendrez à configurer un site WordPress sur Pantheon, à le développer et à le maintenir de manière sécurisée à l'aide de l'architecture Dev-Test-Live et du contrôle de version..
Commençons!
Maintenant que vous savez ce que nous allons construire (et pourquoi), il est temps de commencer.
L'un des avantages du Panthéon est son modèle de tarification: vous ne payez que lorsque votre site est mis en ligne. Vous pouvez donc tout essayer et même montrer votre site à vos amis et à vos clients avant de payer pour votre compte..
Commencez par vous rendre sur le site Web du Panthéon et créez votre compte gratuit..
Si votre travail consiste à créer des sites Web pour un groupe de clients ou si vous avez une équipe de développeurs travaillant avec vous, vous pouvez vous inscrire en tant qu'agence. Les agences ont la même structure de tarification mais disposent également de fonctionnalités supplémentaires telles que Multidev, qui vous permet de répartir un site dans plusieurs environnements de développement afin de faciliter la collaboration et de créer et de démontrer de nouvelles fonctionnalités sans avoir à mettre à jour l'environnement principal..
Si vous ne savez pas quel type de compte vous convient, choisissez simplement le compte par défaut. Vous pouvez toujours convertir votre compte en compte d'agence plus tard.
Une fois connecté, vous verrez la vue suivante:
Cliquer sur Créer un nouveau site commencer à construire votre premier site WordPress sur Panthéon.
Sur cet écran, choisissez un nom pour votre site sur Pantheon: le nom est utilisé dans votre administrateur Pantheon et pour générer les URL de vos environnements. Vous ne pouvez pas changer ce nom plus tard, il est donc bon d'y réfléchir, mais ne vous inquiétez pas, il ne doit pas nécessairement être identique au nom final de votre site WordPress..
Les noms sont globaux dans Panthéon, donc choisir quelque chose de très générique peut conduire à une erreur. Dans ce cas, essayez autre chose.
Après avoir sélectionné le nom, cliquez sur Créer un site.
Ensuite, il vous sera demandé de choisir l’état de démarrage de votre nouveau site. Vous pouvez démarrer un nouveau site Web à partir de zéro ou importer un site Drupal ou WordPress existant:
Choisir Commencer à partir de zéro.
En dessous de la sélection, vous verrez une liste de différents packages de départ ou amont, comme ils sont appelés sur Pantheon..
Ces modifications en amont sont gérées par Pantheon afin que, lorsqu'une nouvelle mise à jour devient disponible pour celle que vous utilisez (WordPress, dans notre cas), vous pouvez facilement la mettre à jour sur votre site via le tableau de bord Pantheon..
Comme nous créons un site WordPress, cliquez sur Installer WordPress.
L'installation commence. Et au bout d'un moment, c'est prêt.
Clique sur le Visitez votre tableau de bord Pantheon bouton.
Maintenant, vous avez une nouvelle installation WordPress sur un serveur de développement Pantheon et vous pouvez y accéder et la contrôler via le tableau de bord Pantheon..
En haut de l'écran, vous verrez trois onglets pour les différents environnements de serveur: Dev, Tester, et Vivre. Sous chaque onglet, vous trouverez ensuite une structure de menu similaire pour la maintenance de ce serveur et le déploiement de code et de données entre environnements:
Clique sur le Administrateur du site bouton en haut à gauche de l'écran. Cela vous mènera à travers votre flux de configuration WordPress habituel:
Vous pouvez également cliquer sur le Visiter le site de développement bouton pour voir le site.
Maintenant que votre environnement de développement est opérationnel, examinons les deux autres environnements..
Comme nous l'avons vu ci-dessus, sur le tableau de bord Pantheon, vous trouverez les onglets pour les trois environnements de serveur: Dev, Tester, et Vivre.
Chacun des onglets représente l'un des environnements de serveur exécutant votre site.. Dev constitue l’environnement de développement permettant de tester votre travail sur le site, et peut-être de présenter aux clients une première version du site. Vivre est la version du site qui est opérationnelle et qui est utilisée par les utilisateurs réels.
Entre les deux est Tester, l'environnement qui maintient votre site live relativement à l'abri de vos erreurs. Avant que vous puissiez pousser quoi que ce soit en direct sur Pantheon, il faudra toujours passer par un Tester environnement, de sorte que vous ayez une dernière chance de vérifier que tout fonctionne correctement avant d'envoyer votre code dans la nature.
Comme nous venons de créer le nouveau site WordPress, il n’existe toujours que dans l’environnement de développement..
Créons un environnement de test pour cela.
Clique sur le Tester languette.
Comme c'est votre première fois sur le Tester onglet, vous verrez des informations sur le fonctionnement de l'environnement de test.
Cliquer sur Créer un environnement de test pour cloner votre environnement de développement à des fins de test. A ce stade, le code et les données de Dev sont clonés car il n’existe pas encore d’environnement actif. Cependant, dans les futures mises à jour, vous verrez bientôt que seul le code passe de Dev à Test. En effet, sur le serveur de test, vous allez comparer votre code aux données copiées à partir de l'environnement réel..
L'environnement de test est maintenant prêt.
Cliquer sur Visitez le site de test pour vérifier que le site de test est identique au site en cours d’exécution sur votre environnement de développement. Vous pouvez aussi cliquer Administrateur du site pour vous connecter à votre tableau de bord WordPress. Utilisez les mêmes informations d'identification que vous avez définies pour WordPress sur le serveur de développement.
Vous avez créé une installation WordPress très basique avec un environnement de développement et de test et vous êtes prêt à commencer à le personnaliser..
Maintenant que vous avez une installation WordPress sur le cloud, vous voudrez probablement faire quelque chose de plus. À tout le moins, vous allez installer quelques plugins et peut-être un thème, puis personnaliser le site à votre guise. Dans une configuration plus complexe, vous allez écrire vos propres plugins et peut-être créer un thème personnalisé pour personnaliser votre site..
C’est là que nous arrivons au cœur du travail avec une configuration Dev-Test-Live.
La configuration de Pantheon est basée sur le contrôle de version: Pantheon conserve l'intégralité de votre installation WordPress, à l'exception des téléchargements de fichiers, gérés à l'aide d'un système de fichiers spécial, dans un référentiel Git. Ainsi, lorsque vous déployez vos modifications dans l'environnement suivant, tout reste toujours synchronisé et vous ne perdez jamais vos modifications..
Cela signifie également que le contrôle des versions est le seul moyen de mettre à jour les environnements Test et Live. Vous ne pouvez pas installer de plug-ins ou de thèmes sur le serveur Live de la manière dont vous êtes probablement habitué lorsque vous utilisez WordPress. Après tout, cela casserait l’idée de tester la configuration avant de la pousser en direct.
Alors, comment installer et mettre à jour des plugins et des thèmes sur votre site WordPress?
Vous pouvez accéder à votre site Dev l’environnement sur Pantheon de deux manières: en utilisant Git ou directement sur SFTP.
Bien que l'utilisation de Git soit utile pour certains cas d'utilisation plus avancés (nous y reviendrons plus loin dans le didacticiel), la beauté de la configuration du Panthéon réside dans le fait qu'en utilisant SFTP, vous pouvez utiliser l'environnement de développement comme serveur de développement. . De cette façon, il est même possible de ne pas avoir de serveur de développement exécuté sur votre ordinateur..
Le choix n'est pas permanent: vous pouvez basculer entre les modes en fonction de ce qui fonctionne le mieux pour la tâche à accomplir..
Donc, pour le moment, assurez-vous que votre environnement de développement utilise le SFTP mode de connexion:
En mode SFTP, vous apportez vos modifications à la base de code de l'installation WordPress directement sur le serveur, puis, lorsque tout semble bien aller, vous les validez dans Git à l'aide des outils du tableau de bord Pantheon..
De cette façon, vous pouvez utiliser le site de développement comme vous le feriez avec n'importe quel site WordPress et personnaliser le site à l'aide du tableau de bord WordPress, comme vous le feriez avec une configuration de serveur unique..
Essayons en action.
Dans le tableau de bord d'administration WordPress, sélectionnez Plugins > Ajouter un nouveau. Ensuite, sélectionnez le plug-in que vous souhaitez installer. Par exemple, j'ai installé JetPack par WordPress.com:
Maintenant, activez le plug-in et vérifiez qu'il fonctionne correctement sur votre serveur de développement..
Lorsque vous êtes satisfait du plug-in, retournez à votre tableau de bord Pantheon. Là, vous verrez que le système a remarqué vos modifications et les affiche en tant que modifications prêtes à être placées dans le contrôle de version..
Cliquez sur le champ de texte qui dit Ajouter un message de validation pour entrer votre message de validation et voir plus de détails sur les modifications sur le point d'entrer dans le contrôle de version.
Vérifiez les modifications, ajoutez un message de validation descriptif, puis cliquez sur Commettre commettre les changements.
Une fois la validation terminée, les modifications sont disponibles pour être déployées sur le serveur de test. Pour ce faire, cliquez sur le bouton Tester languette.
Là, vous verrez la notification suivante.
C'est le commit que vous venez de faire sur votre Dev environnement, maintenant prêt à être déployé pour Tester.
Tapez un message de journal descriptif et cliquez sur Déployer le code du développement vers l'environnement de test.
Ensuite, consultez le tableau de bord WordPress de votre site de test pour vérifier les modifications..
Sur le Plugins page, vous verrez que le plugin a été installé, mais il n'est pas encore actif.
En effet, sur Pantheon, pendant que le code est mis à jour de Dev vers le serveur live, les modifications apportées à la base de données, y compris les informations relatives aux plug-ins actifs, sont inversées, de Live à Dev..
Parce que les plugins exécutent souvent du code lors de l'activation, ce n'est pas mal. Vous devez juste vous rappeler d’activer vos plugins une fois le déploiement terminé et prêt à commencer. Dans mon prochain tutoriel sur Pantheon, je montrerai comment automatiser cette opération à l'aide de l'outil en ligne de commande de Pantheon..
Cependant, bien que cette approche fonctionne pour les plug-ins, il existe d'autres données, telles que les paramètres de plug-in et de thème, qui constituent une partie importante de la configuration du site que vous ne souhaitez probablement pas configurer manuellement après le déploiement..
Voyons comment vous pouvez les passer d'un environnement à un autre.
Comme nous nous en souvenons, le code ou les fichiers de la version control-flow remontent de l'environnement de développement vers le serveur actif. Ainsi, pour déplacer les paramètres de la même manière, l’approche la plus naturelle consiste à les stocker dans le contrôle de version..
Pour ce faire, nous allons utiliser un plugin gratuit WordPress qui ne fait que cela.
Le plugin WP-CFM lit les options des tables d’options WordPress et les stocke dans un fichier texte, qui peut ensuite être affecté au contrôle de version (rappelez-vous que l’ensemble de l’installation de WordPress, à l’exception du répertoire de téléchargement, est stocké dans les autres environnements).
Faisons cela ensuite.
Suivez les instructions de l'étape 2 ci-dessus pour installer le plug-in WP-CFM dans l'environnement de développement et le déployer pour tester. Ensuite, activez le plugin sur les deux environnements.
Maintenant que le plugin est actif dans les deux environnements, nous pouvons l’utiliser pour pousser les options WordPress de Dev à Test. Si vous le souhaitez, vous pouvez modifier certains paramètres WordPress à ce stade pour que vous puissiez voir comment les modifications sont appliquées sur le serveur de test (le nom du site, par exemple, est une modification assez visible)..
Dans le tableau de bord WordPress de votre serveur de développement, cliquez sur Réglages > WP-CFM.
Cliquez sur Ajouter un paquet créer un nouveau groupe de paramètres pour le contrôle de version. Les bundles sont des collections de paramètres qui peuvent être sauvegardés et poussés indépendamment les uns des autres.
Ensuite, vous êtes invité à sélectionner les options que vous souhaitez inclure dans le paquet. Si vous souhaitez que certaines options restent différentes d’un environnement à l’autre, vous pouvez les désélectionner dans la liste..
Dans l'exemple ci-dessus, j'ai tout choisi Options WP, à l'exception de la liste des plugins actifs (car je veux pouvoir exécuter les scripts d'activation du plugin sur chaque environnement), mais vous pouvez choisir ce qui vous semble logique pour la configuration de votre site.
Lorsque vous êtes satisfait de la liste des options, cliquez sur Sauvegarder les modifications.
Une fois que vous avez sauvegardé le paquet, vous verrez de nouveaux boutons:
Clique sur le Diff bouton pour voir les différences entre votre base de données Dev et le contenu du fichier d'options exporté par WP-CFM.
Comme WP-CFM n’a pas encore créé de fichier d’exportation, le diff indiquera tout comme ajouté:
Fermez la fenêtre contextuelle Diff et cliquez sur Pousser stocker les données de la base de données dans le fichier d'exportation.
Maintenant, quand vous revenez à votre tableau de bord Pantheon Dev Dans cet onglet, vous verrez que WP-CFM a créé un fichier JSON (wp-content / config / site_options.json
) prêt à être engagé dans le contrôle de version:
Valider les modifications et les déployer sur le Tester environnement.
Ensuite, sur le tableau de bord WordPress du serveur de test, accédez à Réglages > WP-CFM.
Tout d'abord, vous remarquerez que le Options du site le paquet est maintenant disponible aussi dans cet environnement.
Toutefois, en raison des limitations définies pour les environnements Test et Live, vous remarquerez également que le groupe d'options ne fonctionne que dans un sens: wp-content / config
n'est pas accessible en écriture sur l'environnement de test. C’est génial car cela nous aidera à garder le fichier d’exportation propre.
Clique sur le tirer bouton pour lire le contenu du fichier de configuration et les appliquer à votre Options WP table. Dans la fenêtre de confirmation qui demande "Importer les paramètres du fichier dans la base de données?", Répondez D'accord.
Désormais, si vous avez apporté des modifications à vos options WordPress avant d’effectuer l’application Push sur le serveur de développement, ces modifications devraient également s’appliquer au site de test..
À un moment donné du cycle de vie de votre site, vous pouvez transférer les données réelles de votre serveur Live vers Dev. Cela peut être de tester un bogue avec de vraies données, ou simplement de voir à quoi ça ressemble avec du vrai contenu généré par l'utilisateur au lieu de données de test créées par vous, le développeur..
Sur le Dev environnement, cliquez sur Base de données / fichiers dans le menu à gauche.
Ici, vous pouvez choisir l’environnement à partir duquel cloner les données (test / live) et indiquer si vous souhaitez cloner uniquement la base de données ou également tout téléchargement de fichier effectué dans cet environnement..
Vous avez également la possibilité de mettre à jour les URL de la base de données afin qu'elles correspondent à la structure des URL de l'environnement de développement..
Notez que le clonage remplacera tout ce qui se trouve dans la base de données de votre environnement Dev. Par conséquent, si vous souhaitez apporter des modifications personnalisées après le clonage, utilisez WP-CFM pour les insérer dans un fichier texte avant de procéder au clonage..
Cette fonctionnalité est particulièrement utile pour extraire des données de Live et de Test vers Dev, mais vous pouvez également l’utiliser pour cloner la base de données Dev dans Test (et même Live). Cela peut être utile, par exemple, si vous créez le contenu initial de votre site (pages et peut-être des articles de blog) sur l'environnement de développement et souhaitez le tester en même temps avant de créer l'environnement Live..
Nous avons maintenant examiné les tâches de gestion de base de WordPress, telles que l’installation de nouveaux plug-in et le transfert des modifications de configuration entre environnements.
La mise à jour des plugins et l'installation de thèmes peuvent être effectuées de la même manière, en suivant les mêmes instructions. Donc, si vous faites toute la gestion de votre site en utilisant des thèmes et des plugins préexistants, c'est à peu près ce que vous devez savoir sur les bases du Panthéon pour en tirer le meilleur parti.
Cependant, vous voudrez souvent aussi changer le code vous-même, que ce soit en écrivant un plugin ou en modifiant et personnalisant un thème..
Pour montrer comment faire cela, créons un thème enfant simple pour le thème par défaut actuel, Twenty Sixteen, et poussons-le jusqu'au bout du site de test..
Tout en continuant à utiliser l'environnement de développement Pantheon comme serveur de développement, utilisons votre client FTP préféré pour télécharger nos modifications de code sur le serveur de développement..
C'est facile, et nous l'avons probablement tous fait à un moment ou à un autre sur d'autres serveurs sur Internet..
Pour vous connecter au serveur Pantheon, d’abord, sur le tableau de bord Pantheon, cliquez sur le bouton Informations de connexion STFP bouton pour ouvrir une fenêtre contextuelle contenant des informations sur la connexion à votre serveur de développement.
Copier le Hôte et Nom d'utilisateur informations sur votre client FTP et utilisez votre mot de passe Pantheon Dashboard pour vous connecter au serveur. Assurez-vous d'utiliser le Port spécifié dans les instructions de connexion.
Une fois connecté au serveur, vous retrouverez l'intégralité de la base de code de votre site WordPress dans l'annuaire. ~ / code
.
Une fois connecté, vous pouvez utiliser votre client FTP pour remplacer des fichiers ou en télécharger de nouveaux, et voir les modifications appliquées immédiatement sur le site WordPress de votre serveur de développement..
De nombreux clients FTP, éditeurs de code et IDE PHP (tels que PHPStorm et Eclipse) vous permettent de synchroniser vos modifications de code directement avec un serveur distant utilisant SFTP. En utilisant ces outils, vous pouvez rendre le développement encore plus rapide avec l'étape supplémentaire consistant à télécharger vos modifications pour les tests se déroulant automatiquement en arrière-plan..
Notez que l'URL SFTP de votre serveur de développement peut changer de temps en temps. Par conséquent, si vous êtes incapable de vous connecter, vérifiez les informations de connexion actuelles du tableau de bord et réessayez..
Comme exemple de cette approche, créons un thème enfant simple pour le thème par défaut, Twenty Sixteen. Comme il ne s’agit que de démonstration, nous garderons le thème super simple avec rien, mais un style.css
fichier qui modifie la couleur d'arrière-plan du site en rouge et un functions.php
fichier pour la mise en file d'attente de la feuille de style.
Sur votre ordinateur, créez un répertoire appelé vingt-seize ans
, et à l'intérieur, un fichier texte nommé style.css
.
À l'intérieur style.css
ajoutez le contenu suivant:
/ * Nom du thème: Twenty Seize Child Description: Un thème simple pour un enfant Template: twentysixteen Version: 0.0.1 Licence: Licence GNU General Public License version 2 ou ultérieure URI de la licence: http://www.gnu.org/licenses/gpl-2.0. html * / body background-color: # ff0000;
Ensuite, créez un functions.php
fichier avec le contenu suivant:
Ensuite, téléchargez le répertoire avec son contenu dans le répertoire de votre serveur de développement. ~ / code / wp-content / themes /
.
Maintenant, quand vous visitez le Apparence > Des thèmes écran sur l'administrateur WordPress de votre serveur de développement, vous verrez que le nouveau thème est maintenant disponible..
Allez-y et activez-le!
Lorsque vous visitez votre site de développement, vous remarquerez que son arrière-plan est devenu rouge, comme nous l'avons défini dans le fichier CSS du thème Enfant..
Vous avez maintenant téléchargé un nouveau thème enfant sur votre serveur de développement. Ensuite, pour vous assurer de ne pas perdre vos modifications et pour pouvoir les déployer sur le serveur de test, vous devez valider vos modifications dans le contrôle de version..
Lors du développement de votre site directement sur l'environnement de développement à l'aide de SFTP, il est essentiel de se rappeler qu'avant de valider les modifications apportées à Git sur votre tableau de bord Pantheon, elles ne sont pas stockées dans le contrôle de version. Donc, pour vous assurer de ne perdre aucun de vos changements importants, n'oubliez pas de vous engager souvent, même si vous n'êtes pas encore prêt à appliquer vos modifications à Test..
Dans l'onglet Tableau de bord de l'environnement de développement, vous remarquerez que certaines modifications non validées sont prêtes