1. Похоже вы ещё не уверены, существует ли вообще такой URI, а уже начинаете строить навигацию. А если 404? 2. На каждой итерации цикла вы обнуляете $parent. Смысл? 3. Условие во втором ^if верно только для главной страницы. 4. Местами "()"можно вполне заменить на "[]"