SPIP NOISETTE afficher une citation (php)
Mots clés : geek , SPIP , web & internet
dimanche 10 mai 2020 , par
L’objectif est d’afficher une citation par jour, réflexion extraite d’un fichier txt.
Ce script est basé sur un fichier texte nommé "mescitations.txt". Il contient les citations, une par ligne, encadrées par les balises "blockquote" d’ouverture et de fermeture. Ce fichier est déposé à la racine du site. A l’intérieur, des balises "cite" permettent de citer l’auteur. Voici une ligne du fichier en exemple :
<blockquote><cite>Pierre Bordage</cite> : L'homme qui sacrifie sa liberté au nom de la sécurité jette de la terre sur le rêve humain. </blockquote>L’affichage d’une citation choisie aléatoirement est réalisé par une noisette (à inclure) en php PHP Hypertext Preprocessor Voir Wikipedia PHP :
<?php
$file = file('mescitations.txt', FILE_IGNORE_NEW_LINES | FILE_SKIP_EMPTY_LINES); // Emplacement du fichier qui contient les citations
$start= 1 ; // Constante contenant le nombre de lignes d'en-tête à exclure
$end= 1 ; // Constante (=1 pour supprimer le retour à la ligne de fin de fichier)
$urlPage='/squelettes/citationaleatoire.html'; // URL de la page de ce fichier depuis la racine
$total = count($file); // Total du nombre de lignes du fichier
$end=$total - $end; // Nombre de citations (= nombre de lignes réellement occupées par une citation)
$urlVar=preg_replace('/(^.*?)\?/', '', $urlPage."?id") ; // Préparation de l'URL à récupérer
$urlGet=$urlPage."?id"; // Création de l'URL pour la navigation
$id = isset($_GET[$urlVar])?intval($_GET[$urlVar]):intval(mt_rand($start, $end)); // on récupère l'id par tirage au sort et on l'ajoute à l'URL
echo utf8_encode($file[$id]); // On s'assure de l'encodage en utf8 et on affiche
?>
</div>Je ne sais pas du tout où j’ai trouvé ce code qui m’a longtemps rendu service.
Désormais, cette noisette a été remplacée par une noisette toute en Spip SPIP Système de Publication Pour l’Internet (CMS utilisé pour le présent site). Voir Wiipedia SPIP : SPIP NOISETTE La citation du jour.
En complément, il est aussi possible de consulter SPIP NOISETTE La réflexion du jour.
MAJ : 05/06/2020
