For generating the nav, this should work. {% set allEntriesByWeek = allEntries|group("postDate|date('Y-W')") %} {% for week, entry in allEntriesByWeek %} <li><a href="events/{{ week|replace('-','/') }}">{{ week }}</a></li> {% endfor %} For grabbing entries (using the 'week' and 'year' variables passed via the route). {% set startDate = now.setISODate(year, week) %} {% set endDate = startDate|date_modify("+6 days") %} {% set entries = craft.entries.section('events').postDate('and', '>= ' ~ startDate, '<= ' ~ endDate ) %} {% for entry in entries %} {{ entry.title }} {% endfor %} For pagination. <a href="events/{{ startDate|date_modify('+7 days')|date('Y/W') }}">Next Week</a> <a href="events/{{ startDate|date_modify('-7 days')|date('Y/W') }}">Previous Week</a>