Ce pipeline sert à déclarer la structure SQL des tables objets. Il permet également de déclarer leurs exceptions.
Une documentation détaillée se trouve sur
spip.net, avec un exemple : pour la déclaration des objets BREVES.
Toutes les déclarations réalisées avant SPIP 3 via les globales $table_titre, $table_date, $table_principale, $table_auxiliaire, les pipelines rechercher_liste_des_champs, rechercher_liste_des_jointures, declarer_tables_objets_surnoms, declarer_type_surnoms restent fonctionnelles. Les pipelines voient passer les informations déjà déclarées dans le pipeline declarer_tables_objets_sql. Il est fortement conseillé de migrer vers cette déclaration unifiée plus complète, qui pourra s’enrichir, et permet de faire bénéficier les objets concernés de fonctionnalités généralisées. Par exemple, tous les objets ainsi déclarés peuvent d’ores et déjà recevoir des documents joints et des mots clés.
{{{Accéder aux informations}}}
Dans SPIP, la liste des informations est ensuite accessible de plusieurs façons :
- pour obtenir tout le tableau des données déclarées pour toutes les tables :
include_spip('base/objets');
lister_tables_objets_sql();
- pour obtenir les infos de la table
spip_articles
uniquement :
include_spip('base/objets');
lister_tables_objets_sql('spip_articles');
- pour obtenir les informations de la description SQL de la table il faut passer par
base/trouver_table
qui lit la description en base de la table, et l’enrichit du contenu de
lister_tables_objets_sql
:
$trouver_table = charger_fonction('trouver_table','base');
$trouver_table('spip_articles');
- le filtre
info_objet
pour obtenir une information précise,
Exemple :
echo _T(info_objet('article', 'texte_objet'));
ou dans un squelette :
[(#OBJET|info_objet{texte_objet}|_T)]
Ce filtre utilise l’objet en entrée car c’est ce dont on dispose en général dans les squelettes.
Exemple
{{Autre exemple d’utilisation}}
Le plugin medias_responsive_mod propose
2 nouveaux modèles pour afficher les images. Pour les déclarer de manière à ce que SPIP les intègre au fonctionnement du
critère {vu}
, il utilise le pipeline
declarer_tables_objets_sql
function medias_responsive_mod_declarer_tables_objets_sql($tables) {
$tables['spip_documents']['modeles'][] = 'ligne';
$tables['spip_documents']['modeles'][] = 'slide';
return $tables;
}