SPIP-Contrib

SPIP-Contrib

عربي | Deutsch | English | Español | français | italiano | Nederlands

288 Plugins, 197 contribs sur SPIP-Zone, 192 visiteurs en ce moment

Accueil > Squelettes > Outils pour squelettes > Squelettes selon contexte > Affichages sur mots-clés > Brève qui défile > Une brève qui défile

Une brève qui défile

31 mai 2007 – par vianatalia – 26 commentaires

13 votes

Le but de cette contrib est de permettre à l’équipe de rédaction de faire défiler une brève au choix sans l’intervention du webmestre. Exemple ici.

Principe

Pour faire défiler quelque chose nous ne pouvons pas nous passer de javascript (merci au site jejavascript !). Le principe est très simple : dans le squelette en question (rubrique.html par exemple), il faut procéder en deux étapes :
-  Demander le défilement de la brève en question dans la partie

du squelette (boucle + javascript)
-  Placer la brève à l’endroit choisi dans la partie body et la personnaliser dans la feuille de style correspondante.

Partie head

Dans cette partie nous allons d’abord aller chercher la brève, puis faire appel à javascript et programmer le défilement :

Nous trouvons dans les première et dernière ligne les [ et ] appartenant à (#TITRE), qui se trouve sur la 4e ligne. Ainsi, s’il n’y a pas de titre, le code javascript ne s’affiche pas. Dans cet exemple, j’ai inclus le titre et le texte dans le défilement (c’est le choix de l’équipe de rédaction). Les deux filtres texte_script et textebrut permettent au texte de s’afficher sans encombre quelque soit la langue et les signes de ponctuation utilisés, sauf les guillemets ("...") qui sont interdits dans ces brèves-là.

Vous pouvez régler la vitesse de défilement à la ligne 13 setTimeout("textdefil()",100);, en remplaçant le chiffre 100. Plus le chiffre est petit, plus le défilement est rapide.

Si vous souhaitez donner le choix à votre équipe de rédaction de faire défiler ou pas une brève parmi d’autres, vous pouvez y ajouter un mot-clef, « faire défiler » par exemple. Dans ce cas, il faudra le créer (dans un groupe de mots-clef « techniques »), en relever l’ID et la placer dans votre boucle : <BOUCLE_Actu (BREVES){id_rubrique}{id_mot=X}{par date}{inverse}{0,1}>.

Partie body

Dans la partie body, nous allons utiliser un formulaire pour afficher la brève en question, en utilisant strictement la même boucle que dans la partie head, sans oublier de la renommer :

Lorsqu’on clique sur la brève, on va à l’URL choisie par l’équipe de rédaction. Si vous souhaitez qu’on arrive à la brève en question, il suffit de changer #URL_SITE par #URL_BREVE dans l’attribut action du formulaire.

Et le CSS correspondant à placer dans votre feuille de style (celle ci-dessous correspond à notre exemple) :

Et voilà votre brève qui défile !

Dernière modification de cette page le 31 août 2008

Retour en haut de la page

Tout afficher

Vos commentaires

  • Le 28 juin 2011 à 17:21, par Steph en Bretagne En réponse à : Une brève qui défile

    Bonjour,

    Merci pour cette contrib.
    Je me posais une question : est-il possible que ce texte défilant apparaisse sur toutes les pages de mon site ? Et si oui, comment faire ?

    Mon but : signaler pendant quelques jours qu’il va y avoir des travaux sur mon site (qui n’affecteront pas bcp le contenu mais rendre des liens inopérants).

    Pour info, je suis sous Sarka-SPIP.

    Par avance, je vous remercie de vos réponses.

    Répondre à ce message

  • Le 17 décembre 2009 à 11:18, par ? En réponse à : afficher plusieurs breves ?

    bonjour,

    ca fonctionne bien ;
    mais comment afficher plusieurs breves ?
    quand on change le critere de la boucle et qu’on supprime la clause ne faisant appel qu’à une seule breve, plutot que de faire défiler les breves les unes à la suite des autres cela créé un bandeau défilant par breve.

    comment faire pour qu’elles défilent les unes derriere les autres dans le meme bandeau ?

    merci

    Répondre à ce message

  • Le 17 avril 2009 à 00:35, par manue En réponse à : Une brève qui défile

    Est ce qu’il serait possible d’appliquer la même solution pour faire défiler en page d’accueil les articles les plus récents ?
    Merci d’avance pour vos réponses
    Manue

    Répondre à ce message

  • Le 13 février 2009 à 15:07, par Finnh En réponse à : Une brève qui défile

    Voilà, j’ai trouvé : c’était {doublon} qui empêchait le fonctionnement sur la page sommaire.

    Dans le head :

    <!-- ajout pour défilement -->
    <BOUCLE_Actu(BREVES) {titre_mot==^defilement} {par date} {inverse} {0,1}>

    [<script type="text/javascript">
    <!-- //PLF-http://www.jejavascript.net/
    var position=0;
    var msg="(#TITRE|texte_script|textebrut) - [(#TEXTE|texte_script|textebrut)]";
    var msg="          "+msg;
    var longue=msg.length;
    var fois=(100/msg.length)+1;
    for(i=0;i<=fois;i++) msg+=msg;
    function textdefil() {
    document.actus.deftext.value=msg.substring(position,position+100);
    position++;
    if(position == longue) position=0;
    setTimeout("textdefil()",150);
    }
    window.onload = textdefil;
    //-->
    </script>]

    </BOUCLE_Actu>
    <!-- fin ajout -->

    Dans « body » :

    <!-- ajout défilement brève -->

    <BOUCLE_ReActu(BREVES) {titre_mot==^defilement} {par date} {inverse} {0,1}>
    <div id="defiltext">
    <form name="actus" action="#URL_BREVE" method="post">                       
    <input name="deftext" type="submit" value="deftext" size="80">
    </form></div> </BOUCLE_ReActu>

    <!-- fin ajout -->

    J’ai emprunté une partie du code « éditorial » dans le squelette MiniGriSpip : c’est la brève la plus récente à laquelle est attribué le mot-clé « defilement » qui défile.

    Ce que j’aimerais maintenant c’est arriver à faire défiler à la suite les deux ou trois dernières brèves possédant ce mot-clé... Si quelqu’un a une idée ?

    Répondre à ce message

  • Le 10 février 2009 à 18:50, par Finnh En réponse à : Une brève qui défile

    Bonjour,

    J’ai essayé plein d’options pour faire défiler ma brève dans le sommaire (pas eu encore le temps de le tester dans une rubrique - je n’en ai pas l’usage), mais le défilement refuse de s’afficher. Dans la source, le script fonctionne dans le « head », mais rien dans body.

    Le script dans le head :

    <!-- ajout pour défilement -->
    <BOUCLE_Actu(BREVES) {titre_mot==^defilement} {doublons} {par date} {inverse} {0,1}>

    [<script type="text/javascript">
    <!-- //PLF-http://www.jejavascript.net/
    var position=0;
    var msg="(#TITRE|texte_script|textebrut) [(#TEXTE|texte_script|textebrut)]";
    var msg="          "+msg;
    var longue=msg.length;
    var fois=(100/msg.length)+1;
    for(i=0;i<=fois;i++) msg+=msg;
    function textdefil() {
    document.actus.deftext.value=msg.substring(position,position+100);
    position++;
    if(position == longue) position=0;
    setTimeout("textdefil()",100);
    }
    window.onload = textdefil;
    //-->
    </script>]

    </BOUCLE_Actu>
    <!-- fin ajout -->

    Résultat dans la source :

    <!-- ajout pour défilement -->

    <script type="text/javascript">
    <!-- //PLF-http://www.jejavascript.net/
    var position=0;
    var msg="Entretien sur Radio Activ Radio Activ, basée à Langueux (101.9) a diffusé un entretien (une heure) avec trois membres du Collectif Urgence Réchauffement Climatique.";
    var msg="          "+msg;
    var longue=msg.length;
    var fois=(100/msg.length)+1;
    for(i=0;i<=fois;i++) msg+=msg;
    function textdefil() {
    document.actus.deftext.value=msg.substring(position,position+100);
    position++;
    if(position == longue) position=0;
    setTimeout("textdefil()",100);
    }
    window.onload = textdefil;
    //-->
    </script>

    <!-- fin ajout -->

    Le script dans « body » :

    <!-- ajout défilement brève -->

    <BOUCLE_ReActu(BREVES) {titre_mot==^defilement} {doublons} {par date} {inverse} {0,1}>
    <div id="defiltext">
    <form name="actus" action="#URL_BREVE" method="post">                       
    <input name="deftext" type="submit" value="deftext" size="100">
    </form></div> </BOUCLE_ReActu>

    <!-- fin ajout -->

    Résultat dans le source : (Rien à part les commentaires avant et après)

    <!-- ajout défilement brève -->


    <!-- fin ajout -->

    Mon site : http://centrale-ploufragan.org

    Si quelqu’un y voit plus clair que moi...

    Merci

    Répondre à ce message

  • Le 6 février 2009 à 18:25, par emakom En réponse à : Une brève qui défile

    salut,
    il n’y a pas de d’apostrophes ou de guillemets dans la brève mais le problème persiste toujours.

    Répondre à ce message

  • Le 5 février 2009 à 15:01, par vianatalia En réponse à : Une brève qui défile

    Bonjour, vérifiez que votre brève ne contient pas d’apostrophes ou de guillemets, comme je l’indique dans la contrib. Ce peut être un élément bloquant.

    Répondre à ce message

  • Le 3 février 2009 à 18:52, par emakom En réponse à : Une brève qui défile

    merci ! de votre apport cas s’affiche mais
    seulement « deftext » et non le texte de la brève quand je précise l’identifiant de la rubrique
    voici le code que j’ai mis a l’endroit voulu :




    avez vous une idée ?

    Répondre à ce message

  • Le 2 février 2009 à 16:58, par emakom En réponse à : Une brève qui défile

    salut, j’utilise spip 1.9.2e
    dans le squelette sommaire.html quand j’insère le code sa ne s’affiche sur la page d’accueil , mais cela marche parfaitement avec rubrique.html ,cela veut dire que le texte défilant ne se voit que sur la page de la rubrique dans laquelle se trouve la brève ,peut-on le mettre sur la page d’accueil ?

    Répondre à ce message

  • Le 2 février 2009 à 17:17, par vianatalia En réponse à : Une brève qui défile

    Bonjour, une idée : le code se trouve-t-il bien à l’intérieur d’une boucle rubrique ? Cordialement.

    Répondre à ce message

Répondre à cet article

Qui êtes-vous ?

Pour afficher votre trombine avec votre message, enregistrez-la d’abord sur gravatar.com (gratuit et indolore) et n’oubliez pas d’indiquer votre adresse e-mail ici.

Ajoutez votre commentaire ici Les choses à faire avant de poser une question (Prolégomènes aux rapports de bugs. )
Ajouter un document

Retour en haut de la page

Ça discute par ici

  • Balises #SWITCH et #CASE

    20 mai 2016 – commentaires

    Ce plugin introduit dans SPIP les balises #SWITCH, #CASE et #CASE_DEFAULT qui reproduisent le fonctionnement des switch... case... default... du php et du C. Utilisation Les balises #SWITCH, #CASE et #CASE_DEFAULT permettent de comparer un (...)

  • Saisies

    27 mars 2010 – 481 commentaires

    Introduction Créer un formulaire est une tâche toujours un peu répétitive : les champs ont souvent les mêmes propriétés, le même accompagnement (message d’erreur, explication, ...) et la même structure HTML. Ce plugin est un outil pour les développeurs (...)

  • CookieChoices

    26 septembre 2014 – 18 commentaires

    Affiche un avertissement à l’usage des cookies en utilisant le script cookiechoices fourni par google Introduction Par défaut, SPIP est respectueux de la vie privée de ses visiteurs et ne pose pas de cookies de traçages ou publicitaires. Ce (...)

  • Écrire la documentation d’un plugin SPIP

    25 février 2014 – commentaires

    Cet article explique en 4 étapes comment créer les liens de la documentation d’un plugin sur Contrib. Il s’adresse aussi aux administrateurs et administratrices de SPIP-contrib qui auraient des trous de mémoire ;) Prérequis : vous disposez d’un (...)

  • Slick

    17 mai – 11 commentaires

    Intégration à SPIP du carrousel Slick : https://kenwheeler.github.io/slick/ Fonctions de Slick Son utilisation permet d’afficher une liste d’éléments défilants, en l’occurrence ici une série de photographies. Par les configurations proposées, il est (...)

Ça spipe par là