diff --git a/app/Controllers/Podcast.php b/app/Controllers/Podcast.php
index 56a23e361813029b9da7c42ac3b0e97ed75b1559..1529dd0947746bf004e1c2d827f994c7b14f7940 100644
--- a/app/Controllers/Podcast.php
+++ b/app/Controllers/Podcast.php
@@ -69,10 +69,12 @@ class Podcast extends BaseController
             $defaultQuery = (new EpisodeModel())->getDefaultQuery(
                 $this->podcast->id,
             );
-            if ($defaultQuery['type'] == 'season') {
-                $seasonQuery = $defaultQuery['data']['season_number'];
-            } elseif ($defaultQuery['type'] == 'year') {
-                $yearQuery = $defaultQuery['data']['year'];
+            if ($defaultQuery) {
+                if ($defaultQuery['type'] == 'season') {
+                    $seasonQuery = $defaultQuery['data']['season_number'];
+                } elseif ($defaultQuery['type'] == 'year') {
+                    $yearQuery = $defaultQuery['data']['year'];
+                }
             }
         }
 
@@ -81,7 +83,7 @@ class Podcast extends BaseController
             array_filter([
                 'page',
                 "podcast{$this->podcast->id}",
-                $yearQuery,
+                $yearQuery ? 'year' . $yearQuery : null,
                 $seasonQuery ? 'season' . $seasonQuery : null,
                 service('request')->getLocale(),
             ]),
diff --git a/app/Models/EpisodeModel.php b/app/Models/EpisodeModel.php
index 429ac67630cfad340708f15c50bf9e77314063b9..7fd8c5b200c4fb36d97378f6a2da1056df414515 100644
--- a/app/Models/EpisodeModel.php
+++ b/app/Models/EpisodeModel.php
@@ -314,7 +314,7 @@ class EpisodeModel extends Model
      *
      * @param int $podcastId
      *
-     * @return array
+     * @return array|null
      */
     public function getDefaultQuery(int $podcastId)
     {
@@ -419,11 +419,11 @@ class EpisodeModel extends Model
 
         foreach ($years as $year) {
             cache()->delete(
-                "podcast{$episode->podcast_id}_{$year['year']}_episodes",
+                "podcast{$episode->podcast_id}_year{$year['year']}_episodes",
             );
             foreach ($supportedLocales as $locale) {
                 cache()->delete(
-                    "page_podcast{$episode->podcast_id}_{$year['year']}_{$locale}",
+                    "page_podcast{$episode->podcast_id}_year{$year['year']}_{$locale}",
                 );
             }
         }
diff --git a/app/Models/PageModel.php b/app/Models/PageModel.php
index c6a5e2078403683c1bf86a8e5236fe73c0bf2556..d3740ead5d9e18e4ec63c02e156eaf6639c157c1 100644
--- a/app/Models/PageModel.php
+++ b/app/Models/PageModel.php
@@ -38,7 +38,7 @@ class PageModel extends Model
     protected function clearCache(array $data)
     {
         $page = (new PageModel())->find(
-            is_array($data['id']) ? $data['id'][0] : $data['id']
+            is_array($data['id']) ? $data['id'][0] : $data['id'],
         );
 
         // delete page cache
@@ -57,14 +57,14 @@ class PageModel extends Model
             foreach ($years as $year) {
                 foreach ($supportedLocales as $locale) {
                     cache()->delete(
-                        "page_podcast{$podcast->id}_{$year['year']}_{$locale}"
+                        "page_podcast{$podcast->id}_year{$year['year']}_{$locale}",
                     );
                 }
             }
             foreach ($seasons as $season) {
                 foreach ($supportedLocales as $locale) {
                     cache()->delete(
-                        "page_podcast{$podcast->id}_season{$season['season_number']}_{$locale}"
+                        "page_podcast{$podcast->id}_season{$season['season_number']}_{$locale}",
                     );
                 }
             }
@@ -72,7 +72,7 @@ class PageModel extends Model
             foreach ($podcast->episodes as $episode) {
                 foreach ($supportedLocales as $locale) {
                     cache()->delete(
-                        "page_podcast{$podcast->id}_episode{$episode->id}_{$locale}"
+                        "page_podcast{$podcast->id}_episode{$episode->id}_{$locale}",
                     );
                 }
             }
diff --git a/app/Models/PlatformModel.php b/app/Models/PlatformModel.php
index 1307d1a42503488a6a07f31a4acb04e0391ce476..a5666e0c093e3dd6058a5945d9bc18fd1eb36e2e 100644
--- a/app/Models/PlatformModel.php
+++ b/app/Models/PlatformModel.php
@@ -36,7 +36,7 @@ class PlatformModel extends Model
         if (!($found = cache('platforms'))) {
             $baseUrl = rtrim(config('app')->baseURL, '/');
             $found = $this->select(
-                "*, CONCAT('{$baseUrl}/assets/images/platforms/',`type`,'/',`slug`,'.svg') as icon"
+                "*, CONCAT('{$baseUrl}/assets/images/platforms/',`type`,'/',`slug`,'.svg') as icon",
             )->findAll();
             cache()->save('platforms', $found, DECADE);
         }
@@ -75,12 +75,12 @@ class PlatformModel extends Model
             !($found = cache("podcast{$podcastId}_platforms_{$platformType}"))
         ) {
             $found = $this->select(
-                'platforms.*, podcasts_platforms.link_url, podcasts_platforms.link_content, podcasts_platforms.is_visible, podcasts_platforms.is_on_embeddable_player'
+                'platforms.*, podcasts_platforms.link_url, podcasts_platforms.link_content, podcasts_platforms.is_visible, podcasts_platforms.is_on_embeddable_player',
             )
                 ->join(
                     'podcasts_platforms',
                     "podcasts_platforms.platform_slug = platforms.slug AND podcasts_platforms.podcast_id = $podcastId",
-                    'left'
+                    'left',
                 )
                 ->where('platforms.type', $platformType)
                 ->findAll();
@@ -88,7 +88,7 @@ class PlatformModel extends Model
             cache()->save(
                 "podcast{$podcastId}_platforms_{$platformType}",
                 $found,
-                DECADE
+                DECADE,
             );
         }
 
@@ -99,15 +99,15 @@ class PlatformModel extends Model
     {
         if (
             !($found = cache(
-                "podcast{$podcastId}_podcastPlatforms_{$platformType}"
+                "podcast{$podcastId}_podcastPlatforms_{$platformType}",
             ))
         ) {
             $found = $this->select(
-                'platforms.*, podcasts_platforms.link_url, podcasts_platforms.link_content, podcasts_platforms.is_visible, podcasts_platforms.is_on_embeddable_player'
+                'platforms.*, podcasts_platforms.link_url, podcasts_platforms.link_content, podcasts_platforms.is_visible, podcasts_platforms.is_on_embeddable_player',
             )
                 ->join(
                     'podcasts_platforms',
-                    'podcasts_platforms.platform_slug = platforms.slug'
+                    'podcasts_platforms.platform_slug = platforms.slug',
                 )
                 ->where('podcasts_platforms.podcast_id', $podcastId)
                 ->where('platforms.type', $platformType)
@@ -116,7 +116,7 @@ class PlatformModel extends Model
             cache()->save(
                 "podcast{$podcastId}_podcastPlatforms_{$platformType}",
                 $found,
-                DECADE
+                DECADE,
             );
         }
 
@@ -133,11 +133,11 @@ class PlatformModel extends Model
         $podcastsPlatformsTable = $this->db->prefixTable('podcasts_platforms');
         $platformsTable = $this->db->prefixTable('platforms');
         $deleteJoinQuery = <<<EOD
-DELETE $podcastsPlatformsTable
-FROM $podcastsPlatformsTable
-INNER JOIN $platformsTable ON $platformsTable.slug = $podcastsPlatformsTable.platform_slug
-WHERE `podcast_id` = ? AND `type` = ?
-EOD;
+        DELETE $podcastsPlatformsTable
+        FROM $podcastsPlatformsTable
+        INNER JOIN $platformsTable ON $platformsTable.slug = $podcastsPlatformsTable.platform_slug
+        WHERE `podcast_id` = ? AND `type` = ?
+        EOD;
         $this->db->query($deleteJoinQuery, [$podcastId, $platformType]);
 
         // Set podcastPlatforms
@@ -173,7 +173,7 @@ EOD;
         foreach (['podcasting', 'social', 'funding'] as $platformType) {
             cache()->delete("podcast{$podcastId}_platforms_{$platformType}");
             cache()->delete(
-                "podcast{$podcastId}_podcastPlatforms_{$platformType}"
+                "podcast{$podcastId}_podcastPlatforms_{$platformType}",
             );
         }
         // delete localized podcast page cache
@@ -185,7 +185,7 @@ EOD;
         foreach ($years as $year) {
             foreach ($supportedLocales as $locale) {
                 cache()->delete(
-                    "page_podcast{$podcastId}_{$year['year']}_{$locale}"
+                    "page_podcast{$podcastId}_year{$year['year']}_{$locale}",
                 );
             }
         }
@@ -193,7 +193,7 @@ EOD;
         foreach ($seasons as $season) {
             foreach ($supportedLocales as $locale) {
                 cache()->delete(
-                    "page_podcast{$podcastId}_season{$season['season_number']}_{$locale}"
+                    "page_podcast{$podcastId}_season{$season['season_number']}_{$locale}",
                 );
             }
         }
@@ -202,14 +202,14 @@ EOD;
         foreach ($podcast->episodes as $episode) {
             foreach ($supportedLocales as $locale) {
                 cache()->delete(
-                    "page_podcast{$podcast->id}_episode{$episode->id}_{$locale}"
+                    "page_podcast{$podcast->id}_episode{$episode->id}_{$locale}",
                 );
                 foreach (
                     array_keys(\App\Models\EpisodeModel::$themes)
                     as $themeKey
                 ) {
                     cache()->delete(
-                        "page_podcast{$podcast->id}_episode{$episode->id}_embeddable_player_{$themeKey}_{$locale}"
+                        "page_podcast{$podcast->id}_episode{$episode->id}_embeddable_player_{$themeKey}_{$locale}",
                     );
                 }
             }
diff --git a/app/Models/PodcastModel.php b/app/Models/PodcastModel.php
index dfd4044de8135f40adf2069c2519609cf6c15fc7..67b2ef8b671bf7af672196feec5e4f9338c50cdc 100644
--- a/app/Models/PodcastModel.php
+++ b/app/Models/PodcastModel.php
@@ -241,10 +241,12 @@ class PodcastModel extends Model
         $seasons = $episodeModel->getSeasons($podcast->id);
 
         foreach ($years as $year) {
-            cache()->delete("podcast{$podcast->id}_{$year['year']}_episodes");
+            cache()->delete(
+                "podcast{$podcast->id}_year{$year['year']}_episodes",
+            );
             foreach ($supportedLocales as $locale) {
                 cache()->delete(
-                    "page_podcast{$podcast->id}_{$year['year']}_{$locale}",
+                    "page_podcast{$podcast->id}_year{$year['year']}_{$locale}",
                 );
             }
         }