diff --git a/api_tests/src/shared.ts b/api_tests/src/shared.ts
index f6668be0897a219ec388edcc78fe3ee3a76c92cf..abd3093e3906821a6fd5211b8a99ca265b91741c 100644
--- a/api_tests/src/shared.ts
+++ b/api_tests/src/shared.ts
@@ -290,6 +290,7 @@ export async function searchPostLocal(
     q: post.name,
     type_: "Posts",
     sort: "TopAll",
+    listing_type: "All",
   };
   return api.search(form);
 }
diff --git a/crates/db_views/src/post_view.rs b/crates/db_views/src/post_view.rs
index 87f50471c53c2474727f1524f5e186480269b347..e133d9e4a57478ad8122646e21cb52c3aa101a82 100644
--- a/crates/db_views/src/post_view.rs
+++ b/crates/db_views/src/post_view.rs
@@ -344,7 +344,7 @@ fn queries<'a>() -> Queries<
       query = query.filter(post_aggregates::creator_id.eq(creator_id));
     }
 
-    if let (Some(listing_type), Some(person_id)) = (options.listing_type, person_id) {
+    if let Some(person_id) = person_id {
       let is_subscribed = exists(
         community_follower::table.filter(
           post_aggregates::community_id
@@ -352,7 +352,7 @@ fn queries<'a>() -> Queries<
             .and(community_follower::person_id.eq(person_id)),
         ),
       );
-      match listing_type {
+      match options.listing_type.unwrap_or_default() {
         ListingType::Subscribed => query = query.filter(is_subscribed),
         ListingType::Local => {
           query = query
@@ -370,6 +370,15 @@ fn queries<'a>() -> Queries<
           ));
         }
       }
+    } else {
+      match options.listing_type.unwrap_or_default() {
+        ListingType::Local => {
+          query = query
+            .filter(community::local.eq(true))
+            .filter(community::hidden.eq(false));
+        }
+        _ => query = query.filter(community::hidden.eq(false)),
+      }
     }
 
     if let Some(url_search) = &options.url_search {