diff --git a/Classes/Controller/NewsByAuthorController.php b/Classes/Controller/NewsByAuthorController.php
index 69ef3ee7bc5d40ded2305d1843dd3c31fef6e33e..071293e04b2d0e46670eeec0849528cbf50f3f17 100644
--- a/Classes/Controller/NewsByAuthorController.php
+++ b/Classes/Controller/NewsByAuthorController.php
@@ -79,25 +79,28 @@ class NewsByAuthorController extends AbstractController {
 		$categories = $newsMetaData = [];
 		$categoryRepository = $this->objectManager->get(CategoryRepository::class);
 		$excludedNewsIds = GeneralUtility::intExplode(',', $this->settings['excludedNews']);
-		foreach ($news as $newsEntry) {
-			/** @var News $newsEntry */
-			if (in_array($newsEntry->getUid(), $excludedNewsIds, TRUE)) {
-				continue;
-			}
-
-			$categoryId = $newsEntry->getPid();
-			if (!isset($categories[$categoryId])) {
-				$category = $categoryRepository->findByUid($categoryId);
-				if (!$category) {
+		foreach ($news as $newsResult) {
+			foreach ($newsResult as $newsEntry) {
+				/** @var News $newsEntry */
+				if (in_array($newsEntry->getUid(), $excludedNewsIds, TRUE)) {
 					continue;
 				}
 
-				$categories[$categoryId] = $category;
-			}
+				$categoryId = $newsEntry->getPid();
+				if (!isset($categories[$categoryId])) {
+					$category = $categoryRepository->findByUid($categoryId);
+					if (!$category) {
+						continue;
+					}
 
-			$newsMetaData[] = $this->getMetaDataForNews($newsEntry, $categories[$categoryId]);
+					$categories[$categoryId] = $category;
+				}
+
+				$newsMetaData[] = $this->getMetaDataForNews($newsEntry, $categories[$categoryId]);
+			}
 		}
 
+
 		$this->view->assign('newsMetaData', $newsMetaData);
 		$this->view->assign('authors', $authors);
 	}
diff --git a/Classes/Domain/Repository/NewsRepository.php b/Classes/Domain/Repository/NewsRepository.php
index b518f7750f1c28820c1d9b0adba39fe634425fbf..4b593d0ace634045ff4ba84678bcd9570d6a235d 100644
--- a/Classes/Domain/Repository/NewsRepository.php
+++ b/Classes/Domain/Repository/NewsRepository.php
@@ -40,17 +40,32 @@ class NewsRepository extends AbstractRepository {
 	 * Finds all news by the given authors.
 	 *
 	 * @param array $authorIds
-	 *
-	 * @return QueryResultInterface|NULL
+	 * @return array Contains only TYPO3\CMS\Extbase\Persistence\Generic\QueryResult items
 	 * @throws \TYPO3\CMS\Extbase\Persistence\Exception\InvalidQueryException
 	 */
-	public function findAllByNewsAuthor(array $authorIds): ?QueryResultInterface {
+	public function findAllByNewsAuthor(array $authorIds): ?array {
 		if (count($authorIds) <= 0) {
 			return NULL;
 		}
 
+		$result = [];
+		foreach ($authorIds as $authorId) {
+			$result[] = $this->findNewsByAuthor($authorId);
+		}
+
+		return $result;
+	}
+
+	/**
+	 * Find all news by the given author
+	 *
+	 * @param int $authorId
+	 * @return QueryResultInterface|null
+	 * @throws \TYPO3\CMS\Extbase\Persistence\Exception\InvalidQueryException
+	 */
+	public function findNewsByAuthor(int $authorId): ?QueryResultInterface {
 		$query = $this->createQuery();
-		$query->matching($query->contains('newsAuthor', $authorIds));
+		$query->matching($query->contains('newsAuthor', $authorId));
 		return $query->execute();
 	}