Fin de page
Nov 26

Quelques exemples mettant en œuvre l’extension Random Number Generator
(idea) Rafraîchissez la page pour voir les différents exemples changer !

Couleurs

Vous voulez changer de couleurs ?
Vous voulez changer de couleurs ?
Vous voulez changer de couleurs ?
style="color:#[random-number from=’0′ to=’16777215’]%06X[/random-number];"

 

Lettres

E – N – C – V – X
[random-number from=’65’ to=’90’]&#%d; – &#%d; – &#%d; – &#%d; – &#%d;[/random-number]

 

Images

<img src="./jour[random-number from=’1′ to=’31’ format=’%02s’].gif"…

Share

Lien permanent vers Autres exemples aléatoires… Rédigé par Whiler \\ Tags : , , , , , , ,

Nov 25

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 »

Share

Lien permanent vers Comment publier une extension dans le référentiel WordPress ? Rédigé par Whiler \\ Tags : , , , , , , , ,

Nov 24

Cette nouvelle version me permet de publier la capture d’écran de l’article précédent ainsi que de permettre l’utilisation d’un format utilisant jusqu’à 5 champs de spécification simultanément.

On peut par exemple imaginé la génération d’une couleur sous cette forme :

Label1.Font.Color := RGB(123, 117, 51);

La précédente ligne a été générée avec le tag suivant :

[random-number from=0 to=255]%d, %d, %d[/random-number]

 

Une erreur est également générée si le format est invalide. Si on utilise par exemple cette commande, [random-number]%777[/random-number], on obtient :

Format invalide : '%777'

Share

Lien permanent vers Random Number Generator 1.1 Rédigé par Whiler \\ Tags : , , , , , , , ,

Nov 24

Un exemple très simple qui illustre parfaitement la notion d’aléatoire.

Soient 2 dés à 6 faces :
dice1.png dice3.png dice5.png
dice2.png dice4.png dice6.png
combien avez-vous obtenu ?
Une face Une face

Pour réaliser cette page, j’ai installé l’extension Random Number Generator et j’ai utilisé les tags suivants :

[random-number from='1' to='6']dice%d.png[/random-number]
dice[random-number from='1' to='6' format='%d'].png

Share

Lien permanent vers Un exemple simple d’utilisation du Random Number Generator Rédigé par Whiler \\ Tags : , , , , , , ,

Nov 24

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
    • donc α < β
  • φ : 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…

Share

Pages : 1 2

Lien permanent vers Random Number Generator 1.0 Rédigé par Whiler \\ Tags : , , , , , , , , ,

Début de la page