eZ Find : créer des filtres Solr sur les dates

Voici un exemple de filtres Solr sur les dates des événements d’un agenda qui permettent de récupérer les événements du jour (en cours ou commençant aujourd’hui).

{def $timestamp = currentdate()
     $filter = array( 'or',
                      array( concat('event/from_time:[' , $timestamp|datetime('solr') , ' TO ' , sum($timestamp,86400)|datetime('solr') , ']')),
                      array( 'and',
                             concat('event/from_time:[* TO ' , $timestamp|datetime('solr') , ']'),
                             concat('event/to_time:[' , sum($timestamp,86400)|datetime('solr') , ' TO *]') ))}

Attention à l’utilisation d’un format de date spécifique à Solr, format défini dans la configuration ini de l’extension ezfind.

[ClassSettings]
Formats[solr]=%Y-%m-%dT%H:%i:%sZ

Edit : le format de date « solr » a été modifié dans la version actuelle d’ezfind.

2 réflexions au sujet de « eZ Find : créer des filtres Solr sur les dates »

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *