Des images qui renvoient une erreur 403

403-error

Aujourd'hui, j'édite un ancien article et le prévisualise pour voir les changements : je m'aperçois alors que l'image de l'article ne s'affiche plus. Ni une ni deux, je sors mon terminal et tente de récupérer l'image avec wget. Erreur 403. Je vérifie la configuration Apache et Varnish, rien à signaler (et surtout rien n'avait été modifié). Je vérifie alors le fichier via FTP : il se trouve qu'il ne possédait pas les bons droits! Evidemment, avec un chmod 600, cela […]

Lire la suite »

Nouveautés du site : été-automne 2013

Voici les quelques mises à jour du serveur et du site depuis quelques mois : [+] Serveur : JetPack qui me permet d'avoir un module de statistiques extrêmement simple et qui ne casse pas le code du site. J'ai désactivé la plupart des modules car certains cassent la validation HTML. Le module Contact conserve une trace de tous les messages de la page Contact dans la base de données... pas vraiment idéal vus les spams. J'ai installé Fast Secure Contact […]

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 : < ?php /* |----------------------------------------------------------------------- | Sky Show […]

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 »

WordPress : des images qui ont perdu leur chemin

WordPress : des images qui ont perdu leur chemin photo

Problème : chemin erroné pour certaines images En allant faire un tour sur Google Webmaster Tools, je me suis aperçu qu'il y a avait des erreurs sur la page Si je pouvais (vraiment) choisir ma voiture… et effectivement, les images ne s'affichaient pas! Après vérification, il se trouve que le chemin des images était totalement inexistant : c'était un mélange d'URL publique et de chemin privé, donc aucun moyen que les images d'affichent comme il faut avec le chemin privé. […]

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 »

Bash : réparer les tables MySQL en cas de crash

Bash : réparer les tables MySQL en cas de crash photo

Il arrive que parfois une table SQL soit complètement plantée, ce qui peut bloquer l'accès à la base de données et donc l'accès au site. Pour éviter cela, j'ai écrit un petit script bash qui me permet de stopper le serveur MySQL, procéder à la réparation de toutes les tables de toutes les bases de données puis relancer le serveur MySQL, Apache et Varnish. #!/bin/sh # MySQL Auto-Repair # Written by Matt - skyminds.net # stop the MySQL server /etc/init.d/mysql […]

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 : <p><iframe width="660" height="371" src="https://www.youtube.com/embed/Gvh2Zo7UL6E?fs=1&#038;feature=oembed" frameborder="0" allowfullscreen></iframe></p> 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 […]

Lire la suite »

HTML5 : résoudre l'erreur "keyword publisher is not registered" (validateur W3C)

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

Sur votre site ou blog, vous avez peut-être ajouté le widget ou bouton +1 de Google+, le réseau social de Google. Or le petit problème, c'est que le code fourni empêche la bonne validation du document. Voici le code fourni par Google : <a href="https://plus.google.com/114535411372700844744" rel="publisher nofollow" title="Google+">Google+</a> et voici l'erreur renvoyée par le validateur W3C : Keyword publisher is not registered HTML5 étant toujours en cours de réalisation, les valeurs de la balise rel sont assez restreintes et on […]

Lire la suite »

Pin It on Pinterest

Spelling error report

The following text will be sent to our editors: