#AUTEURS + co-auteurs

Bonjour,

j’essaye de faire un truc qui a surement déjà été fait souvent, mais je ne sais pas quoi taper dans mon moteur de recherche pour trouver des astuces …

Alors:

Quand je suis dans un article, à coté j’affiche « les autres articles de cet auteur ».
Au cas ou qu’il y en a plusieurs auteurs je peux afficher la liste des articles du premier auteur, puis celui du deuxième.

MAIS
quand ces auteurs ont co-écrit plusieurs articles, comment faire?
Il faudrait d’abord la liste des articles écrits en commun, puis la liste des autres articles du premier auteur, puis ceux du deuxième auteur.

Comment faire??
Merci pour vos trucs, liens, idées…
Joz

>Tu veux dire si x a écrit avec y tu vois la liste de x et de y ? Si y a écrit avec z tu veux voir x, y, z ? C'est ça

joz joz a écrit :

Bonjour,

j'essaye de faire un truc qui a surement déjà été fait souvent, mais je ne sais pas quoi taper dans mon moteur de recherche pour trouver des astuces ...

Alors:

Quand je suis dans un article, à coté j'affiche "les autres articles de cet auteur".
Au cas ou qu'il y en a plusieurs auteurs je peux afficher la liste des articles du premier auteur, puis celui du deuxième.

MAIS
quand ces auteurs ont co-écrit plusieurs articles, comment faire?
Il faudrait d'abord la liste des articles écrits en commun, puis la liste des autres articles du premier auteur, puis ceux du deuxième auteur.

Comment faire??
Merci pour vos trucs, liens, idées...
Joz
------------------------------------------------------------------------

_______________________________________________
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
  

quand je suis dans un article écrit par x et y je ne m’intéresse pa à z.
ici je veux la liste des articles écrit

  1. par x et y ensemble
  2. les autres articles de x
  3. les autres articles de y

2008/10/23 actualitesweb <actualitesweb@free.fr>

Tu veux dire si x a écrit avec y tu vois la liste de x et de y ? Si y a écrit avec z tu veux voir x, y, z ? C’est ça

joz joz a écrit :

Bonjour,

j’essaye de faire un truc qui a surement déjà été fait souvent, mais je ne sais pas quoi taper dans mon moteur de recherche pour trouver des astuces …

Alors:

Quand je suis dans un article, à coté j’affiche « les autres articles de cet auteur ».
Au cas ou qu’il y en a plusieurs auteurs je peux afficher la liste des articles du premier auteur, puis celui du deuxième.

MAIS
quand ces auteurs ont co-écrit plusieurs articles, comment faire?
Il faudrait d’abord la liste des articles écrits en commun, puis la liste des autres articles du premier auteur, puis ceux du deuxième auteur.

Comment faire??
Merci pour vos trucs, liens, idées…
Joz



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

Dans article.html un truc de ce genre:

<B_auteurs>
                        <BOUCLE_auteurs(AUTEURS) {id_article} {par nom}>
                        <B_articles_auteur>#ANCRE_PAGINATION
                       [<div align="center">(#LOGO_AUTEUR||reduire_image{112,112})</div>]
                                                  <BOUCLE_articles_auteur(ARTICLES) {id_auteur} {exclus} {par date} {inverse} {pagination 5}>

                        <li><a href="#URL_ARTICLE">#TITRE</a></li>
                        </BOUCLE_articles_auteur>
            #PAGINATION{precedent_suivant}</B_articles_auteur>
                        </BOUCLE_auteurs>
                        </B_auteurs>

C'est ce que j'ai dans un de mes sites et ça marche parfaitement

AW

joz joz a écrit :

quand je suis dans un article écrit par x et y je ne m'intéresse pa à z.
ici je veux la liste des articles écrit
1) par x et y ensemble
2) les autres articles de x
3) les autres articles de y

2008/10/23 actualitesweb <actualitesweb@free.fr <mailto:actualitesweb@free.fr>>

    >Tu veux dire si x a écrit avec y tu vois la liste de x et de y ?
    Si y a écrit avec z tu veux voir x, y, z ? C'est ça

    joz joz a écrit :

        Bonjour,

        j'essaye de faire un truc qui a surement déjà été fait
        souvent, mais je ne sais pas quoi taper dans mon moteur de
        recherche pour trouver des astuces ...

        Alors:

        Quand je suis dans un article, à coté j'affiche "les autres
        articles de cet auteur".
        Au cas ou qu'il y en a plusieurs auteurs je peux afficher la
        liste des articles du premier auteur, puis celui du deuxième.

        MAIS
        quand ces auteurs ont co-écrit plusieurs articles, comment faire?
        Il faudrait d'abord la liste des articles écrits en commun,
        puis la liste des autres articles du premier auteur, puis ceux
        du deuxième auteur.

        Comment faire??
        Merci pour vos trucs, liens, idées...
        Joz
        ------------------------------------------------------------------------

        _______________________________________________
        liste spip
        spip@rezo.net <mailto:spip@rezo.net> - désabonnement :
        spip-off@rezo.net <mailto: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 <http://irc.freenode.net/spip&gt; ou
        http://embed.mibbit.com/?server=irc.freenode.net&channel=%23spip
        <http://embed.mibbit.com/?server=irc.freenode.net&channel=%23spip&gt;
         

je ne comprends pas, ta boucle n’afficher pas du tout ce que je cherche à faire …
???
joz

2008/10/23 actualitesweb <actualitesweb@free.fr>

Dans article.html un truc de ce genre:

<B_auteurs>
<BOUCLE_auteurs(AUTEURS) {id_article} {par nom}>
<B_articles_auteur>#ANCRE_PAGINATION
[

(#LOGO_AUTEUR||reduire_image{112,112})
]
<BOUCLE_articles_auteur(ARTICLES) {id_auteur} {exclus} {par date} {inverse} {pagination 5}>

  • #TITRE
  • #PAGINATION{precedent_suivant}

    C’est ce que j’ai dans un de mes sites et ça marche parfaitement

    AW

    Si tu es dans le contexte article, cette boucle affiche les auteurs ayant participé à la rédaction des articles avec le logo et les 5 derniers articles puis pagination.
    C'est ce que tu voulais, ou alors je n'ai rien compris !

    joz joz a écrit :

    je ne comprends pas, ta boucle n'afficher pas du tout ce que je cherche à faire ...
    ???
    joz

    2008/10/23 actualitesweb <actualitesweb@free.fr <mailto:actualitesweb@free.fr>>

        Dans article.html un truc de ce genre:

        <B_auteurs>
                              <BOUCLE_auteurs(AUTEURS) {id_article} {par nom}>
                              <B_articles_auteur>#ANCRE_PAGINATION
                             [<div
        align="center">(#LOGO_AUTEUR||reduire_image{112,112})</div>]
                                                         <BOUCLE_articles_auteur(ARTICLES) {id_auteur} {exclus} {par date}
        {inverse} {pagination 5}>

                              <li><a href="#URL_ARTICLE">#TITRE</a></li>
                              </BOUCLE_articles_auteur>
                                                          #PAGINATION{precedent_suivant}</B_articles_auteur>
                              </BOUCLE_auteurs>
                              </B_auteurs>

        C'est ce que j'ai dans un de mes sites et ça marche parfaitement

        AW

    en faite je cherche à faire qqchose un peux plus complexe
    j’essaie d’être plus précise :

    1. les autres articles co-écrits par x et y
    2. articles écrits pas x seule (ou avec d’autres mais pas avec y)
    3. articles écrits pas y seule (ou avec d’autres mais pas avec x)
      xx
      joz

    2008/10/23 actualitesweb <actualitesweb@free.fr>

    Si tu es dans le contexte article, cette boucle affiche les auteurs ayant participé à la rédaction des articles avec le logo et les 5 derniers articles puis pagination.
    C’est ce que tu voulais, ou alors je n’ai rien compris !

    joz joz a écrit :

    je ne comprends pas, ta boucle n’afficher pas du tout ce que je cherche à faire …
    ???
    joz

    2008/10/23 actualitesweb <actualitesweb@free.fr mailto:[actualitesweb@free.fr](mailto:actualitesweb@free.fr)>

    Dans article.html un truc de ce genre:

    <B_auteurs>
    <BOUCLE_auteurs(AUTEURS) {id_article} {par nom}>
    <B_articles_auteur>#ANCRE_PAGINATION
    [

    (#LOGO_AUTEUR||reduire_image{112,112})
    ]
    <BOUCLE_articles_auteur(ARTICLES) {id_auteur} {exclus} {par date}
    {inverse} {pagination 5}>

  • #TITRE
  • #PAGINATION{precedent_suivant}

    C’est ce que j’ai dans un de mes sites et ça marche parfaitement

    AW

    En doublant la boucle et en mettant un {doublons} ça le ferait pas ?

    joz joz a écrit :

    en faite je cherche à faire qqchose un peux plus complexe
    j'essaie d'être plus précise :
    1) les autres articles co-écrits par x et y
    2) articles écrits pas x seule (ou avec d'autres mais pas avec y)
    3) articles écrits pas y seule (ou avec d'autres mais pas avec x)
    xx
    joz

    2008/10/23 actualitesweb <actualitesweb@free.fr <mailto:actualitesweb@free.fr>>

        Si tu es dans le contexte article, cette boucle affiche les
        auteurs ayant participé à la rédaction des articles avec le logo
        et les 5 derniers articles puis pagination.
        C'est ce que tu voulais, ou alors je n'ai rien compris !

        joz joz a écrit :

            je ne comprends pas, ta boucle n'afficher pas du tout ce que
            je cherche à faire ...
            ???
            joz

            2008/10/23 actualitesweb <actualitesweb@free.fr
            <mailto:actualitesweb@free.fr> <mailto:actualitesweb@free.fr
            <mailto:actualitesweb@free.fr>>>

               Dans article.html un truc de ce genre:

               <B_auteurs>
                                     <BOUCLE_auteurs(AUTEURS) {id_article}
            {par nom}>
                                     <B_articles_auteur>#ANCRE_PAGINATION
                                    [<div
               align="center">(#LOGO_AUTEUR||reduire_image{112,112})</div>]
                                                                      <BOUCLE_articles_auteur(ARTICLES) {id_auteur} {exclus} {par
            date}
               {inverse} {pagination 5}>

                                     <li><a
            href="#URL_ARTICLE">#TITRE</a></li>
                                     </BOUCLE_articles_auteur>
                                                                       #PAGINATION{precedent_suivant}</B_articles_auteur>
                                     </BOUCLE_auteurs>
                                     </B_auteurs>

               C'est ce que j'ai dans un de mes sites et ça marche
            parfaitement

               AW

    Salut,
    Je suis toujours sur le problème qui m'occupe depuis hier.
    Ce que je cherche à faire : Dans un article, afficher les autres articles des auteurs.

    En cas des plusieurs auteurs, par exemple les deux auteurs x et y, je veux afficher :
    1) Les articles écrits par x et y ensemble
    2) les autres articles de x
    3) les autres articles de y

    Alors j'ai essayé d'employer #ARRAY, mais malheureusement je tombe sur cet erreur MySQL avec ma BOUCLE_articles_communs :

    Erreur MySQL
    articles.id_article, SUM(FIELD(L1.id_auteur,)) AS cpt13 FROM spip_auteurs_articles AS `L1`, spip_articles AS `articles` WHERE (articles.lang = 'fr') AND (articles.id_article != '98') AND ((articles.id_article NOT IN (0))) AND (articles.statut = "publie") AND articles.id_article=L1.id_article GROUP BY articles.id_article HAVING (cpt13 <> 0) ORDER BY articles.titre

    Je pense d'avoir compris que mon erreur est dans SUM(FIELD(L1.id_auteur,)), il manque qqchose.

    Voici mes boucles :

    <BOUCLE_art(ARTICLES){id_article}>

        #SET{auteurs, #ARRAY}
        <BOUCLE_co-auteurs(AUTEURS){id_article}>
            #SET{auteurs, #GET{auteurs}|array_merge{#ARRAY{#COMPTEUR_BOUCLE, #ID_AUTEUR}}
        </BOUCLE_co-auteurs>
            #SET{articles, #ARRAY}
        <BOUCLE_articles_communs(ARTICLES){id_auteur IN #GET{auteurs}}{doublons}{par num titre}{lang}{exclus}>
            #SET{articles, #GET{articles}|array_merge{#ARRAY{#COMPTEUR_BOUCLE, #ID_ARTICLE}}
        </BOUCLE_articles_communs>
               <B_list_articles_communs>
            <!--on affiche le resultat-->
                <h3>
                    <:autre_articles_corealises:>
                    <BOUCLE_montrer_auteur(AUTEURS){id_auteur IN #GET{auteurs}}{par nom}>
                        <a href="#URL_AUTEUR" class="nowrap"> [(#NOM|prenom) ][<span class="majuscule">(#NOM|nom)</span>]</a>
                    </BOUCLE_montrer_auteur>
                </h3>
                   <B_list_articles_communs>
                <ul class="liste-articles">
            <BOUCLE_list_articles_communs(ARTICLES){id_article IN #GET{articles}}{par titre}>
                <li>
                    <a href="#URL_ARTICLE">#TITRE</a>
                </li>
            </BOUCLE_list_articles_communs>
                </ul>
            </B_list_articles_communs>

        </B_articles_communs>

    </BOUCLE_art>

    grand merci pour votre aide
    joz