Для каждой задачи нужно индивидуально подходить. Например если форум, то нужно брать cms для форума, а не делать новостной сайт с модулем форума. Тоже самое относится и к магазинам. В некоторых случаях правильнее и легче написать с нуля чем городить костыли на cms