OVH : activer PHP-FPM sur les offres mutualisées

PHP : résoudre l'erreur "Redefining already defined constructor for class ..." photo

OVH est en pleine implémentation du module PHP-FPM sur ses offres, (et ici dans leur guide), ce qui permettrait selon la team OVH "d'accélérer les temps de réponses de PHP et d'obtenir des performances jusque 7 fois plus rapides dans nos labos par rapport au moteur actuel". Activation de PHP-FPM Pour activer ce mode sur votre offre, il suffit de créer un fichier .ovhconfig à la racine de l'arborescence FTP, dans le dossier parent du répertoire /www. Si vous souhaitez […]

Lire la suite »

WordPress : afficher la date en français dans le thème (sans utiliser le pack de langue ou setlocale())

WordPress : récupérer la liste emails des membres et commentateurs photo

Cela fait des années que j'utilise le même thème graphique pour mon site et je n'ai jamais vraiment pris le temps de traduire la date de publication ou de mise à jour des articles en français. Le tutoriel qui suit ne s'adresse qu'à un cercle réduit de développeurs : il est évidemment bien plus aisé d'installer WordPress en français (avec le langage pack qui convient) ou d'utiliser la fonction PHP setlocale() comme je l'avais fait précédemment avec WP-Date FR. Dans […]

Lire la suite »

WordPress : retourner et exécuter un shortcode dans une fonction

WordPress : récupérer la liste emails des membres et commentateurs photo

Pour les besoins du CKYF, j'ai écrit une fonction qui doit afficher une vidéo automatiquement. Or je voulais juste renvoyer un shortcode vidéo qui prendrait en charge toute la partie code du lecteur vidéo. On ne peut pas juste renvoyer la valeur, il faut utiliser la fonction do_shortcode() de WordPress. Cas 1 : exécuter un shortcode dans une fonction La solution réside dans l'utilisation de la fonction do_shortcode(). Voici un petit exemple :

Lire la suite »

PHP : résoudre l'erreur "Creating default object from empty value"

PHP : résoudre l'erreur "Redefining already defined constructor for class ..." photo

Suite à la mise à jour de PHP, mon fichier d'erreurs du site a commencé à afficher le message suivant : PHP Warning: Creating default object from empty value in /wp-content/themes/skyminds/functions.php on line 1213 La ligne en question correspond à : $posts[0]->comment_status = 'closed'; Le problème réside dans le fait que $posts n'est pas explicitement défini et comme les versions récentes de PHP tournent maintenant avec le mode E-STRICT par défaut, on obtient une erreur. Il existe deux solutions - […]

Lire la suite »

Nouveautés du site : printemps 2013

Voici les derniers ajouts au site depuis le début de l'année: [+] vous pouvez désormais poster des vidéos en commentaire juste en donnant le lien texte de la vidéo (merci Anne-Gaëlle pour la sugggestion). [+] le javascript est désormais chargé de manière asynchrone grâce à la librairie head.js. En pratique, la page (HTML, CSS, images) se charge et l'utilisateur peut interagir avec immédiatement, le code javascript est lui chargé après. Cela règle le problème que j'avais évoqué en novembre 2012. […]

Lire la suite »

Serveur dédié : des paquets LAMP à jour sous Debian

Serveur dédié : installation d'Apache, PHP, MySQL et Webmin photo

Problème : des paquets vieillots Lorsque votre serveur tourne sous Debian, les paquets sont éprouvés mais souvent datés. Ils tournent bien mais on ne peut pas vraiment bénéficier des versions les plus actuelles pour Apache, MySQL ou PHP par exemple. La solution : ajouter un nouveau dépôt pour LAMP La solution est tout simple, il suffit d'ajouter un nouveau dépôt, Dotdeb, qui permet de mettre à jour les paquets libmemcached, mysql, nginx, percona-toolkit, php5, php5-pecl, pinba-engine, redis, ruby-passenger, zabbix. On […]

Lire la suite »

PageSpeed à 99%

pagespeed-99-201301

Ah, ce moment magique durant lequel tu constates que ta note PageSpeed monte à 99%, via GTmetrix : C'est beau, sachant qu'au niveau CSS, c'est la barre WordPress du haut qui génère l'overhead. Prochaine étape : mettre les fichiers statiques sur un sous-domaine cookieless.

Lire la suite »

PHP 5.3 : résoudre l'erreur "Function eregi() is deprecated"

PHP : résoudre l'erreur "Redefining already defined constructor for class ..." photo

Il vous est peut-être déjà arrivé de tomber sur ce message d'avertissement : Function eregi() is deprecated. En fait, "deprecated" signifie que PHP 5.3 considère cette fonction comme obsolète, c'est un peu comme si la fonction ereg() n'existait plus. Par conséquent, mieux vaut dorénavant utiliser la fonction qui a pris sa place. La fonction ereg() ou eregi() est donc remplacée par la fonction preg_match() depuis PHP 5.3 : $is_image = eregi( "jpg|gif",$file_type ); devient donc : $is_image = preg_match( “~jpg|gif~i”,$file_type […]

Lire la suite »

WordPress : valider le code oEmbed Youtube en HTML5

HTML5 : corriger l’erreur "element link is missing required attribute property" photo

Le problème : le code des vidéos n'est pas valide en HTML5 Voici ce que le code oEmbed de WordPress donne par défaut avec un lien Youtube : Or le petit problème, c'est que tout cela n'est pas vraiment valide au niveau W3C et je commence à me lasser de voir ces erreurs de validation sur toutes les pages du site avec des vidéos : Erreur 1 : Attribute allowfullscreen not allowed on element iframe at this point. Erreur 2 […]

Lire la suite »

PHP : résoudre l'erreur "assigning the return value of new by reference is deprecated"

Si, lors d'une journée de débuggage PHP, vous tombez sur l'erreur suivante : Deprecated: Assigning the return value of new by reference is deprecated in on line 12 pas de panique, c'est extrêmement simple à résoudre. Vous avez probablement une ligne dans ce goût-là : $data =& new Structured_Info(); Or, depuis PHP5, le passage par réference est systématique sur new, donc il suffit d'enlever le '&' et d'écrire : $data = new Structured_Info(); Tout simplement.

Lire la suite »

PHP : les bons en-têtes pour permettre la mise en cache d'une page

Je me suis rendu compte qu'un des fichiers javascript d'un plugin WordPress est appelé sur chaque article du site et qu'il n'est pas mis en cache par défaut... C'est très moyen au niveau opimisation étant donné que c'est typiquement le genre de fichier statique qui n'est pas prêt d'être modifié. Voici donc les en-têtes (headers) qui vont nous permettre de mettre un fichier en cache en PHP :

Lire la suite »

Pin It on Pinterest

Spelling error report

The following text will be sent to our editors: