lundi 23 février 2009

Quel CMS pour quel type de site ?

Selon le site qu'on veut faire, trouver l'outil qui correspond au besoin n'est parfois pas facile. Thierry Delprat nous en a recensé un grand nombre ici. A partir de là, voici rapidement ma version des choses :
- Pour un site vitrine : le bon vieux (X)HTML marche très bien si vous avez la main sur les pages, CMSimple convient très bien pour donner la main à quelqu'un qui n'y connaît pas grand chose. Un site vitrine est un site dans lequel on ne met que quelques pages, une présentation, des réalisations, un contact et basta. Au-delà, allez voir ailleurs...
- Pour un site communautaire : Spip ou CMSMadeSimple. Un site communautaire est un site où on propose à plusieurs personnes de participer à un contenu commun. Tout est fait pour le travail en commun.
- Pour un blog : Nombre de portails de blog proposent de mettre en place ça gratuitement... notamment Gandi. Si vraiment il vous faut en installer un vous-même, Wordpress ou DotClear (idéal si vous souhaitez installer plusieurs blogs). Un blog est endroit où vous pouvez publier des billets (d'humeur, par exemple) régulièrement. Ils sont ensuite rangés par thème et chronologiquement. Si vous souhaitez un site pour votre association, c'est pas un blog qu'il vous faut mais plutôt un site communautaire.
- Pour un wiki : du plus simple au plus complet, Dokuwiki, Wikini, et Tikiwiki. Le top du top MediaWiki (celui utilisé par Wikipédia). Un wiki est un site ouvert aux visiteurs : on leur propose de participer à la rédaction et la mise à jour du contenu. Selon l'outil, il peut-être cependant plus ou moins restreint.
- Pour un site portail : Guppy. Un site portail est un site dans lequel on trouve tout : pages, forum, news, FAQ, blog, livre d'or, annuaire, galerie photo, etc.
- Pour un site d'e-commerce : Thelia (peut être couplé avec Spip) pour une petite boutique, OSCommerce pour des plus grandes. Un site d'e-commerce est un site de vente en ligne.
- Pour des sondages, questionnaires : LimeSurvey.
- Pour des sites plus compliqués (si Spip et ses plugins ne vous suffisent vraiment pas) : Joomla, eZpublish et Typo3 (débutants, passez votre chemin).

lundi 16 février 2009

[spip] Menu tout simple rubriques soeurs et articles de la rubrique en cours

Dans la même veine de le menu qui récupère les sous-rubriques de la rubrique en cours uniquement tout en montrant les autres rubriques soeurs expliqué ici, voici le menu qui affiche les rubriques soeurs, et les articles de la rubrique en cours uniquement. Même principe que le précédent :

<BOUCLE_RubCourante(HIERARCHIE){id_rubrique}{tout}>
<BOUCLE_RubSoeurs(RUBRIQUES){meme_parent}{id_rubrique!=#ID_RUBRIQUE}>
<BOUCLE_RubNieces(ARTICLES){id_rubrique}{doublons nieces}> </BOUCLE_RubNieces>
</BOUCLE_RubSoeurs> </BOUCLE_RubCourante>

<BOUCLE_RecupRub(RUBRIQUES){id_rubrique}>
<p> <BOUCLE_Menu(RUBRIQUES){meme_parent}{unique}{par num titre}>
<p> [<a href="#URL_RUBRIQUE">(#TITRE|supprimer_numero)</a>]</p>
<B_SsMenu> <ul> <BOUCLE_SsMenu(ARTICLES){id_rubrique}{par num titre}{doublons nieces}>
[<li><#EXPOSE{span,a href="#URL_ARTICLE"}[ class="(#EXPOSE)"]>(#TITRE|supprimer_numero)</#EXPOSE{span,a}></li>]
</BOUCLE_SsMenu></ul></B_SsMenu></BOUCLE_Menu></BOUCLE_RecupRub>

lundi 9 février 2009

[(x)html] Changer le style de la première lettre d'un élément

Oui, c'est possible, très facilement, grâce à first-letter, qu'on va appliquer comme ça dans la CSS :

li:first-letter { font-weight:bold; }

Voilà c'est aussi simple que ça !

lundi 2 février 2009

[spip] Modifier les traductions par défaut de Spip

Pour de nombreux textes génériques dans tout site web, spip propose des traductions déjà faites pour la partie privée. Celles-ci sont disponibles dans la partie privée > configuration > gestion des langues > fichiers de langue. Elles se présentent ainsi : <:accueil_du_site:> et puis la traduction en face.

Pour les modifier, nous allons créer, s'il n'existe pas déjà, un fichier de langue que nous allons appeler local_lang.php (local_en.php pour l'anglais, par exemple, ou local_fr.php pour le français, selon la langue que l'on souhaite modifier) et enregistrer dans /squelettes/lang/. Si ce fichier existe déjà, on va simplement ajouter les codes correspondants à celui-ci et spip les prendra en compte : en effet celui-ci prend en compte d'abord les fichiers local_lang.php, puis ceux par défaut.

Dans le fichier local_lang.php vierge, on va placer le code suivant :

<?php

// This is a SPIP language file -- Ceci est un fichier langue de SPIP
$GLOBALS[$GLOBALS['idx_lang']] = array(

// Correction des traductions par defaut de spip
'accueil_du_site' => 'Accueil du site',
'page_precedente' => 'page précédente',
'page_suivante' => 'page suivante'

);
?>


On va insérer les traductions entre les deux parenthèses. Pour chaque traduction on va dire :
'accueil_du_site' => 'Accueil du site',
sauf pour la dernière :
'plan_site' => 'Plan du site'
La différence ? Il n'y a pas de virgule à la fin... c'est très important, car mettre une virgule à la fin de la dernière ligne peut planter tout le site. Autre détail, il faut encoder les accents façon HTML : &eacute; pour faire un é par exemple. Sinon nous retrouverons des erreurs dans le texte traduit. Cette erreur-là aussi peut être à l'origine d'un plantage du site entier...

Aussi, l'idéal est de commenter ces lignes largement, en commençant les lignes où il y a des commentaires par //, car ce fichier peut devenir très long.

Donc, pour modifier la traduction par défaut de <:accueil_du_site:>, on repère d'abord la ligne dans les fichiers de langue visibles dans l'interface privée, puis on vient la traduire dans le fichier local_lang.php.