WebDev (PHP et SEO) : Un peu de PHP, des regex, des tests et du référencement (il parait qu'il faut dire CEO ?).

Gérer vos locations saisonnières et ajouter un calendrier sur votre site avec e-reserv

Je vais vous présenter un script PHP/MySQL permettant de gérer vos locations saisonnières (gîtes, chambres d'hôtes, petit hôtel, yourtes...). Je m'intéresse à ce script depuis déjà 2 ans, il est maintenant très mature.
Il y a possibilité de gérer plusieurs réservations et surtout de pouvoir construire un fichier clients avec toutes les informations sur les locataires.

Le script est composé de 4 onglets principaux : que nous allons explorer en image.

page d'accueil e-reserv
La page d'accueil nous donne une vue d'ensemble des réservations et permet surtout d'ajouter rapidement une réservation.

Lire la suite de Gérer vos locations saisonnières et ajouter un calendrier sur votre site avec e-reserv

Booster encore plus PluXml !

Un moteur de blog plus rapide que PluXml ? euu... PluXml ?

Vous allez me dire... PluXml n'est pas lent, on ne vas pas y gagner grand chose. En effet, avec mes articles et mes commentaires j'arrive à 0.054s (j'ai ajouté un compteur en bas de page). Maintenant nous allons voir comment descendre en dessous voir diviser le temps par plus de 2 (c'est un minimum avec 60 articles et 30 commentaires, mais quand on a des centaines d'articles ça peut diviser le temps par 10).

Après quelques tests il s'avère que la seule chose qui prend réellement du temps dans PluXml est l'affichage de la liste des dernier articles et commentaires (regardez dans ma sidebar).
La technique que nous allons utiliser est la mise en cache. Ce système de mise en cache est ultrarapide à mettre en place d'autant plus qu'il se met dans le dossier du thème et qu'il n'y a donc pas besoin de le refaire quand on change de version de PluXml. L'autre avantage de ce système est qu'il se met à jours automatiquement, ainsi il vérifie périodiquement qu'il n'y a pas de nouvel article ou de nouveau commentaire et se met à jours dans le cas échéant.
J'arrête de vous faire attendre, nous allons passer au code tout de suite.

Le fichier staticcache.php à mettre dans le répertoire du thème.

Il faut maintenant modifier le fichier sidebar.php de votre thème (voir un exemple : sidebar.php.txt):
Ajouter include_once(PLX_ROOT.'themes/'.$plxMotor->style.'/staticcache.php'); au debut du fichier, après le if(!defined('PLX_ROOT')) exit;.
Ajouter if(plxCache::startCache('sidebar', $plxMotor)) { juste en dessous si vous voulez tout mettre en cache.
Ajouter <?php } plxCache::stopCache('sidebar', $plxMotor);?> à la fin du fichier.

Quelques explications : Ce script utilise ob_start();, une fonction de php permettant d'enregistrer la sortie texte de php. C'est à dire que l'on sauvegarde tout ce qui est écris entre ob_start() et ob_end_clean();. Le texte est récupéré à l'aide de ob_get_contents();.
Coté PluXml, on récupère la date de modification du dossier (si si, ça fonction, la fonction filemtime permet aussi de traiter les dossiers.). Le fichier cache est nommé en fonction de la date du dernier commentaire et article. Si cela change le script recrée un fichier cache et supprimer l'ancien.

La seconde partie qui prend plus de temps est l'affichage des articles dans la page home.php :
Ajouter include_once(PLX_ROOT.'themes/'.$plxMotor->style.'/staticCache.php');
if(plxCache::startCache($plxShow->plxMotor->page.'home', $plxMotor)) {
avant la boucle d'affichage : while($plxShow->plxMotor->plxRecord_arts->loop()): # On boucle sur les articles.
On ajoute la la cache (} plxCache::stopCache($plxShow->plxMotor->page.'home', $plxMotor);) après la fin de la boucle : endwhile;.
Comme vous avez pu le remarquer, on ne spécifie pas que le nom ('home') en paramètre, on ajoute aussi $plxShow->plxMotor->page qui est le numéro de la page courante sans quoi on verrait à toutes les pages le contenu de la première.
Attention tout les fichiers sont stockés dans le dossier plxCache, assurez-vous avec un client FTP que l'écrite s'est bien faite. Vous remarquerez que la mise en cache du fichier home.php génère un grand nombre de fichiers dans ce répertoire, un par page, à vous de voir si c'est vraiment judicieux.

Voilà, j'espère que vous avez compris le fonctionnement. Vous pouvez poser vos question en commentaire. J'espère aussi que vous avec compris qu'avec ce système c'est Wordpress qui va aller se cacher :-).

PluXml en version stable !!

PluXml

Pour bien commencer l'année 2010, rien de mieux qu'une nouvelle version de PluXml et qui plus est une version Stable.
Voilà 5 ans que PluXml existe et c'est la première fois que les développeurs sortent une versions stable. Non pas que les versions antérieurs n'étaient pas stables, mais que PluXml a atteint aujourd'hui une certaine maturité qui lui permet de s'imposer dans le panel des grands moteurs de blogs.

Parmi les nouveautés, on note une gestion avancée des commentaires, et un nouveau thème par défaut, issus d'un concours. Je vous montre le tout en images.

PluXml 4.3, nouveau thème

PluXml 4.3 commentaires

Vous pouvez tester la démo sur le site officiel : demo.pluxml.org. Et le télécharger ici : pluxml.org.

Sortie de Pluxml beta 4.2

Je vous ai déjà parlé de pluxml, ce moteur de blog php sans base de donnée (XML flat files dans le jargon) ? Aujourd'hui, je suis heureux de vous présenter la version 4.2, résultat d'un travaille d'endurance de toute l'équipe de pluxml.

C'est un gain de temps considérable pour les bloggeur puisqu'il permet maintenant une gestion poussée de images et de miniatures. Cette nouvelle version est entièrement compatible PHP 5.3 tout en restant compatibles avec les versions antérieurs de PHP.

pluxml 4.2 medias

Coté édition on gagne encore en rapidité avec l'ajout d'un barre (plxToolbar) de mise en forme du texte. La gestion des commentaires est aussi plus puissante car on dispose d'un flux RSS privé pour synchroniser les nouveau commentaires avant de les modérer.

Mais la grande nouveauté de cette version est la possibilité d'utiliser un thème différent pour les clients mobiles (PDA, SmartPhones...).

Je n'ai eu aucun problème à la migration de amoweb.fr. J'ai modifié mon thème en quelques minutes tel qu'expliqué dans la DevZone

J'aimerai remercier les 3 autres membres du projet qui m'ont fait réellement connaitre ce qu'est le travail en équipe dans un projet "libre". Je crois que les logiciels libres sont passionnants à découvrir, et le sont encore plus, coté coulisse, lorsque l'on voit grandir un projet. Depuis le mois de septembre le temps que je consacre à l'informatique est rythmé par les testes, les recherches et les réunions Skypes.