Afin de déboguer une application AndroidW, je me suis rapidement créer une application en DelphiW pour récupérer mes contacts Google au format XMLW…
La méthode est relativement simple et expliquée sur cette page : Developer’s Guide: Protocol – Google Contacts Data API – Google Code
Pour cela, j’ai créé une nouvelle application Fiche VCLW, sur laquelle j’ai ajouté :
- 1 TMemo : pour afficher le XML
- 4 TLabeledEdit : pour saisir les informations nécessaires à l’authentification
- 1 TButton : pour exécuter la récupération des informations
- 1 TIdHTTP : pour me connecter au site de Google
- 1 TIdSSLIOHandlerSocketOpenSSL : pour supporter le protocole SSL (utilisé par Google)
J’ai spécifié que le TIdHTTP utilise le TIdSSLIOHandlerSocketOpenSSL comme IOHandler.
Puis j’ai double-cliqué sur le bouton pour générer sa méthode Click dans laquelle j’ai utilisé le code suivant :
Lire la suite »
En juin, j’avais publié un article expliquant comment intégrer un code QR dynamique à vos applications Android… cette fois, suite à des demandes que j’ai eu après avoir publié l’application Android W.Freebox Messages Player, je vous offre un bout de code sans prétention qui permet de lire des fichiers wavW encodé au format a-law PCMW.
Il a le mérite de fonctionner (testé uniquement avec Froyo) même s’il est probablement facilement améliorable. 
Je n’ai pas réinventé la roue, je me suis contenté de mettre ensemble des bouts de codes trouvés au fil du Web…
Lire la suite »
Pages : 1 2
Rédigé par Whiler
\\ Tags : Android, API, coloration syntaxique, java, son
Dans un précédent article, nous avons vu comment développer une extension.
Lorsque celle-ci est fonctionnelle, on peut vouloir la mettre à disposition de la communauté.
N’ayant pas immédiatement trouvé comment publier ma propre extension, je décris dans cet article les quelques étapes nécessaires :
- Soumettre son extension en allant sur une page dédiée du site de WordPressW. C’est la première chose à faire car sa validation peut prendre un certain temps, dans mon cas, un peu plus d’une journée.
- Télécharger une copie d’un fichier exemple readme.txt.
- On le sauvegarde à la racine du répertoire de son extension et on l’édite pour spécifier les informations de son extension.
- Les captures d’écran éventuelles devront également être sauvegardées à la racine.
Lorsque la demande est approuvée, on reçoit un email qui contient toutes les informations nécessaires, et dès lors que le projet a été créé dans le référentiel SVNW des extensions de WordPress, on peut passer à la publication…
En utilisant un client SVN, comme TortoiseSVN, on pourra se connecter et publier : Lire la suite »
J’ai effectué quelques modifications pour étoffer l’exemple afin que la balise supporte des attributs, mais également pour corriger quelques bugs découverts suites au premier déploiement dans de réelles conditions.
On peut maintenant ainsi utiliser la balise :
[random-number]
[random-number/]
[random-number from='α']
[random-number to='β'/]
[random-number from='α' to='β' format='φ']
[random-number]φ[/random-number]
[random-number from='α' to='β']φ[/random-number]
- α : correspond à la valeur entière minimale incluse souhaitée
- β : correspond à la valeur entière maximale incluse souhaitée
- φ : format à utiliser. φ ne doit contenir qu’un seul champ de spécification. Actuellement, si vous en mettez plusieurs, une erreur sera générée. Nous verrons dans un prochain article comment la gérer.
- α, β & φ sont optionnels. Leurs valeurs sauvegardées dans les réglages seront utilisées si elles sont omises.
Pour cela, j’ai essentiellement modifié la fonction random_number_generator_shortcode_handler() :
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32
| /**
* Fonction renvoyant un chiffre aléatoire
* @param string $atts Attributs éventuellement passés dans le tag
* @param string $content Format à utiliser si encapsulé par le tag
* @return HTML
*/
function random_number_generator_shortcode_handler ($atts, $content) {
// [random-number from="2" to="72" format="%b"]%d minutes[/random-number]
// output: an integer value between 2 & 72 followed by the word 'minutes'
// affiche : une valeur entière entre 2 & 72 suivie du mot 'minutes'
// Récupération des paramètres depuis les options de WP
$random_number_generator_from = get_option ('random_number_generator_from');
$random_number_generator_to = get_option ('random_number_generator_to');
$random_number_generator_format = get_option ('random_number_generator_format');
// Récupération des paramètres éventuels avec les options sauvegardées comme valeur par défaut
extract(shortcode_atts (array('from' => $random_number_generator_from, 'to' => $random_number_generator_to, 'format' => $random_number_generator_format), $atts));
// Si on a entouré du texte avec la balise, c'est que ce texte est LE format à utiliser
// Il devrait contenir un champ de spécification pour afficher le nombre aléatoire
if ($content != "") {
$format = $content;
}
// Valide les différentes options
validate_data ($from, $to, $format);
// Génération aléatoire
mt_srand();
// Renvoie un nombre aléatoire
return sprintf($format, mt_rand($from, $to));
} |
Les bugs corrigés sont :
- Chemins codés en dur… j’avais mis le répertoire avec des « _ » et WordPress l’a publié avec des « -« … Le code utilise maintenant un chemin totalement dynamique.
- Le format de mon fichier php n’était pas en UTF-8… pour être certain d’avoir le bon format, j’ai mis à jour mes sources via l’interface d’administration de WordPress, puis j’ai téléchargé le fichier modifié via FTP depuis mon hébergeur pour ensuite le publier via SVN
L’ensemble du code source est disponible sur la page suivante…
Dans cet article, je vous propose de voir comment coder une nouvelle extension WordPress, en partant de rien…
Cette extension pourra elle-même servir de base pour la création de nouvelles extensions. Elle met en œuvre les fonctionnalités suivantes :
- Détection d’un mot-clé dans un article afin de le remplacer par une valeur choisie
- Interface multilingue
- Utilisation d’options spécifiques à l’extension
- Interface pour le réglage de ces options
- Ajout d’un sous-menu pour accéder à la page de réglages
- Ajout d’une nouvelle action pour l’extension dans la page des extensions installées pour également accéder à la page des réglages
- Utilisation de JavaScript
Concrètement, coté utilisateur final, le tag utilisé sera remplacé par un nombre aléatoire… Libre à vous d’imaginer des extensions pouvant faire des traitements bien plus conséquents.
Cet exemple est fonctionnel, à partir des version 2.7 (j’utilise des options qui n’existaient pas avant) de WordPress. Il fonctionne également avec WordPress MU.
On commence par créer l’arborescence :
- Dans le répertoire des extensions (
<WP>/wp-content/plugins/), création d’un répertoire qui hébergera notre extension : random_number_generator
- Création d’un sous-répertoire qui hébergera nos fichiers de traduction :
languages
Puis on crée les premiers fichiers qui nous seront nécessaires :
Dans le répertoire de notre extension :
<WP>/wp-content/plugins/random_number_generator/
- création d’un fichier texte dans lequel on va coder notre extension :
random_number_generator.php
(!!) Assurez-vous de ne pas laisser l’extension .txt
- création d’un fichier texte dans lequel on mettra du JavaScript :
random_number_generator.js
On a donc ceci :
+---plugins
| |
| [...]
| |
| +---random_number_generator
| | | random_number_generator.js
| | | random_number_generator.php
| | |
| | \---languages
| |
| [...]
Il ne reste plus qu’à coder toutes les fonctionnalités précédemment citées…
Pages : 1 2 3
Rédigé par Whiler
\\ Tags : addons, API, blog, coloration syntaxique, extensions, HTML, localisation, plugin, RNG, script, translate, unicode, WordPress
|
|
Derniers commentaires