private function getPageCandidates(string $alias)
    {
        $aliases = [$alias];
        // Compile all possible aliases by applying dirname() to the request.
        while ('/' !== $alias && false !== strpos($alias, '/')) {
            $alias     = \dirname($alias);
            $aliases[] = $alias;
        }

        // Check if there are pages with a matching alias
        $pages = $this->pageModelAdapter->findByAliases($aliases);
        if (null === $pages) {
            return null;
        }
        $arrPages = [];
        // Order by domain and language
        while ($pages->next()) {
            /** @var PageModel $objModel */
            $objModel = $pages->current();
            $objPage  = $objModel->loadDetails();
            $domain   = $objPage->domain ?: '*';

            $arrPages[$domain][$objPage->rootLanguage][] = $objPage;
            // Also store the fallback language
            if ($objPage->rootIsFallback) {
                $arrPages[$domain]['*'][] = $objPage;
            }
        }
        return $arrPages;
    }
private function getPageCandidates(string $alias)
    {
        $aliases = [$alias];
        // Compile all possible aliases by applying dirname() to the request.
        while ('/' !== $alias && false !== strpos($alias, '/')) {
            $alias     = \dirname($alias);
            $aliases[] = $alias;
        }

        // Check if there are pages with a matching alias
        $pages = $this->pageModelAdapter->findByAliases($aliases);
        if (null === $pages) {
            return null;
        }
        $arrPages = [];
        // Order by domain and language
        while ($pages->next()) {
            /** @var PageModel $objModel */
            $objModel = $pages->current();
            $objPage  = $objModel->loadDetails();
            $domain   = $objPage->domain ?: '*';

            $arrPages[$domain][$objPage->rootLanguage][] = $objPage;
            // Also store the fallback language
            if ($objPage->rootIsFallback) {
                $arrPages[$domain]['*'][] = $objPage;
            }
        }
        return $arrPages;
    }
private function getPageCandidates ( string $ alias ) { $ aliases = [ $ alias ] ; // Compile all possible aliases by applying dirname() to the request. while ( '/' !== $ alias && false !== strpos ( $ alias , '/' ) ) { $ alias = \ dirname ( $ alias ) ; $ aliases [ ] = $ alias ; } // Check if there are pages with a matching alias $ pages = $ this -> pageModelAdapter -> findByAliases ( $ aliases ) ; if ( null === $ pages ) { return null ; } $ arrPages = [ ] ; // Order by domain and language while ( $ pages -> next ( ) ) { /** @var PageModel $objModel */ $ objModel = $ pages -> current ( ) ; $ objPage = $ objModel -> loadDetails ( ) ; $ domain = $ objPage -> domain ? : '*' ; $ arrPages [ $ domain ] [ $ objPage -> rootLanguage ] [ ] = $ objPage ; // Also store the fallback language if ( $ objPage -> rootIsFallback ) { $ arrPages [ $ domain ] [ '*' ] [ ] = $ objPage ; } } return $ arrPages ; }
Fetch matching page candidates.

@param string $alias The requested alias.

@return array|null
Fetch matching page candidates .