FRFAM.COM >> Famille >> Technologie &Innovation >> Informatique

Tout ce que vous devez savoir sur les systèmes de gestion de contenu

Pour l'internaute moyen, la visualisation du contenu Web est simple. Vous ouvrez un navigateur, tapez une URL et voilà ! La page s'affiche. Mais à l'autre bout, il y a un logiciel qui travaille dur pour vous servir cette page. Et un grand nombre de ces serveurs exploitent des systèmes de gestion de contenu afin de créer et de diffuser votre contenu préféré.

Que se passe-t-il réellement lorsque vous "ouvrez" une page depuis un CMS ? Examinons les différentes parties des systèmes qui apportent du contenu à votre écran.

Le début du Web

Améliorations de l'hébergement Web

Tout ce que vous devez savoir sur les systèmes de gestion de contenu

À la fin des années 1990, lorsque le Web a commencé à prendre de l'ampleur, de nombreux composants permettaient aux utilisateurs d'accéder facilement leur contenu Web préféré. Les choses étaient passées de la récupération de pages Web directement à partir des serveurs d'hébergement à un système plus sophistiqué :

  • Accès plus facile à l'enregistrement du système de noms de domaine par le biais d'entités privées, ce qui a permis aux étiquettes arbitraires que nous connaissons désormais sous le nom de noms de domaine d'être associées à des adresses IP. Cela a permis aux utilisateurs de trouver facilement leurs sites préférés.
  • Le protocole HTTP (HyperText Transfer Protocol) a fourni une méthode standard pour envoyer des informations sur Internet. Cela valait la peine pour les particuliers et les organisations de rendre leur contenu disponible en HTML, afin que n'importe qui puisse le lire avec un navigateur compatible.
  • Des serveurs Web sont apparus, dont le but est d'attendre les demandes de pages Web et de renvoyer la page. Cela a permis aux administrateurs de faire évoluer et de sécuriser facilement leurs environnements d'hébergement.

Pendant ce temps, les navigateurs sont devenus disponibles gratuitement, les fournisseurs de services Internet comme AOL offraient un accès commuté illimité et les utilisateurs ont migré d'une communauté fermée (comme les systèmes BBS) vers un contenu Web ouvert. Mais malgré la demande d'informations, une partie de l'écosystème a tout de même souffert.

Lacunes dans la création Web

Le processus de création de tous ces premiers sites Web était toujours centré sur la création manuelle de pages en HTML. Cela entraînait souvent un style en ligne et beaucoup de codage très personnalisé, en particulier pour les sites "dynamiques" de l'époque (par exemple, le commerce électronique réalisé dans des langages comme Perl). De plus, le processus de publication un site Web nécessitait encore des connaissances techniques en matière de transferts FTP et d'hébergement Web.

Ensuite, davantage de contenu généré par les utilisateurs a commencé à apparaître sous la forme de sites de "profil" comme Yahoo et MySpace. Les services de blogs comme Blogger et LiveJournal sont allés plus loin, tandis que les "éditeurs de pages Web" de bureau ont permis de créer une page Web (de mauvaise apparence) sans connaître le moindre balisage. Ceux-ci ont inspiré les systèmes de gestion de contenu à usage général d'aujourd'hui, qui permettent aux utilisateurs de :

  • Créez de nouvelles pages avec une mise en forme enrichie.
  • Organisez les pages dans une hiérarchie de site.
  • Gérer les médias sur les pages, tels que les images.
  • Autoriser d'autres utilisateurs à interagir avec le site, jusqu'à la création de leurs propres pages.

Dans les sections suivantes, nous verrons précisément comment un CMS simplifie ces tâches.

Composants d'un CMS

Il existe plusieurs dizaines d'applications CMS disponibles aujourd'hui, mais la plupart d'entre elles ont en commun les éléments suivants :

  • Ils sont construits dans un langage de programmation/script particulier. Contrairement au HTML, qui n'est qu'un balisage , un langage de programmation permet aux pages Web d'effectuer des opérations telles que déterminer qui essaie de les utiliser ou récupérer des résultats en fonction d'une recherche.
  • Ils utilisent une base de données pour stocker le contenu des pages, les listes d'utilisateurs/mots de passe ou les entrées des soumissions de formulaires.
  • Ils utilisent un serveur Web. Il exécutera les fichiers de page (et leur programmation) et renverra le code HTML résultant au navigateur du visiteur.
Tout ce que vous devez savoir sur les systèmes de gestion de contenu

Nous examinerons chacun d'entre eux tour à tour ci-dessous.

Langages de programmation CMS

L'une des principales distinctions entre les différents CMS est le langage de programmation qu'ils prennent en charge. Les langages de programmation sont utilisés pour rendre le site "dynamique", c'est-à-dire exécuter des calculs ou toute autre logique. Ces opérations peuvent être aussi simples que d'afficher l'année en cours dans le copyright du pied de page pour ajouter et afficher des rapports numériques.

Il existe au moins un CMS pour tous les principaux langages de programmation Web, y compris :

  • PHP : WordPress, Drupal, Joomla
  • ASP.NET : DotNetNuke (DNN CMS), Umbraco
  • Python : Django, Plone
  • Java : Alfresco, Magnolia

Parmi ces langages (et d'autres), PHP est devenu le précurseur pour la création de systèmes de gestion de contenu pour plusieurs raisons. Premièrement, c'est open source, ce qui ne pouvait pas être dit de toutes les langues au départ. En conséquence, c'était une langue incluse gratuitement dans de nombreux plans d'hébergement bon marché où résident des sites plus petits. De plus, il s'agit dans la plupart des cas d'un langage facile à utiliser, permettant aux nouveaux utilisateurs de pirater leurs propres fonctionnalités sur leurs sites. Enfin, le serveur Web Apache a inclus PHP en tant que module dès le début. La configuration du premier serveur Web au monde a donc été simple et rapide.

Alors que d'autres langages ont progressé contre l'avance de PHP (.NET est désormais open source, par exemple), il faudra un certain temps avant qu'ils ne capturent une part de marché significative de WordPress.

Bases de données CMS

Le langage de programmation d'un CMS donné prend également en compte la ou les bases de données qu'il prend en charge ou dont il a besoin. PHP a un excellent support pour MySQL, bien que les CMS qui l'utilisent puissent souvent être également conçus pour fonctionner avec PostgreSQL ou SQLite. De même, DNN CMS prend en charge Microsoft SQL Server, tandis qu'Alfresco prend en charge les bases de données d'entreprise et compatibles Java telles qu'Oracle et db2. En fin de compte, la base de données que vous utilisez pour un CMS peut également être pilotée par tout ce que votre environnement d'hébergement fournit. Un compte d'hébergement pour votre blog mettra presque certainement MySQL à votre disposition, tandis que votre entreprise n'utilisera peut-être qu'Oracle.

Une base de données stocke l'essentiel du contenu de la plupart des CMS, à l'exception des fichiers de l'application (modèles de pages, modules complémentaires, etc.), des médias (images et vidéo) et de certaines configurations. Mais le texte d'une page donnée, ainsi que les chemins d'accès aux fichiers multimédias et l'URL où il se trouve, sont souvent stockés dans des tables de base de données.

Serveur Web CMS

Enfin, un CMS est une application web et nécessite donc un serveur web. Grâce à l'utilisation de divers modules, Apache peut prendre en charge les quatre langages mentionnés ci-dessus et plus encore. Les nouveaux serveurs Web gagnent en popularité, tels que nginx et lighttpd , prennent également en charge différents ensembles de langues via des modules complémentaires.

Le serveur Web va exécuter les fichiers du site. Ces types de fichiers (.PHP, .JSP, etc.) ne sont généralement que du balisage HTML avec du code de langage de programmation mélangé. Lorsque le serveur Web traite la page, il exécute tout code de programmation qu'il rencontre à l'aide de son module/add. -on pour cette langue. Au moment où il aura fini de traiter une page, le code de programmation aura été remplacé par une sorte de contenu convivial pour le navigateur.

Tout ce que vous devez savoir sur les systèmes de gestion de contenu

Si vous regardez attentivement ci-dessus, vous pouvez voir que le code aide réellement à construire la page en "obtenant" l'en-tête et le modèle de page. Pour compliquer les choses, un fichier peut appeler un ou plusieurs autres fichiers pour obtenir de l'aide. Alors que nous examinons certaines requêtes réelles adressées à un CMS dans les sections ci-dessous, gardez à l'esprit que l'exécution d'un "fichier PHP" peut en réalité impliquer l'exécution de plusieurs requêtes.

Un CMS en action

Le moyen le plus simple de décrire un CMS consiste à prendre quelques exemples d'opérations et à suivre les étapes de chacune. Comme dans l'illustration précédente, ces processus commencent par une demande de page et se terminent par le renvoi par le serveur Web d'un code HTML (et CSS/Javascript) au navigateur. Mais il y a quelques étapes intermédiaires que nous allons explorer ci-dessous, en supposant un CMS basé sur PHP.

Demander une page

L'interaction la plus élémentaire avec un CMS est un utilisateur régulier qui demande l'une de ses pages. Par exemple, prenez cet article sur MakeUseOf. Il a une URL, mais il n'y a pas de fichier réel dans un répertoire à cet emplacement. Lorsque le navigateur du lecteur demande une URL, le serveur Web exécute l'un des fichiers PHP du CMS, tel qu'un index.php fichier.

Tout ce que vous devez savoir sur les systèmes de gestion de contenu

La page PHP traite la demande en interrogeant la base de données pour la page CMS avec l'URL correspondante dans ses métadonnées (là encore, il n'y a pas de fichier réel à l'emplacement de l'URL). Il lira ensuite le contenu de la page (texte et graphiques ordinaires ainsi que les widgets) et les métadonnées (titre, quel modèle il utilise, etc.) à partir de la base de données, et renverra le code HTML de la page pour que le navigateur le rende. En bref, il utilise l'URL pour sélectionner quel enregistrement de page dans la base de données à utiliser.

Connexion

De la même manière, un utilisateur qui souhaite se connecter au site (par exemple pour afficher une page "réservée aux membres") devra fournir des informations d'identification. Lorsqu'ils tenteront de visiter la page en question, la base de données contiendra des autorisations indiquant que la page nécessite une connexion.

Tout ce que vous devez savoir sur les systèmes de gestion de contenu

En entrant un nom d'utilisateur et un mot de passe sur une page comme login.php , il interrogera la base de données pour le mot de passe du nom d'utilisateur fourni, effectuera la comparaison pour s'assurer qu'ils correspondent et renverra l'utilisateur à la page demandée, le cas échéant.

Tout ce que vous devez savoir sur les systèmes de gestion de contenu

Mettre à jour une page

La mise à jour d'une page dans un CMS nécessite généralement d'accéder à son écran d'administration, d'apporter des modifications au contenu de la page et de la réenregistrer/republier. Par exemple, WordPress contient la page wp-admin/post.php . Il vérifiera d'abord si l'utilisateur est connecté, et si c'est le cas, si l'utilisateur est un administrateur. Ensuite, il interrogera la base de données sur le contenu représentant la page que l'utilisateur souhaite modifier, en remplissant les contrôles d'édition tels que les zones de texte et les sélecteurs d'images.

Tout ce que vous devez savoir sur les systèmes de gestion de contenu

L'utilisateur peut interagir avec ces contrôles (par exemple, modifier le texte ou remplacer les images d'en-tête), en cliquant sur un bouton "Enregistrer" ou "Publier" une fois terminé. À ce stade, l'écran d'administration prendra les nouvelles valeurs remplies et les mettra à jour dans la base de données.

Tout ce que vous devez savoir sur les systèmes de gestion de contenu

Les CMS rendent la création Web accessible

Bien qu'il s'agisse d'applications complexes en interne, les CMS comme WordPress facilitent la création sur le Web pour les utilisateurs non techniques. Quelqu'un qui souhaite publier un blog simple peut s'inscrire à un compte d'hébergement bon marché, cliquer sur quelques boutons et avoir un CMS prêt à fonctionner en quelques minutes. Pour quelques dollars de plus, l'hébergeur peut même en gérer les mises à jour et la maintenance.

Hébergez-vous un site Web ou un blog sur un CMS particulier ? Avoir un système de gestion de contenu facilite-t-il votre travail ? Ou préférez-vous simplement télécharger du code HTML sur votre compte d'hébergement comme à l'époque ? Faites-nous savoir dans les commentaires si vous êtes un passionné de CMS ou un wrangler HTML à l'ancienne.


[]