LA CLOCHE

Il y a ceux qui ont lu cette nouvelle avant vous.
Abonnez-vous pour recevoir les derniers articles.
Email
Nom
Nom de famille
Comment voulez-vous lire The Bell
Pas de spam

Connectez-vous à la console d'administration à l'adresse http://www.site.com/admin en utilisant les informations de l'étape 4 du processus d'installation. Tout dans le panneau d'administration est accessible via le menu principal sous forme de blocs visuels, qui est dupliqué à gauche par navigation verticale, avec des éléments coulissants, comme un accordéon. Jetons un coup d'œil à ce qu'il y a ici.


Après nous être familiarisés avec tous les éléments de menu du panneau de configuration CMSMS, il est temps de revenir à la section Administration du site et analyser ses capacités plus en détail.

    • Paragraphe Réglages généraux se compose de plusieurs sous-sections.
    • Page par défaut. Fournit des options par défaut qui seront appliquées à toutes les nouvelles pages en tant que paramètres initiaux, tels que: le type de contenu par défaut, les métadonnées, les valeurs des attributs supplémentaires, l'affichage dans le menu, actif ou inactif (non affiché non seulement dans le menu, mais généralement sur le site), s'il faut utiliser le protocole HTTPS pour une connexion sécurisée, s'il est possible de mettre en cache. N'affecte en aucun cas les paramètres des pages existantes.
    • Entretien du système.Contient des fonctions très utiles qui peuvent être utiles à tout webmaster.
      Se compose de trois onglets: Base de données, cache et contenu, modifications.Made Simple vous permet de gérer votre base de données: optimiser et réparer les tables. À État de la base de données indique le nombre de tables trouvées, lorsqu'aucun problème n'a été identifié, un message s'affiche Aucune erreur structurelle n'a été détectée dans la base de données.
      Souvent, lorsque vous apportez des modifications au site, vous devez vider le cache. Utilisation d'un onglet Cache et contenucela peut être facilement fait via le panneau d'administration CMSMS. Sous-section Statut du contenuaffiche le nombre de pages trouvées et vous permet de mettre à jour les positions de la hiérarchie des pages.


      Changements afficher les nouveautés des dernières versions du système.
    • Informations système. Cette section recueille des informations sur les installations CMS Made Simple telles que les modules installés, les informations de configuration, les informations PHP, les informations sur le serveur et les informations d'autorisation. L'objectif principal est d'aider à diagnostiquer les problèmes potentiels afin que vous puissiez voir immédiatement tous les paramètres du système.
    • Controle du système.Sa fonction principale est de rechercher des fichiers qui peuvent avoir été modifiés par une compromission du système ou d'autres problèmes qui se sont produits. Tout d'abord, vous devez télécharger le fichier de somme de contrôle - cela se fait généralement immédiatement avant le lancement du site ou après des modifications importantes (mises à jour). Cliquez sur l'élément du bas Chargez la somme de contrôle du fichier.Puis sélectionnez l'élément Inspecteret spécifiez le fichier téléchargé. Cette fonction comparera les sommes de contrôle du fichier téléchargé avec les fichiers de l'installation actuelle. Si tout est en ordre, le système affichera un message - Toutes les sommes de contrôle correspondent aux fichiers téléchargés.
      Journal de l'administrateur.Enregistre les détails des actions des utilisateurs effectuant des tâches de maintenance sur le site.

CMS est une abréviation des premières lettres majuscules anglaises reconnues par le système de gestion de contenu anglais. En russe, il est traduit comme un système de gestion de contenu et est destiné à l'édition et à la gestion du contenu des informations sur le site.

Des didacticiels vidéo sur ce sujet vous aideront à apprendre à créer et à modifier des sites sur des moteurs populaires, ainsi qu'à travailler avec leurs composants, extensions et plugins. Aujourd'hui, sur les moteurs gratuits les plus populaires tels que WordPress, Joomla, des sites Web de différents sujets sont créés. Toute personne qui le souhaite peut étudier un moteur de site donné, et des cours vidéo de formation et une série de leçons vidéo sur son utilisation peuvent vous aider.

Vous pouvez vous familiariser avec les leçons de l'auteur sur l'utilisation des moteurs et entendre ses opinions. Les auteurs vous expliqueront en subtilités et montreront dans les leçons comment configurer correctement un certain CMS en fonction de vos besoins pour le bon fonctionnement de votre projet Web. Vous pouvez apprendre à créer gratuitement vos propres boutiques en ligne et à configurer des vitrines virtuelles pour vos visiteurs. Aujourd'hui, le système de gestion de contenu occupe une position de leader dans le travail avec des sites de toute complexité et orientation.

Wordpress

Ce système de gestion de contenu se positionne comme la maintenance d'un site de blog pour des tâches simples. Elle a une grande popularité en tant que travail dans le domaine des blogs. Mais avec beaucoup de plugins, ce CMS est devenu très populaire et aujourd'hui il devient multifonctionnel. Les projets multifonctionnels et les boutiques en ligne sont créés à l'aide du moteur WordPress. Vous pouvez en savoir plus sur la façon de travailler avec CMS WordPress dans des didacticiels vidéo et des cours.

Joomla

Ce moteur était à l'origine destiné aux sites d'articles. Pour augmenter la fonctionnalité, il était nécessaire d'installer des extensions supplémentaires et de passer à un nouveau niveau. Maintenant, la popularité du moteur est très grande et de nombreuses personnes qui apprennent CMS Joomla créent leurs propres sites professionnels. À partir des leçons et des cours présentés sur notre portail de formation, vous pouvez apprendre à travailler avec ce moteur.

Tutoriels vidéo CMS

Tutoriels vidéo sur l'un des CMS (systèmes de gestion de contenu), vous pouvez étudier gratuitement et sans inscription. Et téléchargez également les leçons ou les cours que vous aimez sur votre ordinateur. Étudiez la construction de sites et devenez un webmaster professionnel. Nous vous souhaitons beaucoup de succès et mettons en pratique les connaissances acquises.

Combien de mecs drôles
Et tout le monde fait du vélo.
Et l'un d'eux un matin
Vient avec de la poudre à canon.
Viktor Tsoi.

Au début, je voulais écrire un article dans la section "Je suis PR" sur ce que je suis un bonhomme et quelle chose merveilleuse j'ai fait, mais après une petite recherche sur le net, j'ai trouvé sans surprise que je n'étais pas du tout le seul de mon genre. Ensuite, j'ai décidé d'aller de l'inverse: probablement presque tous les programmeurs Web essaient d'écrire un CMS à part entière au moins une fois dans sa vie. Dans le même temps, pendant le processus de conception (et ce processus, souvent, se produit déjà lors de l'écriture du code), le développeur aura certainement des questions. Avec ces questions, il se tourne vers les moteurs de recherche et accède aux sites de ceux qui ont déjà traversé des râteaux similaires.

Alors, j'ai commencé à regarder ce que me demandaient les "concepteurs de vélos" novices, et j'ai essayé de mettre en évidence certaines choses qui n'étaient pas évidentes pour moi au début du travail.

1. MVC est notre tout!

Partout où se déroule la conversation sur le développement d'applications Web, l'abréviation à la mode MVC (Model-View-Controller) apparaît immédiatement. Cette approche dit que l'interface doit être séparée de la logique et la logique des données. Je ne dirai pas que je suis pleinement imprégné de ces idées, mais le fait que les changements de design (ou même de design) ne doivent pas affecter la logique du code - je suis prêt à défendre avec de la mousse à la bouche :)

C'est là que réside le râteau numéro un: l'apparence doit être séparée de la logique du programme. Comment faire - chacun décide pour lui-même. Sur ce problème, pas mal de copies ont été cassées: il existe différents moteurs de template, et des transformations xslt, et juste php + html pris dans des fichiers séparés. Le choix est large, mais la «solution miracle», comme d'habitude, n'existe pas: la flexibilité réside d'un côté de l'échelle et la clarté de l'autre. Même Smarty, avec sa «programmation pour les plus petits», semble difficile à de nombreux utilisateurs. Donc, si nous nous concentrons sur un utilisateur qui veut mettre le système "hors de la boîte" et le classer pour ses besoins avec un minimum de connaissances en programmation, alors cela vaut la peine de se casser la tête.

En outre, les conceptions doivent être remplaçables et éventuellement même à la volée. Autrement dit, vous devez prévoir leur stockage et leur édition pratiques. Et encore une chose que beaucoup ont ignorée: le design doit être facile à modifier et à mettre à jour. Si vous deviez adapter la conception d'un forum gratuit composé de deux cents modèles dans lesquels tout est cloué avec des tableaux et des morceaux de JavaScript sont insérés de quelque part «à partir de la logique», alors vous comprenez exactement ce que vous ne voulez pas voir.

J'ai imaginé cette construction: dans la conception personnalisée, il n'y a que ce qui n'est pas dans la conception de base. Autrement dit, dans le cas le plus minimaliste, le design se compose d'un catalogue vide avec le nom du design. Il est clair que dans ce cas, le design aura exactement le même aspect que celui de base, car toutes les pièces manquantes lui seront empruntées, mais comme point de départ, c'est très pratique. Si css apparaît dans la conception, le système y bascule automatiquement (alors que le html est toujours emprunté à celui de base). C'est la même chose avec JS. Ce que nous obtenons avec ceci: le design de l'utilisateur ne contient que les fichiers qu'il a lui-même créés. L'utilisateur n'a pas besoin de se souvenir du fichier qu'il a corrigé et de celui qu'il a simplement copié de la conception de base au début du travail. Le site affiche également presque toutes les innovations de la conception de base sans modifier la conception personnalisée. Un tel système m'a paru pratique et logique, bien que pour certains, il semble quelque peu inattendu. Que ce soit pour l'adopter ou pour créer le vôtre, vous décidez.

2. Structure du site

Commençons à écrire le noyau. Que doit faire le noyau? Et il devrait faire tout le «sale» travail: déterminer les paramètres du site, les droits et les paramètres des groupes d'utilisateurs, les modules utilisés, les modèles, les paramètres de mise en cache, la localisation, etc. Autrement dit, au moment où les plugins commencent à fonctionner, ils peuvent obtenir toutes les informations qui les intéressent du noyau. Cela semble effrayant, mais tout cela est relativement facile à écrire et à travailler, si vous comprenez clairement l'interaction des éléments.

J'ai décidé moi-même que le site ne serait pas un tas de pages sauvegardées quelque part dans la base de données, mais une hiérarchie stricte. En conséquence, la structure du site est arborescente et les parties manquantes, comme dans le cas des conceptions, sont héritées des parents. La structure des groupes d'utilisateurs est également arborescente - les droits et les paramètres sont également hérités des parents. Les fichiers et modules de localisation ont également une hiérarchie simple. Une hiérarchie claire a permis de transférer toutes sortes de choses désagréables vers le moteur, comme la génération automatique d'un plan du site, divers menus, la répartition des droits (oui, pour donner le droit à quelque chose à plusieurs groupes, il n'est pas du tout nécessaire d'éditer chacun - il suffit de définir la hiérarchie), etc. Vivez et réjouissez-vous! Et tout irait bien sans le râteau:

Le premier râteau. Mise en cache.
Pendant que je concevais mon "méga-moteur", ce n'était pas à la hauteur de la mise en cache ... Et vous pensez - qu'est-ce qui est si difficile? J'ai mis la page dans une variable, l'ai sauvegardée dans un fichier et l'ai montrée la prochaine fois à partir de là. Business ... à tout moment, vous pouvez joindre! Oh ... et nous avons une autre page pour les utilisateurs enregistrés ... Hmm ... eh bien, pensez-y - nous allons enregistrer deux pages dans le cache! Et dans l'en-tête, vous devez afficher "bonjour, Vasya" ... eh bien, ce fragment dans l'en-tête ne doit pas être mis en cache. et le même fragment au sous-sol ... et au milieu ... Hmm ... J'ai encore besoin de mettre en cache différentes parties de la page pour différentes périodes ... Nous nous asseyons et réécrivons le moteur et le système de mise en cache pour la mise en cache dans des blocs - afin que chaque bloc ait sa propre durée de vie.
Le deuxième râteau. Mise en cache.
Comment?! De nouveau en cache? Nous avons déjà tout fait à merveille! Eh bien, oui ... c'est fait ... et cela a même fonctionné jusqu'à ce que la tâche soit de générer du contenu pour chaque utilisateur en fonction de ses paramètres personnels. Dans le même temps, la taille du cache augmente avec la vitesse d'un chasseur à réaction, et son contenu devient obsolète beaucoup plus tôt qu'il ne sera à nouveau demandé. Au lieu d'accélérer le site, nous obtenons son ralentissement, et des gigaoctets de pages cachées inutiles ... Le script principal du site est l'invalidateur de cache "sa majesté". Hmm ... réécrire à nouveau le moteur: cette fois, nous allons implémenter la mise en cache au niveau des requêtes à la base de données, car c'est le goulot d'étranglement des performances. Réécrit ... tout est nirvana.
Le troisième râteau. Mise en cache.
Vous regardez votre création et vous vous sentez complètement idiot: au lieu de sauvegarder la page entière, je la crée à chaque fois. Mais la mise en cache a été conçue avec précision pour le contraire! Comment ai-je éclaté comme ça?

Le résultat final est que certains modules sont mis en cache par bloc et d'autres en cache de requête. Cela a permis pendant des mois de stocker dans le cache des éléments rarement modifiés comme, par exemple, le menu du site.

La leçon que j'ai apprise pour moi-même est la suivante: le système doit être initialement conçu de telle manière qu'à certaines étapes de l'exécution, il a regroupé des données qui peuvent être facilement mises dans le cache ou extraites de là. De plus, le système de mise en cache ne doit pas être strictement lié au moteur, car aujourd'hui, il suffit amplement de stocker le cache dans des fichiers, et demain (ou même ce soir) commencer à travailler avec le serveur Memcache.

Dans le processus d'écriture d'un moteur, il est également logique de lire un livre astucieux sur le refactoring ... ou de le lire après avoir écrit le moteur. Dans tous les cas, les trois (vous, le moteur et le livre) peuvent en bénéficier.

3. Modularité.

Il est difficile d'imaginer un système moderne comme une «chose en soi» - il doit avoir des interfaces pour étendre ses fonctionnalités. Ainsi, nous passons à la partie la plus délicieuse des modules d'écriture CMS. Il y a aussi beaucoup de questions ici: à quoi devrait ressembler le module, comment se connecter au système, etc.
Dans certains systèmes, l'appel aux modules est codé en dur dans le noyau du système, donc si vous voulez écrire un module ou en installer un tiers, allez dans le code source, armez-vous du manuel d'installation et écrivez les appels appropriés dans le code. Malgré toute l'idiotie de l'approche, de nombreux systèmes fonctionnent exactement comme ça. Il existe une variante de cette solution: chaque module est un fichier séparé dans un répertoire. Dans ce cas, nous avons non seulement la nécessité d'écrire le module dans le noyau, mais également de l'exécuter en tant que fichier unique. Il y avait aussi des options avec des templates actifs: c'est-à-dire qu'ils entraient (module_name) dans le template et lorsque l'analyseur atteignit cette balise, le module module_name est appelé pour exécution, dont le résultat est à la place de la balise. Peut-être que cette méthode est pratique, mais dans ce cas, nous n'avons pas seulement séparé la logique de la représentation, mais bien au contraire, nous les avons mélangées à fond.

Après un certain nombre de bosses, je suis arrivé à un système qui, peut-être, n'est pas un exemple de brièveté et de simplicité, mais je pense que c'est assez pratique. Chaque module est un répertoire séparé à partir duquel le noyau n'appelle qu'un seul fichier (index.php). Ce fichier peut à la fois afficher "Hello world!" Et inclure des fichiers de contrôle pour le quasi-émetteur de l'hyperespace - ce sera pratique pour le développeur du module. Le même répertoire contient un fichier xml avec une description des paramètres du module, des réglages possibles et du système de droits. Ce fichier est utilisé pour que le système puisse ajouter des modules par lui-même et ne pas transmettre ce mal de tête à l'utilisateur: cliqué sur le bouton «installer le module» - veuillez l'obtenir.

Nous avons compris l'installation. Un nouveau problème se pose - comment ne pas permettre à l'utilisateur de placer sur la même page, par exemple, un album photo et, par exemple, un forum? Il est inutile de s'appuyer sur le bon sens, par conséquent, le typage des modules est nécessaire. Il ne peut y avoir qu'un seul module de ce type (j'ai vu quelque part le concept de "composant" pour de tels modules), il ne peut y en avoir qu'un sur la page.

Eh bien, il n'y aura qu'un seul composant sur la page, mais il peut y en avoir beaucoup d'autres - dans quel ordre doivent-ils être connectés? Après tout, il serait idiot que le module de certains skins change, qui à la fin de son travail transfère l'utilisateur vers la page principale du site, se connecte après que le module d'analyse de la dynamique du nombre de lapins pendant la saison des amours ait fonctionné - et nous ne verrons pas les résultats de l'analyse, et nous passerons du temps sur les calculs ... Par conséquent, les modules doivent avoir un ordre spécifié de leur connexion.

Certaines personnes introduisent pour cela un analogue du niveau d'exécution nix, où pour chaque module il est nécessaire de s'enregistrer entre quels modules il doit être connecté. En tant qu'utilisateur, cette décision m'a plongé dans la confusion, mais en tant que développeur, je suis arrivé à presque la même chose: les modules sont divisés en trois grands groupes. L'un des groupes est le "composant" déjà mentionné, les deux autres ne diffèrent que par le fait que les modules d'un groupe sont connectés avant le composant et l'autre - après. De plus, j'ai caché cette séparation à l'utilisateur, de sorte que pour lui il n'y avait que «composant» et «juste un module».

Donc, le module a été conçu, nous avons décidé de la connexion ... Il nous faut maintenant décider comment le configurer et comment y accéder. Et ici, tout est simple: puisque notre noyau est destiné au travail "sale", alors laissez-le mal à la tête - le module en xml a publié une liste de paramètres, et laissez le noyau l'analyser, le stocker et le fournir sur demande - c'est tout. juste.

Un autre problème que j'ai rencontré pendant le développement est le transfert de données entre les modules. Selon les termes du problème, ils ne savent rien l'un de l'autre et sont appelés par le noyau dans l'ordre des nombres. Mais je veux transmettre des nouvelles d'un module à l'autre! Pour ce faire, j'ai introduit une classe spéciale pour les variables globales, où chaque module peut sauvegarder quelque chose en mémoire à ceux qui viennent après lui. Voici une solution peut-être pas très élégante.

4. Mises à jour

Vous voulez toujours avoir la dernière version, mais faites un minimum de mouvements corporels pour cela. D'où la volonté d'automatiser le processus de mise à jour. Et là encore, il y a un zoo de solutions, certes peu étendues, mais néanmoins. Les plus progressifs suggèrent de définir 777 autorisations sur tous les répertoires, et 666 autorisations sur les fichiers, puis "le script fera tout par lui-même". Que ce soit une faille de sécurité de la taille du Grand Canyon n'a pas vraiment d'importance.

J'avais des idées sur deux options: le script télécharge les mises à jour dans un répertoire temporaire, puis, après avoir demandé à l'utilisateur les paramètres d'accès FTP, se met à jour. Il n'a donc pas besoin de donner des droits supplémentaires, et tout se passe automatiquement, et les mises à jour sont chassées dans le serveur ... il vous suffit de demander à l'utilisateur les paramètres d'accès FTP à chaque fois, ou de les stocker directement sur le site ... c'est-à-dire tous les œufs en un panier. Par conséquent, j'ai préféré une autre option: l'utilisateur télécharge lui-même les mises à jour (archive ou via svn), les télécharge sur le site, et le code sur le site, sentant qu'il est devenu "plus récent", apporte les corrections nécessaires à la base de données et / ou aux paramètres ... Mais la première option restait plus belle ... mais je n'ai pas osé.

Ce sont les jalons les plus mémorables de ma «construction de vélos». En lisant ceci, je regrette vraiment qu'au début de mon travail je n'ai pas rencontré quelque chose comme ça, et moi-même je n'avais pas assez d'expérience et de bosses pour poser les «bonnes» questions. Ce avec quoi j'ai fini, c'est toi

La tâche de créer un système de gestion de contenu (CMS) peut être déroutante pour un nouveau développeur PHP. Mais le diable n'est pas si terrible qu'il est peint! Dans cette série de tutoriels, nous allons créer un système simple mais entièrement fonctionnel à partir de zéro.

Au cours du processus, vous apprendrez à créer des bases de données et des tables MySQL, à travailler avec des objets, des constantes, des inclusions, des sessions et d'autres outils PHP. De plus, nous vous montrerons comment séparer la logique d'application de la présentation et rendre le code PHP plus sécurisé. Et vous découvrirez également beaucoup plus utile pour créer votre propre système de rêve.

Vous pouvez voir le travail de l'application terminée sur la page de démonstration (pour des raisons de sécurité, le mode "lecture seule" est activé, vous ne pourrez donc pas ajouter, modifier ou supprimer des articles). Vous pouvez également télécharger le code PHP complet de notre petit CMS avec des commentaires traduits.

Remarque: pour étudier le matériel des leçons, vous aurez besoin d'un serveur Web Apache avec le module PHP installé et d'un serveur MySQL. Pour travailler sur un ordinateur local, vous pouvez utiliser l'un des outils de développement Web: XAMPP (en anglais), Denwer, Open server ou autres.

Note de sécurité

Dans de vrais projets, il est préférable de placer config.php quelque part en dehors du répertoire racine du site Web, car le fichier contient les noms et les mots de passe. Habituellement, le code PHP ne peut pas être affiché dans un navigateur, mais parfois en raison d'une configuration incorrecte du serveur Web, le code devient disponible. Vous pouvez utiliser la fonction hash () pour hacher les mots de passe et stocker les hachages dans config.php au lieu des mots de passe en texte brut. Ensuite, lors de l'enregistrement d'un utilisateur, vous pouvez à nouveau utiliser la fonction hash () pour encoder le mot de passe saisi et comparer le résultat avec le hachage stocké dans config.php.

Dans la prochaine leçon, nous allons construire la classe principale de notre application - Article.

En tant que véritable CMS ou simplement en tant que plateforme de blog. À présent, la controverse s'est résolue d'elle-même, car WordPress a montré ses fonctionnalités dans un ensemble assez vaste de sites Web diversifiés, allant de simples brochures de plusieurs pages aux réseaux sociaux à part entière (en utilisant des plugins comme BuddyPress).

Il existe des milliers de thèmes disponibles pour une utilisation dans WordPress, des milliers de plugins et de widgets qui étendent ses fonctionnalités. WordPress dispose également d'une communauté de développeurs active qui génère des tutoriels et du matériel d'information sur tous les aspects de l'utilisation de ce CMS.

Un site WordPress peut être transformé en réseau social, forum, boutique en ligne et bien plus encore à l'aide de plugins et de thèmes. Il a une fonctionnalité de blog intégrée, il est également possible de créer plusieurs sites en utilisant un seul noyau du système.

Forces

  • Vaste communauté de développeurs avec une documentation et des didacticiels bien développés.
  • Des plugins et des thèmes gratuits et commerciaux qui ouvrent la possibilité de réaliser presque toutes les idées de site Web.
  • Panneau de commande pratique pour le contenu et l'apparence.

désavantages

  • Système complexe pour sites simples
  • L'installation par défaut est vulnérable aux attaques
  • Il n'y a pas de support officiel en dehors des forums, où vous risquez de ne pas obtenir de réponse à votre question.

Gratuit, utilise PHP

Utilisé par plusieurs sociétés bien connues comme CMS de leurs sites, tels que MTV, Harvard University et IHOP. Il convient également comme base d'un réseau interne, par exemple utilisé par Citibank.

Joomla! a une longue histoire de développement et une communauté active de développeurs (plus de 200 000 utilisateurs et participants actifs), il est donc assez facile de trouver des informations et des leçons sur ce système. Il existe également un grand nombre de plugins et d'add-ons pour Joomla!, Donc l'extension des fonctionnalités ne nécessite pas de codage.

Malgré le grand nombre de thèmes Joomla !, la qualité de la plupart d'entre eux est inférieure à celle des thèmes WordPress.

Forces

  • L'authentification des utilisateurs peut être effectuée à l'aide d'OpenID, de Google, de LDAP et de nombreuses autres méthodes.
  • Plus de 7000 extensions
  • Communauté active d'utilisateurs et de développeurs, beaucoup de documentation disponible.

désavantages

  • Le panneau de contrôle n'est pas aussi simple que celui des autres CMS.
  • Comparé à d'autres CMS, moins de thèmes de haute qualité.

Gratuit, utilise PHP

Un autre CMS populaire utilisé par des sociétés bien connues telles que New York Observer, Popular Science, MIT, Sony Music, Fast Company. Il dispose d'un large éventail de fonctions pour créer des sites internes et externes, ainsi que d'un vaste ensemble d'outils pour organiser le contenu.

Drupal a une communauté d'utilisateurs et de développeurs très active, avec un grand nombre de canaux IRC et de forums disponibles. Il existe même des conférences dédiées à Drupal. Il existe également une documentation générée par la communauté qui est constamment mise à jour et améliorée. Vous trouverez ici des réponses aux questions sur l'installation, la construction de sites et de modules, le développement de thèmes, etc.

Il existe plus de 6 000 add-ons («modules») qui facilitent l'extension des fonctionnalités de Drupal. De cette façon, vous pouvez vous concentrer sur la création de design et de contenu, plutôt que sur le codage de fonctionnalités spécifiques.

Forces

  • Excellent support communautaire pour les utilisateurs et les développeurs, y compris les canaux IRC et les conférences.
  • Plus de 6000 modules pour faciliter l'extension des fonctionnalités de Drupal.
  • Un grand nombre d'entreprises proposant un support commercial pour les sites Drupal.

Faiblesses

  • Peut être accablant pour les sites simples.
  • Manque de thèmes gratuits et commerciaux de haute qualité.
  • La structure du sujet est assez complexe.

99,95 $ à 299,95 $ selon la licence, PHP est utilisé

Un hybride intéressant de logiciels commerciaux et gratuits. Le code principal du noyau ExpressionEngine est construit sur CodeIgniter, qui est un environnement d'exécution PHP gratuit. Mais l'aspect commercial du CMS signifie que les développeurs et le support technique se concentrent exclusivement sur ExpressionEngine.

ExpressionEngine n'a pas autant de modules complémentaires et de plugins que les autres CMS. Il n'y a que 22 modules et un peu moins de 100 plugins officiels. Mais ils couvrent la plupart des fonctions couramment utilisées comme le wiki, le forum, la gestion des utilisateurs, les listes de diffusion, le commerce électronique, les statistiques et autres. Il existe également des plugins non officiels qui étendent les fonctionnalités du CMS. Mais l'ensemble des fonctionnalités intégrées dans ExpressionEngine est impressionnant en soi.

Forces

  • Support commercial
  • Axé sur la sécurité, manquant la plupart des problèmes dans ce domaine.

désavantages

  • Prix \u200b\u200bélevé, en particulier pour les sites commerciaux.
  • Peut être accablant pour les sites simples.
  • Il n'y a pas de démonstration interactive disponible avant d'acheter le système.

Gratuit, utilise PHP

Probablement le CMS le plus négligé. TextPattern est un CMS très flexible, bien qu'il soit très facile à utiliser tant pour le concepteur que pour le développeur. Il utilise un système de balisage pour gérer le contenu. TextPattern utilise Textile pour convertir le texte en code XHTML correct, ce qui facilite grandement le travail des utilisateurs mal formés.

TextPattern n'a pas autant de thèmes et de modèles que WordPress, Drupal ou Joomla! Il y a un peu plus de 120 thèmes disponibles. Des thèmes sont également fournis pour le panneau d'administration afin de le personnaliser pour une utilisation par les auteurs de contenu du site.

Contient environ 700 plugins et 50 modules pour TextPattern. Les catégories de plugins incluent les galeries d'images, la navigation, le commerce électronique, les champs personnalisés, les archives, etc. Les modules et plugins étendent considérablement les fonctionnalités de TextPattern et peuvent le transformer en un CMS plus puissant.

Forces

  • Interface très simple
  • Idéal pour les sites de toutes tailles.
  • Excellente documentation, y compris des tutoriels en ligne.

désavantages

  • Petite communauté de développeurs
  • Beaucoup moins de plugins que les CMS populaires.
  • Peu de thèmes de haute qualité.

Contao (anciennement TYPOlight)

Gratuit, utilise PHP

Possède une interface utilisateur qui utilise Ajax et d'autres fonctionnalités Web 2.0 pour améliorer la convivialité. Il dispose de fonctionnalités avancées d'édition de contenu, y compris l'édition de plusieurs entrées en même temps et la restauration à une version précédente.

Contao a également plusieurs modules intégrés. Le module de calendrier prend en charge plusieurs calendriers avec différents événements et combinés avec RSS ou Atom. La liste de diffusion intégrée prend en charge les formats de courrier électronique HTML et texte brut. Vous pouvez importer une liste d'adresses de destinataires à partir d'un fichier CSV et personnaliser les e-mails. Le module d'actualités / blog intégré prend en charge les catégories, les archives, les articles en surbrillance, les commentaires et est intégré à RSS ou Atom. Il existe également de nombreux modules complémentaires disponibles qui étendent considérablement les fonctionnalités de Contao.

Il existe très peu de thèmes premium et gratuits disponibles pour Contao. Mais cette situation ne sera pas un obstacle pour un concepteur qui envisage de créer un site Web à partir de zéro, puisque Contao dispose d'une bibliothèque CSS intégrée.

Forces

  • Il n'y a aucune restriction sur la conception du site Web.
  • Facile à apprendre pour les auteurs et les éditeurs de contenu.
  • Bons modules intégrés.

désavantages

  • Il existe très peu de thèmes CMS disponibles.
  • L'outil de personnalisation est plutôt maladroit et mal pensé.
  • En raison de la présence d'un outil d'administration médiocre, il convient aux petits sites et à un petit nombre de pages.

Gratuit, PHP est utilisé

Un CMS open source idéal pour les développeurs et les concepteurs qui maîtrisent le codage. Il existe des recettes et des leçons pour les développeurs novices, un grand ensemble de modules pour diverses fonctions (blog, formulaires, forum, etc.). Les concepteurs peuvent utiliser leur propre code HTML et CSS lors de la création de sites Web. Les modèles multi-pages sont également pris en charge.

SilverStripe est également un outil puissant pour gérer le processus d'édition du contenu de votre site Web. Vous pouvez définir votre propre processus d'approbation pour les matériaux, publier et dépublier des articles à des dates spécifiques, définir différents niveaux d'accès. Un tel système peut être très utile si le site compte de nombreux auteurs, pour lesquels l'accès n'est limité qu'à certaines sections.

SilverStripe dispose d'une large communauté d'utilisateurs et de développeurs. En outre, vous pouvez trouver un soutien commercial auprès de diverses entreprises du monde entier.

Forces

  • Un excellent système pour différencier l'accès aux sections du site.
  • Les concepteurs peuvent utiliser HTML et CSS lors du développement de sites Web.
  • Le développement est basé sur du code open source.

désavantages

  • Tout n'est pas intuitif dans le panneau des paramètres.
  • Il n'y a qu'environ 150 extensions / modules disponibles.
  • Peu de thèmes de haute qualité sont disponibles.

Gratuit, utilisé par .NET

Donne au concepteur un contrôle total sur le processus de création du site Web. Il existe un ensemble de coques de démarrage qui simplifie le processus de maîtrise du système. Il est également facile d'intégrer du contenu Flash Silverlight dans votre site. Il existe de nombreux sites bien connus construits sur Umbraco, tels que Heinz et ABBA.

Umbraco facilite la gestion de votre contenu en utilisant les vues arborescentes de votre site. Les numéros de version, le calendrier de publication et l'aperçu des matériaux sont pris en charge. L'un des avantages d'Umbraco est son excellente gestion du contenu créé dans Microsoft Word, ce qui peut être un facteur décisif pour les utilisateurs qui utilisent Microsoft Office dans leur travail.

Umbraco est une API ouverte qui permet aux développeurs d'accéder facilement à diverses fonctions du système.

Forces

  • Tutoriels gratuits et payants pour l'assistance.
  • Système puissant pour les sites Web et les solutions intranet.
  • API ouverte

désavantages

  • Les principaux add-ons sont payés.
  • Il n'y a pas de démonstration du système.
  • Il n'y a pas de thèmes vraiment complets pour le site Web.

Gratuit, utilise PHP

Ce n'est pas seulement un CMS puissant, mais aussi un environnement de travail pour la création d'applications Web. Le développement de sites Web peut être effectué à différents niveaux. vous pouvez commencer avec un thème, puis modifier les styles sans affecter votre code. Ou vous pouvez créer votre propre thème en utilisant HTML et CSS. Si vous n'avez aucun problème à modifier PHP, vous pouvez créer un modèle personnalisé.

Un des avantages de concret5 est l'éditeur de contexte. Les développeurs ont essayé de reproduire la fonctionnalité d'un traitement de texte, ce qui facilite l'édition des pages lors de la visualisation. Le résultat est un outil très simple d'utilisation qui permet à des personnes éloignées de la programmation de gérer le contenu du site.

La communauté des développeurs concrets5 se développe plus rapidement que les autres. Il existe de nombreux thèmes et modules complémentaires avec support.

Forces

  • Conversion facile du site HTML en béton5.
  • Une communauté active et croissante d'utilisateurs et de développeurs.
  • Il existe un hébergement de qualité professionnelle qui offre la maintenance du site Web.

désavantages

  • De nombreux plugins intéressants sont chers.
  • Presque tous les meilleurs thèmes sont payés.
  • Le support payant est cher si vous n'utilisez pas leur hébergement (à partir de 125 $).

LA CLOCHE

Il y a ceux qui ont lu cette nouvelle avant vous.
Abonnez-vous pour recevoir les derniers articles.
Email
Nom
Nom de famille
Comment voulez-vous lire The Bell
Pas de spam