Re: [Spip]irécupérerl'id_article d'un document

From : xebiaut@... , the 22nd March 2007 09:58

Je vais essayer d'expliquer ce que j'ai compris du principe. SPIP définit, en interne, les champs qui vont permettre la jonction entre deux tables. Par exemple id_rubrique servera de clé de jonction entre la table RUBRIQUES et ARTICLES. Voici donc pour le principe. Maintenant pour réaliser une boucle de jonction, il faut une table primaire (celle sur laquelle on veut recupérer le plus d'info) et les tables jointes. Dans le cas présent, la table primaire est DOCUMENTS (en majuscules obligatoirement). Et les tables jointes sont documents_articles, articles et types_documents (à écrire en minuscule obligatoirement). Maintenant le rôle de chacune de ces 3 tables : - documents_articles contient id_document et id_article ce qui permet de faire le lien entre les tables article et documents. Sans cela, il n'y aurait pas de jointure car il n'y pas dans documents de champs id_article et inversement dans articles. - articles contient toutes les informations concernant un article et il est là pour vérifier que l'article est bien publié et pour donner l'adresse de la page article liée au document. - types_documents est là simplement pour que le filtre {extension IN png,jpg,gif} puisse fonctionner. J'espère avoir été assez clair dans mes explications. Xavier BUROT http://xebiaut.free.fr Selon Frank :
 Xavier BUROT a écrit :
  Bonjour,     Je vois que ma petite boucle fait beaucoup parler.     Pour ce qui de la syntaxe particulière de ma boucle, c'est sur ce fil que
 je
  l'ai eu. Elle permet d'effectuer une jointure des données entre différentes   tables. Cela permet d'avoir accès à des données de plusieurs tables en une   seules boucles.     Pour ce qui est de l'utilisation de la balise #EVAL, je ne sais plus
 pourquoi je
  l'ai mise. Je sais que lors de la création du premier script (en version
 1.9)
  j'avais été obligé de le mettre sinon cela plantait.     Sinon pour rpapa voici mon code et que j'ai testé et qui fonctionne
 celui-là :
       
    types_documents){id_rubrique=3}{extension IN png,jpg,gif}{par
  hasard}{inverse}{0,1}>   [ href="#URL_ARTICLE">(#vignette:LOGO_DOCUMENT||image_reduire{167,167})]              J'espère que cela fonctionnera chez vous. Tenez moi au courant.     Xavier BUROT   http://xebiaut.free.fr       Xavier BUROT   http://xebiaut.free.fr       Selon Frank :  
  Xavier BUROT a écrit :
  Bonsoir,     J'ai realisé recemment un boucle qui recuperait les 10 dernières photos
  publiées
  dans un secteur précis. Voici la boucle que cela donne :     [(#REM) Affiche photos du site ]           Photos}          
      types_documents){id_secteur=3}{extension IN png,jpg,gif}{par
  date}{inverse}{0,10}>       [ >>>
 
class="[(#EVAL{[(#COMPTEUR_BOUCLE)]}|=={1}|?{voir,cacher})]">(#LOGO_DOCUMENT||image_reduire{167,167})]