Exemple
Le plugin « mots techniques » ajoute un champ technique sur les groupes de mots de SPIP. Lorsqu’aucun critère
{technique}
n’est ajouté sur la boucle GROUPES_MOTS, la boucle est alors filtrée automatiquement, affichant uniquement les groupes ayant un champ technique vide. Ce fonctionnement pourrait aussi être réalisé en créant une fonction
boucle_GROUPES_MOTS()
.
function mots_techniques_pre_boucle($boucle){
if ($boucle->type_requete == 'groupes_mots') {
$id_table = $boucle->id_table;
$mtechnique = $id_table .'.technique';
// Restreindre aux mots cles non techniques
if (!isset($boucle->modificateur['criteres']['technique']) &&
!isset($boucle->modificateur['tout'])) {
$boucle->where[]= array("'='", "'$mtechnique'", "'\"\"'");
}
}
return $boucle;
}
Le tableau
$boucle->where[]
reçoit comme valeurs des tableaux. Ces tableaux ont 3 entrées : l’opérateur, le champ, la valeur. Ici, on ajoute
$mtechnique=''
par :
$boucle->where[]= array("'='", "'$mtechnique'", "'\"\"'");