Дали задание написать интернет магазин. На чем писать?
Разрешили использовать CMS
Так в чем тогда смысл напрягаться? Берете любую популярную cms для магазинов (например opencart - к вам все равно не будут докапываться в плане производительности). 
Находите бесплатную тему к ней. 
Меняете в теме картинки и фоновые цвета. 
Перебиваете копирайты в теме. 
Находите плагин для забивания магазина рандомными товарами.
Магазин готов.
Нет причин велосипедить, все равно впервые ничего толкового выйдет.
modx+miniShop2 и всё