I assume when users choose “Week” you show the entries of this week, and the same for the others, right?
It would need a lot of columns to achieve what you want, but here’s my idea in addition to Jeff’s.
YEAR
- Add a math column to derive the year of the entry.
- Add a math column to derive the current year (YEAR(N) with N being the now value).
Filter the inline list you show when users choose “year” by entry year equals current year.
MONTH
For Month, you would want the year value in there as well so it doesn’t show entries from Jan 2020, for example.
Entry month: YEAR(Entry)*100 + MONTH(Entry) so you would get something like 202112 if the entry is from Dec 2021.
Current month: YEAR(Now)*100 + MONTH(Now) so you would get 202201.
Then use the same filter logic as I said in the year section.
WEEK
With week, you use WEEKNUM.
Entry weeknum: YEAR(Entry)*100 + WEEKNUM(Entry) so you would get something like 202152 if it was posted on the last week of 2021, for example.
Current weeknum: YEAR(Now)*100 + WEEKNUM(Now) so you would get 202201.
Then use the same filter logic as I said in the year section.
QUARTER
This is the most tricky, since we don’t have a built-in function, but we can still use the math column to get it.
Entry quarter: YEAR(Entry)*100 + FLOOR((MONTH(Entry)-1)/3+1) so you would get 202104 if it was posted anywhere between Oct - Dec 2021.
Current quarter: YEAR(Now)*100 + FLOOR((MONTH(Now)-1)/3+1) so you would get 202201.
Then use the same filter logic as I said in the year section.