diff --git a/scipost_django/submissions/forms.py b/scipost_django/submissions/forms.py
index 1ccc1ff59a21a18e1ef9464573ee9a910065e154..4614a62d0a9e8600d70461d5de1923367db8e951 100644
--- a/scipost_django/submissions/forms.py
+++ b/scipost_django/submissions/forms.py
@@ -64,6 +64,19 @@ OSFPREPRINTS_IDENTIFIER_PATTERN = r'^[a-z0-9]+$'
 class SubmissionPoolSearchForm(forms.Form):
     """Filter a Submission queryset using basic search fields."""
 
+    acad_field = forms.ModelChoiceField(
+        queryset=AcademicField.objects.all(),
+        required=False
+    )
+    specialties = forms.ModelMultipleChoiceField(
+        queryset=Specialty.objects.all(),
+        widget=autocomplete.ModelSelect2Multiple(
+            url='/ontology/specialty-autocomplete',
+            attrs={'data-html': True}
+        ),
+        label='Specialties',
+        required=False
+    )
     author = forms.CharField(max_length=100, required=False, label="Author(s)")
     title = forms.CharField(max_length=100, required=False)
     identifier = forms.CharField(
@@ -76,6 +89,17 @@ class SubmissionPoolSearchForm(forms.Form):
         super().__init__(*args, **kwargs)
         self.helper = FormHelper()
         self.helper.layout = Layout(
+            Div(
+                Div(
+                    FloatingField('acad_field'),
+                    css_class='col-lg-6'
+                ),
+                Div(
+                    FloatingField('specialties'),
+                    css_class='col-lg-6'
+                ),
+                css_class='row mb-0'
+            ),
             Div(
                 Div(
                     FloatingField('author'),
@@ -103,6 +127,14 @@ class SubmissionPoolSearchForm(forms.Form):
     def search_results(self, user):
         """Return all Submission objects according to search."""
         submissions = Submission.objects.pool(user)
+        if self.cleaned_data.get('acad_field'):
+            submissions = submissions.filter(
+                acad_field=self.cleaned_data.get('acad_field')
+            )
+        if self.cleaned_data.get('specialties'):
+            submissions = submissions.filter(
+                specialties__in=self.cleaned_data.get('specialties')
+            )
         if self.cleaned_data.get('author'):
             submissions = submissions.filter(author_list__icontains=self.cleaned_data.get('author'))
         if self.cleaned_data.get('title'):
diff --git a/scipost_django/submissions/templates/submissions/pool/pool2.html b/scipost_django/submissions/templates/submissions/pool/pool2.html
index 58276c03672cb662ff4852ce2ea5b3a1298d7f38..6e889a219fc42d1e04d90544bb9b8d9aa9e5e44d 100644
--- a/scipost_django/submissions/templates/submissions/pool/pool2.html
+++ b/scipost_django/submissions/templates/submissions/pool/pool2.html
@@ -33,7 +33,6 @@
 	  hx-target="#search-results"
 	  hx-indicator="#indicator-search"
       >
-	{% csrf_token %}
 	{% crispy form %}
       </form>
     </div>