Если посмотреть на код который добавляет в базу, то станет все понятно почему он выводит только один товар, так как идёт проверка есть ли пользователем уже создан товар, то он его обновляет просто, а не добавляет новый. Код ниже.
//Вставляем в базу
$check = $db->super_query("SELECT COUNT(*) AS cnt FROM `".PREFIX."_shop` WHERE user_id = '{$user_id}'");
if($check['cnt']) {
$db->query("UPDATE `".PREFIX."_shop` SET title = '{$title}', text = '{$text}', adate = '{$str_date}', price = '{$price}', currency = '{$currency}', category = '{$category}', email = '{$email}', contacts = '{$contacts}', user_id = '{$user_id}', link_vk = '{$vk}', skype='{$skype}', gid='{$user_info['user_id']}' WHERE user_id = '{$user_id}'");
} else {
$db->query("INSERT INTO `".PREFIX."_shop` SET title = '{$title}', text = '{$text}', adate = '{$str_date}', price = '{$price}', currency = '{$currency}', category = '{$category}', email = '{$email}', contacts = '{$contacts}', user_id = '{$user_id}', link_vk = '{$vk}', gid='{$user_info['user_id']}', status = '1'");
}
Замени его просто на этот и будет сколько нужно столько и добавлять товаров.
$db->query("INSERT INTO `".PREFIX."_shop` SET title = '{$title}', text = '{$text}', adate = '{$str_date}', price = '{$price}', currency = '{$currency}', category = '{$category}', email = '{$email}', contacts = '{$contacts}', user_id = '{$user_id}', link_vk = '{$vk}', gid='{$user_info['user_id']}', status = '1'");