yazınızdan bişe anlaşılmıyor ama mantık verebilirim.

Kategori tablo yapısı şöyle olsun
id - ust_kategori - sira - icon(isterseniz ekleyin)

ana kategorilerin ust_kategori sütunu 0 değerinde olsun diğer kategorileri eklerkende üste kategori olarak bağlı oldukları kategori olsun. Ust kategori değeri 0 olmayanlar alt kategoridir bunları ayrı olarak çekip icon tanımlayabilirsiniz yada dbde icon sutununa icon girip ordan çektirebilirsiniz.