Programmer avec SPIP 3.0
Documentation technique sur SPIP 3.0

> > > > Déclarations de jointures

Déclarations de jointures

Les liaisons entre tables sont déclarées dans SPIP dans le fichier ecrire/public/interfaces.php. D’autres déclarations peuvent être ajoutées avec le pipeline « declarer_tables_interfaces ».

Cette déclaration peut-être :

  1. // proposer une jointure entre les rubriques et les documents
  2. $tables_jointures['spip_rubriques'][]= 'documents_liens';
  3. // proposer une jointure entre articles et auteurs, en specifiant le champ de la jointure
  4. $tables_jointures['spip_articles']['id_auteur']= 'auteurs_articles';

Télécharger

Cela indique des liaisons possibles entre tables. Lorsque 2 tables peuvent avoir plusieurs champs qui peuvent se lier, on peut indiquer précisément le champ de la liaison.

Exceptions

Il est même possible de créer des jointures lors d’appel à des champs inexistants, par exemple l’appel au critère {titre_mot=yy} peut conduire à une jointure sur la table « spip_mots » alors même que le champ SQL « titre_mot » n’existe pas dans la table de cette manière :

  1. $exceptions_des_jointures['titre_mot'] = array('spip_mots', 'titre');