diff --git a/Classes/Service/Backend/Utility.php b/Classes/Service/Backend/Utility.php
index c5adcefe0ae69cd302fa4591a90a17b9acbe373f..1a2a6f9e4e325e9cdb8b9fc881c01cc81d634f3b 100644
--- a/Classes/Service/Backend/Utility.php
+++ b/Classes/Service/Backend/Utility.php
@@ -120,11 +120,11 @@ class Utility {
 		$databaseConnection = $GLOBALS['TYPO3_DB'];
 
 		$where = 'doktype = ' . self::CATEGORY_DOKTYPE . ' AND uid in (' . $childPids . ')';
-		$result = $databaseConnection->exec_SELECTquery('uid', 'pages', $where)->fetch_all();
+		$result = $databaseConnection->exec_SELECTquery('uid, title', 'pages', $where)->fetch_all();
 		$categories = [];
 		/** @var array $result */
 		foreach ($result as $item) {
-			$categories[] = $item[0];
+			$categories[$item[0]] = $item[1];
 		}
 
 		return $categories;
@@ -140,6 +140,6 @@ class Utility {
 		$objectManager = GeneralUtility::makeInstance(ObjectManager::class);
 		/** @var NewsRepository $newsRepository */
 		$newsRepository = $objectManager->get(NewsRepository::class);
-		return $newsRepository->findAllSortedNewsByCategories($categories, 0, 0, 'date', NULL, $raw = TRUE);
+		return $newsRepository->findAllSortedNewsByCategories(array_keys($categories), 0, 0, 'date', NULL, $raw = TRUE);
 	}
 }
diff --git a/Resources/Private/Partials/Backend/Filter.html b/Resources/Private/Partials/Backend/Filter.html
new file mode 100644
index 0000000000000000000000000000000000000000..5bae71aaa9d8bb7647c6f7e8b9843f8845df7ba2
--- /dev/null
+++ b/Resources/Private/Partials/Backend/Filter.html
@@ -0,0 +1,25 @@
+<f:form action="index" controller="Backend" method="post" objectName="filters" object="{filters}">
+	<div class="row">
+		<div class="col-xs-5">
+			<div class="form-group">
+				<label for="filter-category">
+					<f:translate key="backend.filters.category" />
+					<small><f:translate key="backend.filters.categories.description" /></small>
+				</label>
+				<f:form.select class="form-control" multiple="1" size="4" property="categories" options="{categories}" id="filter-category" />
+			</div>
+		</div>
+		<div class="col-xs-4">
+			<div class="form-group">
+				<label for="filter-search"><f:translate key="backend.filters.search" /></label>
+				<f:form.textfield class="form-control" property="search" id="filter-search" />
+			</div>
+		</div>
+		<div class="col-xs-3">
+			<div class="form-group">
+				<label>&nbsp;</label><br />
+				<f:form.button class="btn btn-success form-group col-xs-12" type="submit">Filter</f:form.button>
+			</div>
+		</div>
+	</div>
+</f:form>
diff --git a/Resources/Private/Templates/Backend/Index.html b/Resources/Private/Templates/Backend/Index.html
index 00f2f02dd6f2192786a2fef9349254677403ec18..1555ee68dd79201ffb525978a53d554b0b65d1d2 100644
--- a/Resources/Private/Templates/Backend/Index.html
+++ b/Resources/Private/Templates/Backend/Index.html
@@ -11,6 +11,7 @@
 	<p>
 		<f:translate key="backend.message" />
 	</p>
+	<f:render partial="Backend/Filter" arguments="{categories: categories, filters: filters}" />
 
 	<f:if condition="{news}">
 		<div class="panel panel-default recordlist">