La Gestion de Contenu Simplifiée
CmsMadeSimple 1.11 : la traduction
Tandis que Cms Made Simple sort déjà sa seconde bêta, nos équipes ont décidé de vous fournir une traduction totale de l'annonce initiale de cette version OneEleven. Merci à Airelibre et à Jissey pour leur efforts de traduction.
Sortie de CMSMS 1.11 Bêta
Note : ceci est une traduction libre de l’actualité initialement soumise par la communauté anglophone que vous pouvez retrouver ici : http://www.cmsmadesimple.org/2012/06/Announcing-CMSMS-1-11-beta/
L’équipe de développement de CMS Made Simple est ravie d’annoncer la sortie en Bêta de la prochaine version majeure de CMSMS : la version 1.11. Cette version apporte de nombreux et importants changements. Si vous êtes un développeur de modules, participer au programme de test sera non seulement bénéfique pour la communauté, mais sera également un bon exercice pour vous afin de comprendre les nouveautés et améliorations. En particulier, les développeurs de modules gérant des types de contenus spécifiques sont particulièrement encouragés à participer à la Bêta (pour tester les changements dans la classe de contenus décrits ci-dessous). Ainsi, vous pourrez être sûr de produire une version de vos modules compatibles avec la version finale de CMSMS 1.11 dès sa sortie.
Nous invitons tout le monde à tester cette Bêta sur le long terme, et à commencer à développer des sites de test avec. Cependant, nous ne pouvons apporter de support aux personnes décidant d’utiliser cette Bêta en production. Ainsi, afin de ne minimiser le stress et les risques pour vous, pour la communauté et pour l’équipe de développement, merci d’utiliser cette version uniquement à des fins de tests.
Le programme Bêta est prévu pour durer jusqu’au 21 juillet environ, en fonction des résultats des tests. Durant cette Bêta , nous diffuserons différentes versions en fonction de la correction des bugs importants (mais non des bugs mineurs).
Merci de prendre en considération que la phase Bêta n’est pas là pour recevoir de nouvelles fonctionnalités. Aucune nouvelle fonction ne sera ajoutée dans CMSMS 1.11 depuis l’entrée en phase Bêta . Bien que nous prenons en considération vos commentaires et avis, tous les “problèmes” ne seront pas forcément résolus. L’équipe de développement se réserve le droit de choisir au final quels problèmes seront à régler en priorité (et comment les attribuer). Un forum spécifique a été ouvert (http://forum.cmsmadesimple.org/viewforum.php?f=79) pour que vous puissiez remonter les bugs de cette Bêta , et ce forum sera très suivi par l’équipe de développement pour qu’elle puisse tester, reproduire, suivre et fermer les problèmes remontés. Vous devez donc utiliser ce forum pour reporter les soucis rencontrés car c’est là qu’ils seront traités. L’autre canal pouvant également être utilisé pour rapporter les bugs est le canal IRC #cmsms-beta, qui peut vous servir à échanger avec l’équipe de développement à propos des bugs de cette Bêta . Nous attendons vos commentaires et avis avec impatience !
Voici maintenant un tour des changements majeurs
Smarty 3
Le plus gros changement dans CMSMS 1.11 est l’intégration de Smarty en version 3. Cette nouvelle version de Smarty apporte de nouvelles fonctions pour les gabarits, une analyse du code améliorée, ce qui devrait aider à l’interprétation du javascript intégré et des fonctions Smarty, ainsi qu’une gestion avancée du contrôle du cache.
L’équipe de développement de CMSMS a travaillé en collaboration avec les développeurs de Smarty afin d’intégrer une version non modifiée de Smarty 3.1.10 dans CMSMS. La partie la plus importante de cette transition a été de conserver la puissance de portée des variables à laquelle nous sommes habitués dans CMSMS. Cela consiste par exemple à définir une variable dans un gabarit de module appelé dans le <body>, et de la réutiliser dans le <head>.
CMSMS 1.11 permet la mise en cache de façon manière très flexible, ce qui offre la possibilité de mettre en cache tout ou partie de chaque page. Ceci est presque aussi bon qu’un cache sur l’ensemble de la page, et conserve les aspects dynamiques de CMSMS.
Dans la version 1.11, la plupart des plugins sont “cachables”, c’est à dire que la sortie de ces plugins peut être mise en cache pour ne pas être re-générée à chaque fois. La seule exception évidente est le plugin {content} qui ne sera pas mis en cache.
Le module Articles a également été modifié pour tenir compte des nouvelles fonctions de mise en cache de Smarty3. Il continue ainsi de servir d’exemple pour les développeurs de modules.
Il reste cependant quelques inconvénients à la mise en place de Smarty3. Nous avons remarqué que la compilation initiale (conversion de gabarits Smarty en code PHP) et le rendu des pages CMSMS sont plus lents. Cette dégradation de performances est due à la complexité de l’analyseur de syntaxe de Smarty3, et c’est une limitation connue dans la librairie.
Cependant, une fois le cache activé, nous notons un gain de performances significatif. Nous pensons que compromis sera bénéfique sur le long terme pour tous les utilisateurs de CMSMS.
Améliorations sur les langues et les locales
Nous avons réécrit le système de détection de langue et des mécanismes de sélection au sein d’une classe permettant plus de flexibilité. L’ensemble des données NLS contient à présent des informations sur la locale et l’encodage, ce qui fait que $config[‘locale’] et $config[‘encoding’] seront optionnels même pour les sites non-anglophones.
Nous avons réorganisés certains des mécanismes de détection de langue afin qu’ils soient appelés APRES que les modules (ceux qui ne peuvent se charger en mode lazy) soient initialisés. Ceci, en conjonction avec la nouvelle méthode CmsNlsOperations::get_language_detector(), permet à des modules tiers de spécifier comment la langue courante du site doit être détectée. Les modules peuvent alors utiliser des variables de session, des cookies, une informations dans l’URL, ou encore les préférences de l’utilisateur ou du module pour choisir quelle langue appliquer lors du traitement / de l’affichage.
L’importance de ces nouvelles fonctions de langage ne doit pas être sous-estimée. Cela donne la possibilité à tout module tiers d’avoir ses propres capacités de mettre en place le multi-langues au sein de CMSMS. Nous sommes certains que cela fera le bonheur de beaucoup de développeurs de modules ainsi que de milliers de développeurs de sites web.
Les améliorations / évolutions du CSS
Chaque feuille de style peut désormais avoir une propriété “media query”.
Cela vous permettra de mieux réaliser des sites “responsive”, ou des pages pour les mobiles.
De nouvelles variables de configuration permettent de définir le dossier des feuilles de style générées.
Nouveau thème de l’administration:
Goran Ilic, un membre précieux de la Dev Team vient de créer un nouveau thème pour l'administration en HTML5, “responsive”, entièrement contrôlable par Smarty et extensible.
Le thème est entièrement nouveau et est activé sur les nouvelles installations. L’ancien thème a été supprimé, il reste ainsi NCleanGrey et OneEleven.
Nouveau thème Frontend :
Nous sommes également ravis d’annoncer que CMSMS est installé maintenant avec un nouveau thème frontend Simplex. Simplex a été créé pour démontrer les capacités de CMSMS à supporter le HTML5 et les CSS3. Nous envisageons de remplacer progressivement les thèmes HTML4 en HTML5.
Upload de fichiers par Glisser-déposer :
Avec le nouveau thème admin, nous avons amélioré jQuery et jquery.ui qui est livré avec CMSMS et avons ajouté le téléchargement de fichiers par glisser-déposer (pour la plupart des navigateurs non-IE). Cela facilite l’upload de fichier depuis les éditeurs WYSIWYG. Le thème d’administration OneEleven possède une zone dans laquelle vous pourrez venir y déposer vos fichier depuis votre bureau par glisser-déposer et ensuite sélectionner ce fichier depuis l’éditeur WYSIWYG. De plus, vous pouvez modifier le dossier de destination de cette zone.
Meilleure utilisation de Lazy Loading pour les modules :
Dans la continuité de ce qui a été commencé dans les versions 1.10, nous avons amélioré la capacité de chargement en mémoires des module grâce au lazy load et ainsi amélioré les performances globales de vos sites. Pour atteindre ce but nous avons également retravaillé les fonctionnalités de ré-écriture d’url.
Amélioration du journal de l’administration (audit) :
Les suivis dans les journaux sont de plus en plus importants pour le développement et la maintenance nos sites Web (qui a fait quoi et quand). Pour cette raison, nous avons passé en revue les fonctionnalité importantes pour nous assurer qu’une ligne dans le journal d’audit soit présente à chaque fois.
Page de maintenance système :
Une toute nouvelle page de maintenance système dans l’administration vous permet d’effectuer périodiquement des tâches de maintenance comme réparer ou optimiser les tables de la base de données, vider le cache, etc...
Amélioration de la classe Content :
a. Comme nous l’avions mentionné précédemment, nous avons réorganisé la classe Content afin d’améliorer encore une fois les performances, et poser les fondations pour le travail futur.
C’est pourquoi nous avons retravaillé les propriétés dans le coeur des classes de l’objet Content (les méthodes qui récupèrent les blocs de contenu, etc...). Nous avons également passé toutes les méthodes de l’objet en public, protégée ou privée selon le cas.
b. Auparavant, le formulaire d’édition de contenu utilisait des expressions régulières pour analyser le gabarit de la page afin de détecter les blocs de contenus. Cela a changé, maintenant, nous utilisons Smarty. Cela améliore la flexibilité et réduit les possibilités d’erreurs lors de l’édition d’un gabarit de page.
En plus, il est maintenant possible d’insérer des blocs de contenus dans des sous-gabarits (i.e via {include} ou via un bloc de contenu global) ce qui nous procure plus de souplesse pour la réutilisation de gabarits.
c. Il est maintenant possible lors de la création d’un bloc de contenu de spécifier l’onglet dans lequel il sera lors de la création d’une page.
Améliorations dans les modules du coeur : MenuManager :
Le gestionnaire de menu à désormais une nouvelle fonctionnalité de fil d’ariane.
De ce fait, la balise {breadcrumb} est maintenant obsolète (dépreciée).
Cette nouvelle action permet la personnalisation graphique et comportementale du fil d’ariane.
De plus, le gestionnaire de menu à une nouvelle action “item” qui remplace la méthode “item=” des précédentes versions.
Cela permet d’appeler des pages via un alias spécifique et de les récupérer, elles et leur enfants dans votre navigation.
Améliorations dans les modules du coeur : Articles :
Le module Articles (News) a fait l’objet de modifications en profondeur (sous le capot):
a: Le module Article utilise maintenant le cache de Smarty ce qui supprime complètement les requêtes à la base de données pour les articles en cache (pour le gabarit de sommaire).
b: Le module Articles précharge dorénavant les informations sur les champs pour tous les articles dans leur vue sommaire pour réduire les requêtes à la base de données et donc augmenter les performances.
c: La catégorie est maintenant préchargée puis mise en cache pour être passée entre le sommaire et le détail des articles.
En vrac :
- L’export XML des modules n’exporte dorénavant que les versions anglaises de l’Aide et de la section “A propos”
- Une nouvelle action de groupe dans la liste des pages pour modifier leur propriétaire
- Amélioration des paramètres personnels des utilisateurs
- Ajouter un nouvel utilisateur permet de lui spécifier son éditeur WYSIWYG par défaut.
- Les url personnalisées des pages peuvent inclure maintenant une extension
- Retrait de l’option du fichier de config : ‘output_compression’
- Retrait de l’option du fichier de config : ‘process_whole_template’
- Retrait de l’option du fichier de config : ‘use_adodb_lite’
- Retrait du support pour PostgreSql.
- Retrait de l’option du fichier de config : ‘max_upload_size’
- Retrait du plugin google_search.
- Déplacement des balises {menu}, {news}, {search}, et d’autres vers leur modules respectifs.
- Réorganisation générale de diverses pages d’administration.
- Dizaines de bugs corrigés
- Encore plus
Pour une liste totale des modifications, merci de lire le fichier CHANGELOG.txt dans le répertoire “docs” de l’installation de la bêta.
Remerciements
Une fois encore, une quantité énorme d’effort a été déployée pour créer cette version, effort donné généreusement par les membre de l’équipe de développement et d’autres volontaires. Merci spécialement à : Ronny Krijt, Rolf, René Helminsen, Jeff Bosch, Robert Campbell, Ted Kulp, Morten Poulsen, Goran Ilic, Mark Reed, Anne-Mieke Bovelett, Tapio Löytty, John Scotcher, Jonathan Schmid et Jean-Claude Etiemble.
© Copyright 2012 par CMSMS™ et l’(es) auteur(s) du post(s). Tous droits réservés.