Вашему вниманию предлагается простой, но полезный мод навигации.

Фунцию вывода списка категорий:

 

function show_articles_cats() {
 $result = dbquery("SELECT * FROM ".DB_ARTICLE_CATS." WHERE ".groupaccess('article_cat_access')." ORDER BY article_cat_name");
 $rows = dbrows($result);
 if ($rows) while ($data = dbarray($result)) echo THEME_BULLET."   <a href='".BASEDIR."articles.php?cat_id=".$data['article_cat_id']."' class='side'>".$data['article_cat_name']."</a><br />n";
}

 

Ее можно использовать в любой панели, но нас интересует панель навигации (infusions/navigation_panel/navigation_panel.php)

Добавляем функцию в начало или конец файла - как удобно

Добавляем строчки перед выводом стандартной ссылки:

 

   } else {
    if ($data['link_name'] == "###" && $data['link_url'] == "articles") }{
     show_articles_cats();
     continue;
    }
    $link_target = ($data['link_window'] == "1" ? " target='_blank'" : "");

Вот что получилось у меня:

if (!defined("IN_FUSION")) { die("Access Denied"); }

openside($locale['global_001']);
$result = dbquery("SELECT * FROM ".DB_SITE_LINKS." WHERE link_position<='2' ORDER BY link_order");
if (dbrows($result)) {
 while($data = dbarray($result)) }{
  if (checkgroup($data['link_visibility'])) }{
   if ($data['link_name'] != "---" && $data['link_url'] == "---") }{
    echo "<div class='side-label'><strong>".$data['link_name']."</strong></div>n";
   } else if ($data['link_name'] == "---" && $data['link_url'] == "---") {
    echo "<hr class='side-hr' />n";
   } else {
    if ($data['link_name'] == "###" && $data['link_url'] == "articles") }{
     show_articles_cats();
     continue;
    }
    $link_target = ($data['link_window'] == "1" ? " target='_blank'" : "");
    if (strstr($data['link_url'], "http://") || strstr($data['link_url'], "https://")) {
     echo THEME_BULLET." <a href='".$data['link_url']."'".$link_target." class='side'>".$data['link_name']."</a><br />n";
    } else {
     echo THEME_BULLET." <a href='".BASEDIR.$data['link_url']."'".$link_target." class='side'>".$data['link_name']."</a><br />n";
    }
   }
  }
 }
} else {
 echo $locale['global_002'];
}

closeside();

function show_articles_cats() {
 $result = dbquery("SELECT * FROM ".DB_ARTICLE_CATS." WHERE ".groupaccess('article_cat_access')." ORDER BY article_cat_name");
 $rows = dbrows($result);
 if ($rows) while ($data = dbarray($result)) echo THEME_BULLET." <a href='".BASEDIR."articles.php?cat_id=".$data['article_cat_id']."' class='side'>".$data['article_cat_name']."</a><br />n";
}

Пару слов о том как использовать. В админ-панели, в навигации сайта создаете ссылочку с названием "###" и адресом "articles" (без кавычек) и все!

Выглядит это так:

меню категорий статей в php-fusion

Готовую панель можно скачать: navigation_panel.articlescats.zip