WEB DEV - ПОТОК 03 ( УРОК: ЧАСТЬ 3. ПРОЕКТ. )
Сделать основу и базовую настройку проекта:
- Настройка проекта
- Переменные HOST и ROOT
- Обработка входящего запроса
- Создание Роутера
- Создание системы модулей
- Создание системы шаблонов
- Создать БД, подключиться и вывести из нее данные
Сделать систему регистрации и входа пользователей:
- Роутер и модули для системы Регистрации
- Система регистрации, запись данных пользователя в БД
- Вход на сайт
- Отображение шапки пользователя и шапки администратора, профиль пользователя в шапке
- Редактирование профиля пользователя
- Загрузка аватарки пользователя
- Система восстановления (сброса) пароля
Сделать добавление и вывод постов в блог:
- Проставить в шапке и подвале сайты ссылки на разделы сайта
- Сделать заготовку под модули и шаблоны для блога
- Сделать создание нового поста и загрузку изображения для него
- Вывести посты карточками на странице Блога
- Вывести картинку-заглушку если у поста не загружена фотография
- Работа со строками. Обрезка заголовка поста
- Страница вывода отдельного поста
Сделать CRUD систему для категорий на сайте:
- Создание заготовки под модули и шаблоны
- Создание Категорий
- Нотификации о создании категории
- Вывод всех категорий в виде таблицы
- Возможность редактирования названия категорий
- Удаление категорий
Прорабатываем страницу с отдельным постом:
- Выбор Категории при создании Поста в Блоге
- Делаем вывод Категории и Автора на странице Поста
- Редактирование поста в Блоге
- Замена картинки при редактировании Поста
- Подключить визуальный редактор ckEditor
- Сделать удаление поста
- Уровни доступа к страницам сайта. Небольшие косметические правки.
Создаем функционал с добавлением комментариев к постам в блоге:
- Делаем форму добавление комментария. Комментарии хранятся в БД. Каждый комментарий имеет следующие поля: пост к которому он оставлен, id автора который написал комментарий, дата написания комментария, текст комментария.
- Делаем вывод комментариев на странице поста.
- Выводим количество комментариев в заголовке поста.
Создаем функционал для раздела Контакты:
- Создаем маршруты, и шаблон для страницы контактов.
- Создаем страницу для редактирования контактных данных. Все контакты храним в БД.
- Отображаем в шаблоне все контакты и БД. P.S. Форма отправки сообщений → в следующем ДЗ.
Создаем функционал для отправки сообщений администратору сайта:
- Настраиваем форму сообщений - чтобы данные из нее записывались в БД.
- Создаем страницу для отображения всех сообщений пользователей из БД.
Создаем функционал для отправки сообщений администратору сайта:
- Создаем роутер, модули и шаблоны
- Заполняем шаблоны для страниц редактирования
- Редактирование текста - Обо мне, и вывод его на страницу из БД
- Редактирование Технологий (навыков)
- Добавление мест работы, и вывод их из БД
- Создание SVG индикаторов для Технологий
- Вывод Технологий из БД
- Страницы редактирования, и кнопки Редактирования должны быть доступны только администратору
Выводим на главную страницу информацию "О авторе" а также "Новые записи из блога":
- Вывести на главную "О авторе"
- Вывести на главную "Новые записи из блога"
- Пройтись по всем ссылкам в навигации в шапке, в панели админа, в подвале - проверить работу всех ссылок, нерабочие скрыть.
- Проект готов! Но, рекомендуется самостоятельно создать страницу с Портфолио для ссылки навигации "Работы".
СДАЧА ДЗ:
1) Создаем проект на GitHub.
2) Добавляем коллаборатора.
3) Для сдачи ДЗ делаем Pull Request с запросом ревью.
4) В репозиторий с проектом положить дамп базы данных.
ВАЖНО!
Имя репозитория и имя БД называем в формате:
WD03-project--[ваша-фамилия]
То есть у вас будет одинаковое имя для репозитория и имени БД.
Это нужно для упрощения и ускорения проверки ДЗ. Спасибо за понимание.
Например, если ваша фамилия Смирнов:
Имя репозитория на GitHub: WD03-project-smirnov
Имя БД: WD03-project-smirnov
ТРЕБОВАНИЕ!
Сертификат “Прошел курс с Отличием” - это всё, что указано для сертификата “Курс прошел”.
Плюс следующие моменты:
JS скрипты - Карта в разделе Контакты.
Подключить и отобразить карту в разделе Контакты. Это может быть Google Maps или Яндекс Карты.
У карты сделать свой значок для маркера (указателя) адреса.
PHP часть - Раздел Работы.
Есть добавление новой работы. Каждая работа обязательно имеет поля для Названия, описания,
фотографии, даты публдикации работы.
Остальные поля по вашему усмотрению.
Вывод всех работ которые добавлены на сайт на общей странице с Работами.
Страницы для отдельных работ.
