add-on facet type
Time Since
Filter results by time interval, such as "in the past 30 days"
The Time Since facet type is used to filter posts by date / time since a specified interval.
Available options
Name | Description |
---|---|
Data Source | A date field, for example “Post Date”, “Post Modified”. Or a custom field in YYYY-MM-DD format. |
Default label | Change the default “Any” label. The label is optional: leave it blank to remove the “Any” option. Note: this label is translatable with the facetwp_i18n hook. |
Choices | The choices to display (one per line), consisting of a label and a format, separated by a “|”: label | format . Some examples:
The formatter is based on PHP’s strtotime function. See the available relative date-time formats. The choices labels are translatable with the facetwp_i18n hook. |
Using custom ranges
Let’s say you wanted to add a choice to filter by Older than 1 year
.
First, add a new row into the “Choices” box:
Older than 1 year | over-1-year
As you can see over-1-year
is the custom formatting token. Since PHP won’t know how to automatically parse it, a hook is needed to set the date range manually:
add_filter( 'facetwp_time_since_date_range', function( $range, $format ) {
if ( 'over-1-year' == $format ) {
$dt1 = new \DateTime( '1970-01-01' );
$dt2 = new \DateTime( '-1 year' );
$range['lower'] = $dt1->format( 'Y-m-d' );
$range['upper'] = $dt2->format( 'Y-m-d' );
}
return $range;
}, 10, 2);
Hide counts
To hide the counts, use any of the following styles, depending on which facet (types) you want to target:
/* Hide counts in all Time Since facets */
[data-type="time_since"] .facetwp-counter {
display: none;
}
/* Hide counts in a specific Time Since facet */
.facetwp-facet-yourfacetname .facetwp-counter {
display: none;
}
Changelog
1.6.7
- New added "Default label" UI setting
- Fixed facet counter CSS class now matches other facets
- Fixed linked to docs in the setting tooltip
1.6.5
- New ability to use custom format ranges (see the doc page)
- Fixed default to "OR" mode for all Time Since choices
1.6.4
- Fixed user selections feature was empty
- Fixed use JS versioning to bust caching
1.6.3
- Fixed filtering broken when labels are translated using `facetwp_i18n` hook
1.6.2
- Improved changed textdomain to `facetwp-time-since`
- Fixed choice labels can now be translated via the `facetwp_i18n` hook
- Fixed undefined $token variable (props Rhys)
1.6
- New revamped filtering logic to support "today", "tomorrow", and "yesterday"
1.5.1
- Changed replaced `wp.hooks` to `FWP.hooks` due to conflict with WP 5.0