Matt Biscay: développeur WordPress et WooCommerce pour SkyMinds
Éviter le contenu dupliqué en spécifiant l'URL canonique photo

Éviter le contenu dupliqué avec l’URL canonique

Google, Yahoo! et Live Search viennent de se mettre d’accord pour essayer de résoudre les problèmes de contenus dupliqués à l’intérieur d’un site : ils ont opté pour la création d’une balise spéciale qui décrit l’URL canonique d’une page (c’est-à-dire son URL officielle) :

rel="canonical"

Le problème : le contenu dupliqué

Ce qui pose problème pour les moteurs de recherche, c’est savoir quelle est la bonne page à indexer lorsqu’un même contenu est disponible à plusieurs adresses différentes.

C’est le problème du contenu dupliqué, ou duplicate content.

duplicate content

C’est mauvais pour le référencement d’un site car pour les moteurs de recherche, une page web ou tout autre document indexable (comme les fichiers PDF, DOC, XLS…) équivaut à une URL.

Cette URL doit être unique pour le robot, pour qui une autre URL correspond à une autre page.

Si ce n’est pas le cas, ces pages dupliquées entrent en concurrence les unes avec les autres dans les résultats de recherche, ce qui n’est pas bon.

Lire la suite

Plugin Last.fm pour SAM Broadcaster

Je vous ai parlé dernièrement de mon adhésion à last.fm et de l’absence regrettable d’un plugin last.fm pour SAM Broadcaster.

Et bien, cela y est, j’ai réuni tout ce qu’il faut pour pouvoir scrobbler en toute quiétude, tout en laissant tourner votre webradio !

SAM Broadcaster & Last.fm

Contrairement aux autres lecteurs audio classiques, il ne s’agit pas d’une extension toute compilée à installer mais d’un script PHP qui va se charger de mettre à jour votre profil last.fm via CURL.

Installation et configuration prennent moins de 10 minutes.

Lire la suite

Mail-it Now! Professional Edition

Mail-it Now! Professional version is an advanced state-of-the-art form2mail script written in PHP which features:

  • fields check so that the data format is verified prior to submittion
  • multiple file uploads and email attachments
  • full email headers including CC and BCC so that multiple recipients can be added
  • option to set file type restrictions and set a maximum file size for uploaded files
  • option to create HTML or text-only email
  • option to keep uploaded files on the server
  • option to delete uploaded files after a defined period of time
  • answer page (error or success) generated on the fly
  • supports the email() function of Online.net
  • support for new TLDs in the email format check
  • supports safe-mode servers and PHP5, PHP7
[purchase_link id=”7403″ text=”Buy Mail-it Now! PRO” style=”button” color=”blue”]

The terms of the Professional licence enable you to:

  • run the script on a single domain
  • get 12 months of support
  • benefit from a turnkey installation.
[purchase_link id=”7403″ text=”Buy Mail-it Now! PRO” style=”button” color=”blue”]

Mail-it Now! Commercial Licence

Mail-it Now! is an advanced form2mail featuring:

  • fields check
  • multiple file uploads
  • Answer page generated on-the-fly
  • Easy setup and configuration
  • Supports the email() function of Online.net
  • Supports safe-mode servers and PHP > 4.1.2
  • Email verification takes new TLDs into account

The Commercial Licence enables you to:

  • run the script on several pages on one commercial website.
  • remove the link to SkyMinds.Net.
  • get unlimited support.
  • benefit from a turnkey installation.

Need more options ? Learn more about Mail-it Now! Professional Edition !

Scripts PHP-MySQL photo

PHP and MySQL scripts

Mail-it Now! Upload2Server

[no_toc]

Advanced form2mail checking the email and message fields, and the validity of the email address. It works with every hosting provider using mail or email functions. It handles multiple file uploads and generates the reply page automatically. Supports Online.net’s email() function.

 Current version: [1.5.3]       License: [Linkware]       Downloads: 184 370 

>> Download

>> Demo                   >> Get the Professional Edition

Mail-it Now! Professional

Improved form2mail script featuring : multiple file uploads, file type restrictions, mail attachments, HTML email, CC and BCC copies, option to keep uploaded files on the server, option to set maximum filesize, auto-cleanup of files option, answer page generated on-the-fly, easy setup and configuration, supports the email() function of Online.net, supports safe-mode servers and PHP > 4.1.2, new TLDs taken into account. Read more.

[purchase_link id=”7403″ text=”Add to Cart” style=”button” color=”blue”]

GraphiCookie Counter

Graphic counter using a cookie to identify your visitors not to count them twice. You can use your own images and define the cookie lifetime. Set of pictures included.

 Current version: [1.3]         License: [Linkware]        Downloads: 121 082 

>> Download

GrafX Hit Counter

PHP hit counter displaying the results from a MySQL database. Simply add the 3 lines of code at the beginning of each page you want to track and the script will store the results in the database so that you know which pages are the most accessed and draw the graphs.

 Current version: [1.2]       License: [Donation-ware]       Downloads: 80 677 

>> Download

last.fm 4 SAM Broadcaster

PHP plugin to update your last.fm profile with the tracks played on your SAM Broadcaster-powered webradio.

 Current version: [0.2]       License: [Donation-ware]       Downloads: 5 984 

>> Download

GrafX Hit Counter v1.2

Je pensais en avoir terminé avec le développement de GrafX Hit Counter – simple compteur de hits graphique qui se sert d’une base MySQL pour enregistrer et afficher les résultats – et voici qu’une question posée par un de mes visiteurs m’y a replongé. La question était : “comment afficher de manière textuelle le nombre de hits d’une page ?”.

Réponse : avec un simple echo de la fonction principale, comme ceci :

// On lance le calcul (savant!)
$cc = ShowCount($page);

// On place cette routine là où doit apparaître le nombre de hits
echo $cc; 

En parcourant le script, je me suis également rendu compte que je pouvais l’améliorer facilement en passant outre le fichier d’installation : pourquoi demander aux webmasters de lancer un script d’installation alors qu’une simple routine peut vérifier si la table SQL est créée et procéder à sa création le cas échéant, de manière automatique ? C’est désormais chose faite !

Vous pouvez télécharger GrafX Hit Counter v1.2 ici.

Song Displayer : a WordPress plugin to display on your blog what Winamp or SAM Broadcaster is playing photo

Song Displayer : a WordPress plugin to display on your blog what Winamp or SAM Broadcaster is playing

Song Displayer is a WordPress plugin that displays what is playing in Winamp or SAM Broadcaster on your blog.

How it works

The plugin consists of 4 files.

mp3-in.php is a template for Winamp, used to generate the playlist.

mp3-in-sam.php is a template for SAM Broadcaster, used to generate the playlist.

mp3-out.php is the generated playlist with ID3-tags. This file will be uploaded on your server every time a song plays.

song_displayer.php is the WordPress plugin to be placed into your /wp-contents/plugins/ directory.

Lire la suite

Sortie de Mail-it Now! Upload2Server v1.5.2

Sortie de Mail-it Now! version 1.5.2 ce matin.

Je me suis rendu compte que la fonction qui renommait à la volée les fichiers uploadés sur le serveur ne prenait en compte que le premier champs de fichier et ignorait complètement les suivants !

Du coup, l’upload multiple se transformait en upload simple. C’est désormais réglé.

J’en ai profité pour retirer une variable superflue, étendre la gestion des caractères spéciaux dans les noms de fichiers et sécuriser les champs d’entête pour l’envoi du mail.

Changelog pour Mail-it Now! v1.5.2 (Avril 2006)

  • [FIX] : bug dans la fonction upload multiple
  • [ADD] : conversion des caractères spéciaux
  • [ADD] : sécurisation des entêtes
  • [ADD] : general code clean-up

Télécharger Mail-it Now! v1.5.2.

Je recommande donc à tous ceux qui utilisent le script de mettre à jour leur version.

Ce sera probablement la dernière version avant la future mouture que sera la version 2.0.

Démo de Mail-it Now!Télécharger Mail-it Now!.

Linux : désactiver les emails de notification d'une tâche cron photo

Introduction à CRON – les tâches automatisées

Qu’est-ce que CRON ?

Cron est le nom du programme qui permet aux utilisateurs Unix d’exécuter automatiquement des commandes ou des scripts à une heure spécifiée.

Cron est très utile pour lancer une procédure de sauvegarde à heure fixe, optimiser une base de données ou encore supprimer les courriers indésirables de votre boîte aux lettres.

C’est un peu l’équivalent Unix du planificateur de tâches de Windows.

Cron est basé sur une table référençant les tâches à lancer ainsi que l’année, le mois, le jour, l’heure et la minute à laquelle exécuter ces tâches.

En fait ce que l’on appelle communément “Cron” comprend deux éléments distinctifs :

  • crond, un programme résident en mémoire (daemon) qui lance automatiquement les tâches en fonction de la table cron.
  • crontab, un fichier de configuration qui comprend les travaux programmés et la date d’exécution. C’est ce fichier qui permet l’édition de la table des tâches à ordonnancer.

Syntaxe de crontab en image

Cron : dissection

La syntaxe de crontab est donc notée de la façon suivante:

mm hh jj MMM JJJ tâche > log

Légende :

  • mm représente les minutes (de 0 à 59)
  • hh représente l’heure (de 0 à 23)
  • jj représente le numéro du jour du mois (de 1 à 31)
  • MMM représente le numéro du mois (de 1 à 12) ou l’abréviation du nom du mois (jan, feb..)
  • JJJ représente l’abréviation du nom du jour ou le chiffre correspondant au jour de la semaine (0 représente le dimanche, 1 représente le lundi …)
  • tâche représente la commande ou le script shell à exécuter
  • log représente le nom d’un fichier dans lequel stocker le journal des opérations. Si la clause > log n’est pas spécifiée, cron enverra automatiquement un courriel de confirmation. Pour éviter cela il suffit de spécifier > /dev/null

Exemples

Lancer un script PHP tous les lundis à 22h34 :

34 22 * * 1 tâche

Lancer un script PHP tous les premiers du mois à 23h59 :

59 23 1 * * GET

Faire une sauvegarde de fichiers et des bases MySQL :

Voir ce précédent tutoriel.

Voilà, vous savez maintenant l’essentiel sur Cron.

A vous d’écrire ce dont vous avez besoin ;-)

WP-Date FR : un plugin pour afficher la date en français sous WordPress

Je viens de mettre au point un petit plugin pour WordPress afin de permettre l’affichage de la date en français, avec le nom des jours et des mois en français, au lieu des noms anglais imposés.

Cela faisait déjà quelque temps que cela me trottait dans la tête alors pour fêter le lancement du thème Bleuet, je me suis dit qu’il serait de bon ton d’avoir quelque chose d’uni.

Et cela passe forcément par la date à la mode de chez nous.

Le problème

Lorsque vous créez ou utilisez un thème WordPress, celui-ci contient une des ces deux fonctions : the_time() ou the_date(), qui peuvent l’une comme l’autre servir à afficher les la date et l’heure à laquelle sont postés vos billets.

Or, par défaut, les valeurs renvoyées sont en anglais, définies par les variables de la fonction date() en PHP.

Lire la suite

Développeur freelance pour l’IUFM

Cela devait bien arriver : à force de se faire remarquer, il fallait bien que cela me tombe dessus un jour ou l’autre. Je me suis fait attraper par l’un des administrateurs réseau de l’IUFM pour avoir installer OpenOffice et Firefox sur un poste sans avoir demandé la permission. C’est ça d’avoir des gens qui ne jurent que par les technologies propriétaires comme M$ Office et tout le tralala. Résultat : on est obligés d’utiliser Word et son format .doc tout naze alors que le format .odt d’OpenOffice 2.0 pèse quasiment deux fois moins. Et je ne dirais rien sur l’utilisation de Firefox, ce serait complètement redondant sur ce blog. Oops, red herring. Bref, notre formateur TICE entre dans notre salle de classe pour nous emprunter un rétro-projecteur, avant de demander si quelqu’un s’y connaissait en bases MySQL. Evidemment, je n’ai pas pu résister de lever la main… et paf ! enrollé d’office pour le formulaire TICE de l’IUFM. Ayant jeté un coup d’oeil au code, tout est à refaire : il y a des checkboxes au lieu de radiobuttons, c’est codé avec DreamWeaver 2 et FrontPage… Après un petit lifting en XHTML et CSS, le fichier est passé de 48 ko à 22ko.

Le formulaire est fini, j’ai changé tout le design parce que l’original me donnait des hauts-le-coeur. La partie insertion du script est terminée, les différents tests (validation blanche, connexion au serveur défaillante, soumission multiple…) ont été effectuées. Il ne me reste plus que la dernière partie du script qui affiche ce que contient la base. C’est la partie la plus rébarbative qui mélange PHP et tableaux. Il y a tellement de champs que j’ai une scrollbar horizontale incroyable alors j’ai pensé à séparer les différentes parties avec un menu CSS. Fastidieux mais j’ai réussi à négocier le boulot contre quelques bouteilles de blanc. Ben oui ! ^_^