Autre chose

Bon,

j'ai du mal à retrouver mon spip, après quelques temps d'abandon. Mais je suis sûr que ce n'était pas possible avant. L'est-ce maintenant ?

Je ne le sais pas.

J'ai une boucle mots qui rend tous les mots-clés (auteurs de livres) liés à l'article "livre".
A l'intérieur de cette boucle, j'ai une autre boucle qui donne les livres que cet auteur a déjà pu écrire.

Je me retrouve avec :

- auteur 1
   -titre 1
   -titre 2
- auteur 2
   - titre 3

Je sais même faire, avec les codes optionnels

- auteur 1
   -titre 1
   -titre 2
- auteur 2:
  désolé, cet auteur n'a rien publié d'autre

Mais je ne sais pas faire :

- auteur 1
   -titre 1
   -titre 2

parce que auteur 2 n'a rien publié

ou:

"désolé, ces auteurs n'ont rien publié" quand les deux auteurs n'ont rien publié d'autres.

Je dis que je ne sais pas faire : avec un peu de php, je le pourrai. Mais uniquement en "pur" spip... je ne sais pas faire :frowning:

Une idée ?

JMB

Essaye peut-être ça ; je n'ai pas testé (sans mise en forme) :

<BOUCLE_auteurs(MOTS) {id_article} {doublons auteurs}>
  <B_livres>
    - #TITRE
  <BOUCLE_livres(ARTICLES) {id_mot}>
    - - #TITRE
  </BOUCLE_livres>
</BOUCLE_auteurs>
<B_autres_auteurs(MOTS) {id_article} {doublons}>
  Désolé, les auteurs suivants n'ont pas produit d'autes livres :
<BOUCLE_autres_auteurs(MOTS) {id_article} {doublons auteurs} {","}>
  #TITRE
</BOUCLE_autres_auteurs>

Le 30 déc. 08 à 14:46, jmb a écrit :

Bon,

j'ai du mal à retrouver mon spip, après quelques temps d'abandon. Mais je suis sûr que ce n'était pas possible avant. L'est-ce maintenant ?

Je ne le sais pas.

J'ai une boucle mots qui rend tous les mots-clés (auteurs de livres) liés à l'article "livre".
A l'intérieur de cette boucle, j'ai une autre boucle qui donne les livres que cet auteur a déjà pu écrire.

Je me retrouve avec :

- auteur 1
  -titre 1
  -titre 2
- auteur 2
  - titre 3

Je sais même faire, avec les codes optionnels

- auteur 1
  -titre 1
  -titre 2
- auteur 2:
désolé, cet auteur n'a rien publié d'autre

Mais je ne sais pas faire :

- auteur 1
  -titre 1
  -titre 2

parce que auteur 2 n'a rien publié

ou:

"désolé, ces auteurs n'ont rien publié" quand les deux auteurs n'ont rien publié d'autres.

Je dis que je ne sais pas faire : avec un peu de php, je le pourrai. Mais uniquement en "pur" spip... je ne sais pas faire :frowning:

Une idée ?

JMB

_______________________________________________
liste spip
spip@rezo.net - désabonnement : spip-off@rezo.net

Infos et archives : http://listes.rezo.net/mailman/listinfo/spip

Documentation de SPIP : http://www.spip.net/

irc://irc.freenode.net/spip ou http://embed.mibbit.com/?server=irc.freenode.net&channel=%23spip
---------------------------------------------------------------------------------------
Orange vous informe que cet e-mail a ete controle par l'anti-virus mail.
Aucun virus connu a ce jour par nos services n'a ete detecte.

Essaye peut-être ça ; je n'ai pas testé (sans mise en forme) :

Merci d'avoir essayé... mais je ne pense pas que ce fera l'affaire. En fait, je veux juste pouvoir savoir qu'il existe (ou qu'il n'existe pas) d'autres livres pour au moins un des auteurs du bouquin sur lequel on est.
Le but est de faire des onglets que je vais conditionner. Si jamais l'auteur (ou les auteurs) on publié a moins un autre bouquin, j'affiche l'onglet et le contenu. Sinon, je n'affiche pas .
Je le fais quand la boucle est simple et pas imbriquée :

<ul class="tabnav">
  <li><a href="#principal">Le livre</a></li>
  <B_Pplus><li><a href="#plus">Pour en savoir plus</a></li>
      <BOUCLE_Pplus(ARTICLES){id_rubrique=6}{titre=#TITRE*}{id_mot=31}> </BOUCLE_Pplus>
<B_Ppresse><li><a href="#presse">La presse en a parl&eacute;</a></li>
     <BOUCLE_Ppresse(ARTICLES){id_rubrique=6}{titre=#TITRE*}{id_mot=28}> </BOUCLE_Ppresse>
   <li><a href="#auteurs">Auteur(s)</a></li>
   <li><a href="#themes">Th&egrave;me(s)</a></li>
</ul>

Dans l'exemple, on le voit pour les onglets "Plus" et "Presse" qui ne s'affichent que si on a la présence d'au moins un article. Mais auteurs et thèmes, c'est plus compliqué à cause des boucles imbriquées.
Je ne vais pouvoir m'en sortir qu'avec du php et en cumulant les divers compteurs de boucles. Je pensais qu'une ruse ou une nouvelle fonctionnalité de la version 2 allait pourvoir m'en libérer :frowning:

Il manque un site qui donne des exemples de boucles (mais peut-être existe-t-il) et qui pourrait ainsi nous donner des idées.

Le 30 déc. 08 à 20:02, jmb a écrit :

Essaye peut-être ça ; je n'ai pas testé (sans mise en forme) :

Merci d'avoir essayé... mais je ne pense pas que ce fera l'affaire. En fait, je veux juste pouvoir savoir qu'il existe (ou qu'il n'existe pas) d'autres livres pour au moins un des auteurs du bouquin sur lequel on est.
Le but est de faire des onglets que je vais conditionner. Si jamais l'auteur (ou les auteurs) on publié a moins un autre bouquin, j'affiche l'onglet et le contenu. Sinon, je n'affiche pas .
Je le fais quand la boucle est simple et pas imbriquée :

<ul class="tabnav">
<li><a href="#principal">Le livre</a></li>
<B_Pplus><li><a href="#plus">Pour en savoir plus</a></li>
    <BOUCLE_Pplus(ARTICLES){id_rubrique=6}{titre=#TITRE*}{id_mot=31}> </BOUCLE_Pplus>
<B_Ppresse><li><a href="#presse">La presse en a parl&eacute;</a></li>
   <BOUCLE_Ppresse(ARTICLES){id_rubrique=6}{titre=#TITRE*}{id_mot=28}> </BOUCLE_Ppresse>
<li><a href="#auteurs">Auteur(s)</a></li>
<li><a href="#themes">Th&egrave;me(s)</a></li>
</ul>

Dans l'exemple, on le voit pour les onglets "Plus" et "Presse" qui ne s'affichent que si on a la présence d'au moins un article. Mais auteurs et thèmes, c'est plus compliqué à cause des boucles imbriquées.
Je ne vais pouvoir m'en sortir qu'avec du php et en cumulant les divers compteurs de boucles. Je pensais qu'une ruse ou une nouvelle fonctionnalité de la version 2 allait pourvoir m'en libérer :frowning:

pas regardé en détail mais tester un critère {1,1} pour un 2e article et seulement afficher le nom de l'auteur et la liste des livres ?

Claude

Il manque un site qui donne des exemples de boucles (mais peut-être existe-t-il) et qui pourrait ainsi nous donner des idées.

pas regardé en détail mais tester un critère {1,1} pour un 2e article
et seulement afficher le nom de l'auteur et la liste des livres ?

salut Claude

Pas pigé :frowning:

Le 30 déc. 08 à 22:58, jmb a écrit :

pas regardé en détail mais tester un critère {1,1} pour un 2e article
et seulement afficher le nom de l'auteur et la liste des livres ?

salut Claude

Pas pigé :frowning:

1/ je récupère les auteurs de l'article
2/ je regarde s'il ont plus d'un article (ici, s'ils ont au moins un second
article)
3/ si oui :
      a/ j'affiche leur nom
      b/ j'affiche la liste des *autres* titres

voici (avec une petite scorie à résoudre dans les ul et li) mis sur Cgecaf, pour les 3 cas :

j'enlève demain (j'aurais pas du vider mon site de test en ligne) :

<!-- Auteurs de l'article -->
  
[(#REM) Autres livres des auteurs ]

        <B_auteurs_livre>[(#REM) je recupere les auteurs ]

                <!--h2>Autres titres</h2-->

        <BOUCLE_auteurs_livre(MOTS) {id_article} {id_groupe=4} {par titre}><!-- pour toi ici c'est (AUTEURS) {id_article} {par nom} -->

<B_livre_auteur>

        <div class="menu">

        <ul><li>

        [(#REM) je verifie si l'auteur a plus d'un article ]
     <BOUCLE_livre_auteur(ARTICLES) {id_mot} {1,1}><!-- ici, c'est {id_auteur} {1,1}
     </BOUCLE_livre_auteur>
[(#REM) je n'affiche rien avant cette partie optionnelle ]

         <B_autres_titres>
         [(#REM) je vais rechercher le nom de l'auteur plus haut ]
                <ul>
                <h2>[(#_auteurs_livre:TITRE)]</h2> <!-- pour toi c'est NOM et pas TITRE -->
                <strong>aussi de cet auteur :</strong>

         [(#REM) j'elimine le livre courant et affiche les autres ]
                 <BOUCLE_autres_titres(ARTICLES) {id_mot} {id_article!=#_article_principal:ID_ARTICLE} {par titre}><!-- ici, evidemment {id_auteur} et pas {id_mot} -->
                <li>[(#TITRE)]</li>
             </BOUCLE_autres_titres>

      </B_livre_auteur>

                </ul>
                </li>
        </BOUCLE_auteurs_livre>
        </ul>
        </div>

        </B_auteurs_livre>

  </div><!-- fin "menu" -->

  </B_auteurs_livre>

Claude

Le 31 déc. 08 à 18:54, dlatr a écrit :

Le 30 déc. 08 à 22:58, jmb a écrit :

pas regardé en détail mais tester un critère {1,1} pour un 2e article
et seulement afficher le nom de l'auteur et la liste des livres ?

salut Claude

Pas pigé :frowning:

1/ je récupère les auteurs de l'article
2/ je regarde s'il ont plus d'un article (ici, s'ils ont au moins un second
article)
3/ si oui :
    a/ j'affiche leur nom
    b/ j'affiche la liste des *autres* titres

voici (avec une petite scorie à résoudre dans les ul et li) mis sur Cgecaf, pour les 3 cas :
Anarcho-syndicalisme et luttes ouvrières - Cgecaf
PariSquat : des squats politiques à Paris, 1995-2000 - Cgecaf
http://cgecaf.com/article2792..html

j'enlève demain (j'aurais pas du vider mon site de test en ligne) :

en fait je suis bête, voici les mêmes pages pour test :

comme ça, je pourrais corriger plus tard si ça me dit

claude

<!-- Auteurs de l'article -->
  
[(#REM) Autres livres des auteurs ]

      <B_auteurs_livre>[(#REM) je recupere les auteurs ]

              <!--h2>Autres titres</h2-->

      <BOUCLE_auteurs_livre(MOTS) {id_article} {id_groupe=4} {par titre}><!-- pour toi ici c'est (AUTEURS) {id_article} {par nom} -->

<B_livre_auteur>

      <div class="menu">

      <ul><li>

      [(#REM) je verifie si l'auteur a plus d'un article ]
   <BOUCLE_livre_auteur(ARTICLES) {id_mot} {1,1}><!-- ici, c'est {id_auteur} {1,1}
   </BOUCLE_livre_auteur>
[(#REM) je n'affiche rien avant cette partie optionnelle ]

       <B_autres_titres>
       [(#REM) je vais rechercher le nom de l'auteur plus haut ]
              <ul>
              <h2>[(#_auteurs_livre:TITRE)]</h2> <!-- pour toi c'est NOM et pas TITRE -->
              <strong>aussi de cet auteur :</strong>

       [(#REM) j'elimine le livre courant et affiche les autres ]
               <BOUCLE_autres_titres(ARTICLES) {id_mot} {id_article!=#_article_principal:ID_ARTICLE} {par titre}><!-- ici, evidemment {id_auteur} et pas {id_mot} -->
              <li>[(#TITRE)]</li>
           </BOUCLE_autres_titres>

    </B_livre_auteur>

              </ul>
              </li>
      </BOUCLE_auteurs_livre>
      </ul>
      </div>

      </B_auteurs_livre>

  </div><!-- fin "menu" -->

  </B_auteurs_livre>

Claude
_______________________________________________
liste spip
spip@rezo.net - désabonnement : spip-off@rezo.net

Infos et archives : http://listes.rezo.net/mailman/listinfo/spip

Documentation de SPIP : http://www.spip.net/

irc://irc.freenode.net/spip ou http://embed.mibbit.com/?server=irc.freenode.net&channel=%23spip