Lorsqu'on développe un script tel qu'un CMS de blog comme Blogolite, il faut souvent se remettre en question mais aussi ne pas céder aux sirènes de l'usine à gaz avec 36 000 fonctionnalités qui ne seront jamais utilisées (ou alors pas 0.1% des utilisateurs). Car la plupart des utilisateurs qui veulent un CMS de blog le veulent surtout pour poster des billets, ajoutez à cela les commentaires des visiteurs et on a là 95% des fonctionnalités qui caractérisent un blog, le reste étant surtout d'ordre cosmétique (tags, derniers commentaires) ou d'organisation (catégories, archives, billets relatifs).

wordpress

Les 2 grands CMS du marché (Wordpress et Dotclear ndlr) utilisent tous les deux un système de plugins (très poussé chez Wordpress) qui permet d'ajouter de nouvelles fonctionnalités très rapidement et très simplement. Mais ces systèmes de plugins servent aussi à compenser les faiblesses et lacunes d'origine. Si l'on regarde du côté des plugins populaires de Wordpress, on retrouve notamment le célèbre All in One SEO Pack, le très utile Google XML Sitemaps et l'incontournable antispam Akismet, on a aussi le Contact Form 7.

Eh oui le CMS le plus utilisé a besoin de pas mal de plugins pour être totalement fonctionnel, assurez un bon référencement (faut un plugin pour ajouter la balise description dans le header, cherchez l'erreur sachant qu'on est en 2009). Mais je ne crache pas sur ce système car cela permet aussi de se construire un blog à la carte, mais est bien toujours utile ? A-t-on vraiment besoin de tous ces plugins ? Est ce qu'on ne s'éloigne pas un peu trop du principe de blog ? Bref les systèmes légers peuvent tirer leur épingle du jeu.

D'origine : les fonctionnalités de base et indispensables

Fort de ce constat, j'ai fais une liste de ce qu'un blog a vraiment besoin pour fonctionner sans problème et donc le fournir dans la version de base. Il y aura bon bien sûr un antispam pour les commentaires. Mais point de captacha ou de système de question qui peuvent rebuter le visiteur, juste un système basé sur le JavaScript (il faut avoir le JavaScript d'activé pour ajouter un commentaire) qui permet de dégager 99.9% des robots (et 0.1% des visiteurs qui l'ont désactivé). Et pour être sûr un autre système basé sur un champ caché par du css externe (et non interne donc détectable par les robots) qui sera automatiquement remplis par un robot qui sera alors détecté et refoulé).

Pour le référencement, les différentes balises du header seront remplies automatiquement (même la balise keywords surement inutile aujourd'hui mais autant tout faire de base) et le sitemap sera automatiquement généré. En bonus il y aura même un petit système pour ajouter facilement les utilisés pour Xiti, Goggle Analytics & Co qui fournira également la variable pour renseigner le nom de la page. Enfin un formulaire de contact sera aussi livré d'origine.

N'oublions pas les médias sociaux

twitter

Que celui qui n'a jamais entendu parlé de Twitter lève la main ... Bon personne ça me rassure. Comme c'est à la mode actuellement Blogolite aura quelques fonctionnalités pour interagir avec Twitter avec une page pour afficher ses derniers Tweets et un système pour poster dans Twitter un lien vers ses derniers billets. Par contre je suis un peu moins fan du système qui permet de poster son billet sur 99 médias sociaux différents (plugins Sociable de Wordpress) mais si la demande est là l'offre y répondra. Enfin pour chaque billet sera fournie une adresse raccourcie pour économiser des caractères dans Twitter.

Et tout ça bien sûr en utilisant Sqlite (mais il sera possible d'utiliser MySQL). Donc si vous m'avez suivis il n'y aura pas de système de plugins nativement sous Blogolite. mais je vais faire en sorte que l'ajout d'une fonctionnalité soit facile (cela passe par un code très clair et bien organisé) en modifiant le code php. De même le CMS intégrera un système permettant de générer des pages statiques (à propos, en savoir plus, ce que je n'aime pas, etc) mais dans lesquelles le php pourra être utilisé. Ainsi développer une fonctionnalité sera chose aisée.

S'il y a des fonctionnalités essentielles que je n'ai pas citées (hors administration j'en reparlerai plus tard) ou que vous voudriez voir dans Blogolite, n'hésitez pas à demander ça peut être intéressant.