Moje pierwsze pytanie, masz 20 000 tysięcy podstron, ale założę się, że są to strony z artykułami/ogłoszeniami/czymś o ustalonej strukturze. Zend_Navigation jest jak najbardzie bardzo przydatnym narzędziem do tworzenia nawigacji (menu) oraz breadcrumbsów. Nie musisz każdej "schematycznej" strony ładować do konfiguracji (to byłoby wręcz idiotyczne), ładujesz tylko te strony które się nie zmieniają. przykładowy breadcrumbs:
Strona główna > Ogłoszenia > Darmowe
W nawigacji (ja trzymam w pliku xml) masz coś takiego:
<main>
<label>MAIN_PAGE</label>
<module>default</module>
<controller>index</controller>
<action>index</action>
<privilege>guest</privilege>
<pages>
<offers>
<label>OFFERS</label>
<module>offers</module>
<controller>index</controller>
<action>index</action>
<privilege>guest</privilege>
<pages>
<free>
<label>FREE_OFFERS</label>
<module>offers</module>
<controller>free</controller>
<action>index</action>
<privilege>guest</privilege>
</free>
</pages>
</offers>
</pages>
</main>
I w taki piękny sposób załatwiam sobie sprawę navigacji, kontroli dostępu, i nawigacji w wersjach językowych. Jeżeli masz taki portal to zapewne masz wersje językowe. Wystarczy obiekt Zend_Translate wrzucić do Zend_Registry::set('Zend_Translate',$translate) i nasza nawigacja z łatwością z niej skorzysta.