Here With Me

Le blog technique d'Amaury Balmer qui parle de technologies open-source, mais surtout de WordPress !

WordPress doit-il craindre Dotclear 2 ? (Partie 1 : Les templates)

| 18 Commentaires

Assurément non !

Pour la petite anecdote, je suis à la base un utilisateur de Dotclear 1, après avoir passer quelques temps dessus, j’avai été décu du système de template mais ravi de la gestions des extensions.Cependant à l’époque (et encore actuellement) le gamme de et de a toujours été assez limité en nombre…

Ensuite j’ai eu la chance de tomber sur un blog propulsé par et à partir de la est née la grande histoire d’amour entre moi et . Un outil puissant, anglophone mais diposant d’un très grand nombre de plugins et thèmes…

Mais bien plus que ces ajouts, WordPress disposé pour moi d’un atout essentiel, un système de template extrèmement simple…
Pas de moteur de template à la smarty par exemple…

Ce qui est pour un développeur de templates… du bonheur en boite !
Voyez vous, pour développer un sous WordPress, il suffit juste de créer un template XHTML et d’ensuite appeler des fonctions PHP…
On y trouve des inclusions, des structures conditionnelles et des boucles… la base de la programmation… facilement compréhensible par des néophytes… (tout est relatif bien sur…)

Exemple code WordPress pour afficher les articles :
[code lang= »php »]
< ?php if (have_posts()) : ?>
< ?php while (have_posts()) : the_post(); ?>

 » rel= »bookmark » title= »Lien permanent pour < ?php the_title(); ?>« >< ?php the_title(); ?>

< ?php the_time('j F Y') ?> – < ?php the_author() ?>

< ?php the_content('Lire la suite de cet article »'); ?>

< ?php endwhile; ?>

< ?php else : ?>

Introuvable

< ?php endif; ?>

[/code]

Un jeu d’enfant nan ?
Maintenant la meme chose avec Dotclear 2
[code lang= »html »]


{{tpl:EntryDate}}

{{tpl:EntryTitle encode_html= »1″}}


  • {{tpl:MetaID}}

  • {{tpl:EntryExcerpt}}

    {{tpl:lang Continue
    reading}}


    {{tpl:EntryContent}}



    {{tpl:lang page}} {{tpl:PaginationCurrent}} {{tpl:lang of}} {{tpl:PaginationCounter}}

    [/code]

    A vous de juger lequel est le plus simple à manipuler…
    En tout cas mon choix est tout fait…

    18 Commentaires

    1. Désolé de te contredire mais je n'ai jamais vu un code code celui la dans un template de DC. Ils sont exactement de la même forme que ceux de WordPress

    2. Je trouve que les templates sous DC2 sont pas terribles non plus, mais DC2 met une grosse claque en terme de simplicité et de fonctionnalités à WordPress. WordPress peut aller se rhabiller (déjà que Typo était mieux) !

    3. il y a moyen de développer un bon dc2 avec de nombreux plugins qui vont aller avec…

    4. Je suis pas daccord :D Vu que les commentaires sont là pour ça je m'exprime :p

      Je suis passé par les trois, d'abord DC1, ensuite WORDPRESS pour un autre projet et maintenant DC2 (version béta). Je suis moi-même un "peu" programmeur en php, css et Xhtml. Voilà pour le context comme ça on dira pas que je parle de choses que je ne connais pas :p

      Si on ne prend que l'aspect "templates" des trois. On peut voir que DC1 est très ressemblant à WordPress et s'adresse au personne qui ne connaissent pas grand chose en php.

      Pour DC2 c'est différent. Il n'y a plus de php, que du Xhtml et des templates "maison". C'est vrai que à première vue ont est déstabilisé et on ce dit: "c'est dur, je comprend rien, etc…" Mais si on fait une relecture du code attentivement on se rend compte que c'est beaucoup plus exploitable que WordPress et que DC1. On peut intéragir avec tout sans toucher à du code php et risquer de créer des erreurs.

      Maintenant question fonctionnalités. DC1 à une communauté francophone étendue par rapport à WordPress… Moi j'y connaissais rien en anglais donc j'ai ramé au début. C'est vrai que wordpress offrait des fonctionnalités que DC1 n'offrait pas mais maintenant avec le nouveau système de plugin sur DC2 il sera beaucoup plus facile d'en créer, avec des fonctionnalités plus étendues et qui pourront interragir avec les événements du site.

      Voilà mon opinion :)

    5. "Désolé de te contredire mais je n’ai jamais vu un code code celui la dans un template de DC. Ils sont exactement de la même forme que ceux de WordPress"

      Ouvre le thème par défaut de Dotclear 2 et regarde le code ?

      Nico => ne compare pas un outils ROR avec un outil PHP…

      DC2 plus simple ?

      Je ne trouve pas… bien au contraire même… y'a des options de partout… je partage pas ton avis ^^

      Malian => dans cette partie je ne compare que les templates

      Pour ceux qui ont une expérience de programmation basique, boucle, conditions… WordPress est très simple…

      Par contre je reste persuadé que Dotclear 2 avec son système de template à la Smarty est bien plus complexe que WordPress et son système d'appel de script PHP…

    6. Si ça c'est pas un manque d'objectivité!

      Le bout de code du template DC2 gére beaucoup plus de fonctionnalités:

      Gestion des lignes (coloration possible d'1 entrée sur 2), Tags, trackback séparés des commentaires et pagination.

      Et il permet de personaliser le code HTML quasi intégralement, alors que WordPress, c'est comme DC1, simple mais boujour les bidouillages pour personaliser (modifications des fonctions du core, avec les pbs que l'on connait pour les montées de version)

      Pour finir, le template de DC par défaut est assez bien fait… il est donc possible de faire des templates 100% CSS. Et puis l'intégration des widgets ne necessite pas de toucher aux templates comme dans DC1…

      Bref c'est bien plus prometteur que ce que tu annonces.

      P.S: ça ne m'étonnerait pas que WP passe à un système d'abstraction pour ses templates un de ces 4 d'ailleurs.

    7. Si ça c’est pas un manque d’objectivité!

      => Je compare uniquement la partie template des 2 outils…

      Gestion des lignes (coloration possible d’1 entrée sur 2)

      => Un petit plugin WP le permet

      Tags, trackback séparés des commentaires et pagination.

      => Tout cela est possible avec WordPress

      (modifications des fonctions du core, avec les pbs que l’on connait pour les montées de version)

      => Tu peux énumérer des problèmes ?

      Pour finir, le template de DC par défaut est assez bien fait… il est donc possible de faire des templates 100% CSS

      => Comme 95% des thèmes WordPress qui sont fait uniquement en XHTML Strict… et CSS

      P.S: ça ne m’étonnerait pas que WP passe à un système d’abstraction pour ses templates un de ces 4 d’ailleurs.

      => Il perderait alors l'un de ses principals atout… les engines de templates… non merci…

      Pour beaucoup de développeur, l'intégration de ce moteur SMARTY est une connerie… Regarde la différence de la taille du code… et la complexité du code…

      Le code généré par WP est relativement simple… des listes, des listes et des listes… très simple à manipuler…

      Ensuite je ne dis pas que DC2 n'est pas innovant, je dis juste que l'engine de template est une contre évolution…

    8. Si ça peut te consoler, l'auteur de Dotclear était de ton avis… Il y a 2 ans : http://www.neokraft.net/post/2004/04/25/490-templ

      Et le moteur n'est pas Smarty mais natif. Pour les comparaisons, on attendra un peu (notamment la doc).

      Par contre, je veux bien lire la partie 2.

    9. Je sais…

      Lui a changer d'avis… pas moi…quand je dis Smarty… c'est une facon de parler… car le template engine est ressemblant à Smarty…

      La partie 2 arrivera fin de semaine ;)

    10. Si ça c’est pas un manque d’objectivité!

      => Je compare uniquement la partie template des 2 outils…

      –>Qui ne gèrent pas les même fonctionnalités et c'est la le problème pour comparer

      Gestion des lignes (coloration possible d’1 entrée sur 2)

      => Un petit plugin WP le permet

      –>Alors ajoute le code que l'on puisse comparer!

      Tags, trackback séparés des commentaires et pagination.

      => Tout cela est possible avec WordPress

      –>Idem, ajout le code que la comparaison soit objective…

      (modifications des fonctions du core, avec les pbs que l’on connait pour les montées de version)

      => Tu peux énumérer des problèmes ?

      –>Gérer la traduction des textes comme 'lire la suite' et 'nombre de commentaires', différencier l'affichage des post avec et sans suite… Il y en a surement d'autres, mais la n'est pas la question, ce que je veux dire c'est que appeler fonction, c'est simple mais ça a ses limites.

      Pour finir, le template de DC par défaut est assez bien fait… il est donc possible de faire des templates 100% CSS

      => Comme 95% des thèmes WordPress qui sont fait uniquement en XHTML Strict… et CSS

      –>C'est vrai, DC WP ex equo et même si je prefère les classes de DC c'est par habitude et 100% subjectif!

      P.S: ça ne m’étonnerait pas que WP passe à un système d’abstraction pour ses templates un de ces 4 d’ailleurs.

      => Il perderait alors l’un de ses principals atout… les engines de templates… non merci…

      –>Bon, si on peut plus te charier, c'est pas drôle ;)

      Pour beaucoup de développeur, l’intégration de ce moteur SMARTY est une connerie… Regarde la différence de la taille du code… et la complexité du code…

      Le code généré par WP est relativement simple… des listes, des listes et des listes… très simple à manipuler…

      Ensuite je ne dis pas que DC2 n’est pas innovant, je dis juste que l’engine de template est une contre évolution…

      –>Question dze point de vue, en l'occurence c'est abstraction VS simplicité. DC2 c'est de l'objet, et l'objet c'est l'abstraction, il y a donc une logique à tout ça.

      Je respecte tout à fait ton point de vue et franchement tu as raison sur le fait que les templates WP sont plus courts et plus simple, pour autant le système est t'il meilleur ou plus évolutif?

      Ce que je trouve faux dans ta démonstration c'est l'exemple de code, voiçi ce que j'aurais mis:

      Les 2 codes suivants créent exactement les mêmes pages, vous remarquerez que WP est toujours plus court et simple à comprendre… mais la différence n'est pas si énorme!

      —TEMPLATE DC 2—

      {{tpl:EntryTitle}}

      {{tpl:EntryDate}} – {{tpl:EntryAuthorLink}}

      {{tpl:EntryExcerpt}}

      {{tpl:lang Continue reading}}

      {{tpl:EntryContent}}

      Publié dans {{tpl:EntryCategory}} {{tpl:EntryCommentCount}}

      —TEMPLATE WP—

      ">

      <a>" rel="bookmark" title="Lien permanent pour ">

      Publié dans

    11. —TEMPLATE DC 2—

      <tpl:Entries>

      <div class="post" id="post-{{tpl:EntryID}}">

      <h2>{{tpl:EntryTitle}}</h2>

      <span class="dateauteur"><small>{{tpl:EntryDate}} – {{tpl:EntryAuthorLink}}</small></span>

      <tpl:EntryIf extended="1" ?>

      <div class="post-content">{{tpl:EntryExcerpt}}</div>

      <p class="read-it">{{tpl:lang Continue reading}}

      </tpl:EntryIf>

      <tpl:EntryIf extended="0" ?>

      <div class="post-content">{{tpl:EntryContent}}</div>

      </tpl:EntryIf>

      <p class="postmetadata"><small>Publié dans {{tpl:EntryCategory}} <tpl:EntryIf show_comments="1" ?>{{tpl:EntryCommentCount}}</tpl:EntryIf></small>

      </div>

      </tpl:Entries>

      —TEMPLATE WP—

      <?php while (have_posts()) : the_post(); ?>

      <div class="post" id="post-<?php the_ID(); ?>">

      <h2>"><?php the_title(); ?></h2>

      <span class="dateauteur"><small><?php the_time('j F Y') ?> – <?php the_author() ?></small></span>

      <div class="entry">

      <?php the_content('Lire la suite de cet article »'); ?>

      </div>

      <p class="postmetadata"><small>Publié dans <?php the_category(', ') ?> <?php comments_popup_link('» Aucun commentaire', '» Un commentaire', '» % commentaires'); ?></small>

      </div>

    12. Dans DC avec la prévisualisation des commentaires, j'aurais pas merdé sur le fait que le HTML est filtré dans tes commentaires… tu fais bien de le faire d'ailleurs!

      Bon ok je sors… et j'arrête de d'asticoter…

    13. Je sais pas si on peut résumer les différences seulement au code des templates…

    14. (Partie 1 : Les templates)

      Ca me semblé assez explicite… Enfin bon… dès qu'on touche au logiciel libre de surcroit francais… on en prend plein la gueule ^^

      Adrien… effectivement je suis d'accord la comparaison est un peu faussé… cependant ces ajouts qui sont à faire dans le code du template de dotclear, sont juste à activer dans WordPress… c'est la seule différence ;) Pas d'ajout de code manuel ^^

    15. Oui, vu comme ça ! :D

      Je pense tout pareil dans ton texte, à ceci près que j'ai même pas osé regarder comment créer un template sous dotclear… En tout cas, y'a pas à dire : wordpress est terriblement souple.

    16. Mon avis est simple ayant tester les 3 , de loin meme si wordpress est anglais, je le prefere de loin, plus siimple que se soit poru les plug ins ou themes, des plug ins a gogo et de tres bonne conception, une utilisation plus qu intuiive, comparer a dc1 et encore pire avec dc2 car dc2 est loin de surpasser wordpress ! pour se qui est du multiblog wmu est valable aussi , mais la ou wordpress passe devant les dc c est par sa facilité de fonctionnement et de mise a jour !

      voila mon avi :D

    17. Ombre > WP est développé en PHP4, en fonction classique sans notion de modèle MVC, de classe, d’interface, etc.

      Le code parait de suite plus simple pour les néophytes :)

      Finalement WordPress vs Dotclear, c’est un débat sans fin ;)

    18. Asser drole de lire ce débat de sourd .

      Tout dépend en fait de quel point vu on ce place et quel niveau on a en programmation.

      Moi qui suis développeur de métier, je peu dire qu’il n’y a pas photo DC2 est bien mieux conçu aussi bien terme de modélisation que d’écriture.
      On a faire à un code orienté objet moderne tirant parti des nouvelles fonctionnalités de PHP5 , un vrai régal à maintenir , le moteur de plugins est tres astucieux et permet de faire TOUT ce que l’on veut sans jamais avoir aucune modifs à apporté au noyau.

      Le moteur de template est lui aussi tres bien pensé et inovant on a ici à faire à un vrai design pattern éprouvé le  » MVC  » , il peut facilement etre étendu , il est tres rapide, et ne demande pas une fois de plus à modifier du code dans le framework pour y ajouter des nouvelles fonctionnalités ( poo oblige ).

      La syntaxe peut paraitre étonnante et déroutante à certain mais si ces derniers sont capables d’écrire du XHTML et un peu de php ils seront tout aussi capable d’apprendre a ce servir de ces balises qui n’ont rien de compliqué dans le fond , sont tres puissantes et plus explicite !

      quelle différence entre :
      et {{tpl:EntryCommentCount}}

      par énorme ….

      par contre les possibiltées qu’offre le framework de DC2 comparé a celui de wordpress sont sans comparaison DC2 est bien loin devant .

    Laisser un commentaire

    Champs Requis *.