Advertisement
BenjaminS

TYPO3: Extbase - Repository - findByList()

Aug 6th, 2013
118
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
PHP 0.85 KB | None | 0 0
  1.     /**
  2.      * Find pages by given ordering in list
  3.      *
  4.      * @param array $items
  5.      * @return array
  6.      */
  7.     public function findByList(array $items) {
  8.         $orderedPages = array();
  9.         if (!empty($items)) {
  10.             $query = $this->createQuery();
  11.             $query->getQuerySettings()->setRespectStoragePage(FALSE);
  12.             $query->getQuerySettings()->setRespectSysLanguage(FALSE);
  13.  
  14.             $query->matching(
  15.                 $query->in('uid', $items)
  16.             );
  17.             $results = $query->execute();
  18.             if ($results) {
  19.                 foreach ($results as $page) {
  20.                     $key = array_search($page->getUid(), $items, TRUE);
  21.                     $orderedPages[$key] = $page;
  22.                 }
  23.             }
  24.             ksort($orderedPages);
  25.         }
  26.         return $orderedPages;
  27.     }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement