Mettre en ligne un site WordPress

WordPress stocke à différents endroits en base de données l’url du site. Ce qui peut être problématique lorsqu’on met en ligne un site développé en local.

Internet Explorer 6 sur Mac

Installer Internet Explorer 6, 7, et 8 sur Mac OS X, sans passer par Bootcamp ou des logiciels payants et lourds comme Fusion ou Parallels, c’est possible gràce à Wine :

http://wiki.winehq.org/MacOSX/Installing

Tout simplement génial.

Créer une miniature en php sans rogner

But : créer une miniature à partir d’une image, avec une largeur et une hauteur fixes, sans agrandir l’image (pour ne pas avoir une miniature de mauvaise qualité) si elle est plus petite que la taille de la miniature souhaitée.
Ne pas rogner l’image, la centrer en hauteur et en largeur et remplir l’espace vide avec une couleur de fond.

Carrousel horizontal avec JQuery

Un caroussel horizontal qui peut faire défiler des images ou du html.
Plusieurs carrousels possibles sur la même page.
Très facile à customiser.

Utiliser Propel avec Symfony 1.4

Après avoir téléchargé le sandbox de la version 1.4 de Symfony, impossible de générer mon modèle avec Propel : Task « propel-build-model » is not defined.

Créer une miniature en php

But : créer une miniature à partir d’une image, avec une largeur et une hauteur maximum, sans agrandir l’image (pour ne pas avoir une miniature de mauvaise qualité) si elle est plus petite que la taille de la miniature souhaitée.

Captcha simple en php

Un captcha est une image générée par un script, qui contient des lettres et des chiffres selectionnées au hasard. Ces caractères sont lisibles par des humains mais pas par des robots.

Email au format html compatibles avec la plupart des messageries

La fin des prises de tête avec les email html ! Petite découverte intéressante sur CampaignMonitor. 30 gabarits d’email html plutôt réussis et compatible avec un grand nombre d’outils de messagerie. Parmi lequels Yahoo, Hotmail, Gmail et Outlook. Les templates sont disponibles en téléchargement gratuit à cette adresse : http://www.campaignmonitor.com/templates/

Vérifier le format d’une adresse mail en php

Aide-mémoire : expression régulière pour vérifier le format d’un e-mail en php.

checkbox dans l’admin generator de symfony

Lorsque l’on a un champ de type entier dans notre modèle (exemple : champ publié pour une actualité), la champ par défaut de l’admin-generator est un input type text classique, alors qu’un checkbox serait plus approprié.

Pour transformer en checkbox, il suffit de mettre dans le fichier generator.yml le type à « checkbox tag » ainsi :

generator:
class: sfPropelAdminGenerator
param:
model_class:      Actualite
theme:            default

edit:
fields:
publie: { type: checkbox_tag }

Le problème, c’est que  si la valeur par défaut de « publié » dans mon modèle vaut 1, la modification de la checkbox ne sera pas prise en compte lors de l’enregistrement. Pourquoi ?

Parce qu’un checkbox non coché n’a pas la valeur de 0 mais de null. Or, dans la base de données, le null est interdit pour ce champ, c’est donc la valeur par défaut (1) qui est mise à la place.

Il faut donc qu’on force la valeur à 0 quand la case n’est pas cochée.

Pour cela, dans monapp/modules/actualites/actions/actions.class.php, il faut ajouter :

//redéfinition de la fonction d'update de la classe parente
protected function updateActualiteFromRequest()
{
//publié vaut 1 ou null
$publie = $this->getRequestParameter('publie');
if (isset($publie))
{ //s'il vaut 1
$this->actualite->setPublie(1);
}else{
//s'il vaut null, on force 0
$this->actualite->setPublie(0);
}

// Appel de la fonction parente pour gérer le reste de l'update
parent::updateActualiteFromRequest();
}