Un module pour afficher une citation au hasard ?

Information importante

En raison d'un grand nombre d'inscriptions de spammers sur notre site, polluant sans relache notre forum, nous suspendons la création de compte via le formulaire de "sign up".

Il est néanmoins toujours possible de devenir adhérent•e en faisant la demande sur cette page, rubrique "Inscription" : https://www.drupal.fr/contact


De plus, le forum est désormais "interdit en écriture". Il n'est plus autorisé d'y écrire un sujet/billet/commentaire.

Pour contacter la communauté, merci de rejoindre le slack "drupalfrance".

Si vous voulez contacter le bureau de l'association, utilisez le formulaire disponible ici, ou envoyez-nous un DM sur twitter.

Bonjour,

Je dois mettre en place sur mon site un module qui affiche une citation au hasard qui sera tirée dans une liste de citation (genre proverbe).

J'ai déjà vu un module similaire mais j'ai oublié son nom, et je n'arrive plus à le retrouver. Vous avez une idée ?

Merci d'avance.

bonjour

Je suis en train de développer un site avec Drupal de présentation de mon activité.
Sur la page d'accueil j'ai un bloc : "Citation du jour".
Je n'ai pas cherché dans les modules existants, pensant peut-être à tort que cela n'existait pas et j'ai créé une vue qui affiche aléatoirement une citation (son auteur et sa source).
J'ai écrit une petite documentation que je tiens à votre disposition :
- création d'un fichier csv pour l'import dans Drupal
- création d'un Type de contenu citation
- import du fichier cvs avec Node import
- création d'une vue citation : affichage aléatoire d'une citation
- dernières finesses : auteur en italique et appuyé à droite, source appuyé à droite, ..

bien cordialement

bonjour

La réponse de Vincent est la bonne : le module Quotes répond parfaitement à ta demande (et à la mienne). Quotes propose plus de fonctionnalités que ce que j'ai développé et a l'énorme avantage d'être mis à jour régulièrement. De plus une nouvelle version pour DP7 est en préparation.

Seule difficulté que j'ai eu : le chargement en masse de citations que j'avais dans un fichier Excel, avec trois colonnes : libellé, auteur et source.

Voilà comment j'ai procédé :

1)J'ai ouvert mon fichier Excel avec OpenOffice Calc : plus facile pour enregistrer ce fichier en csv avec encodage UTF-8. Enregistrer sous / Type Texte CSV (.csv) / Conserver le format actuel / Options de champ : Jeu de caractères Unicode (UTF-8), séparateur de champ {Tab}, séparateur de texte : vider ce champ
Remarque : le cas échéant, on ne garde pas la première ligne contenant les titres de colonne : cela générerait une citation !

2)Ouvrir le fichier csv ainsi créer, Sélectionner tout, Copier

3) Ouvrir Notepad +, coller
Dans le menu : Affichage / Caractères spéciaux / Afficher tous les caractères Nous allons passer par Notepad pour traiter trois types de problèmes :
- supprimer les blancs de fin de ligne : Edition / Enlever les blancs en fin de ligne
- certaines citations n'avaient qu'un libellé (pas d'auteur ni de source) il faut rajouter une Tab (au clavier)avant le CR LF
- d'autres citations avaient un libellé sur plusieurs lignes dans une même cellule Excel. Cela générait un LF. Il faut supprimer ce LF et le remplacer par un \ .
Pour ces deux dernières opérations, je n'ai pas trouvé de solution automatique ?

Une fois que tout cela est fait, toujours dans Notepad : Sélectionner tout / Copier.
Dans Drupal, Gestion de contenus / Créer un contenu / Quotes,
Dans le champ Corps : Coller, Dans le champ Format, cocher Import tab-separated text., Enregistrer

Normalement ça marche !
Mais il a peut-être plus simple : je ne suis qu'un débutant Drupal !

Je rebondis sur ce post car je souhaiterais faire de même mais en passant par CCK et Views (afin de ne pas avoir à rajouter des modules superflus). Or, depuis tout à l'heure tout ce que j'arrive à afficher ce sont les noms des champs mais pas les citations ni les auteurs. En revanche j'arrive bien à afficher le chemin du noeud.

J'ai crée tout d'abord un nouveau type de contenu où il y a deux types de champs texte, un pour la citation, l'autre pour l'auteur.

Direction Views, où j'ai commencé par ajouter une vue de type Noeud. Ensuite, c'est là que ca se complique. J'ai défini dans ma vue par défaut un argument Node:Type puis j'ai séléctionné un validateur de Noeud du type que j'ai crée dans CCK.

Puis, je crée une vue Bloc où je paramètre mes champs Contenu, un critère de tri pour que ca s'affiche aléatoirement et enfin un filtre pour n'afficher que les citations publiées.
Et ca ne fonctionne pas...

J'espère avoir été assez clair dans mes explications... Avez vous une solution?

Merci de votre aide...

Salut,

Je viens juste, il y'a une heure de tester le module Quotes, depuis le temps que j'ai posté ce message !!! D'ailleurs j'en suis très ravi et en ce qui me concerne, entre le dilème d'ajouter une nouvelle vue et donc de nouveaux accès à la bd, j'ai trouvé équivalent le fait d'ajouter un nouveau module qui répond parfaitement et bien plus à mes besoins. D'ailleurs je te conseille vivement de tester ce module car il répond en 5mn à tes besoins (le module créé un nouveau type de contenu, à mon sens, je ne pense pas que tu économises qq chose en utilisant views).

Sinon pour ta vue, est-ce que tu arrives à afficher qq chose sans les critères ?

Disons que je passerais sur Quotes si je vois que je ne m'en sors pas. Mais pour un truc aussi simplissime que ça (enfin, je pensais...) je me disais que le duo CCK/Views suffisait amplement.

Bon, si tu parles des critères de tri, j'obtiens le même résultat, sauf que le noeud affiché resté le même (je le vois car j'arrive à afficher le chemin du noeud).

Y'a t'il un truc que j'ai mal paramétré? Je me casse la tête depuis une heure dessus... C'est dingue quand même...

Relations
Taxonomie : Nœud

Arguments
Aucun défini

Champs
(node) Contenu : Extrait de Par défaut
(node) Contenu : auteur de Texte simple
Nœud : Chemin Chemin

Critères de tri
Global : Au hasard asc

Filtres
Nœud : Publié Oui
Nœud : Type = citations

EDIT: c'est bon, je m'en suis sortis :)
c'était du côté de CCK que venait le problème.
Merci en tout cas pour l'aide :)