Что касается логики, эта тема выполняет функцию формы, где клиент получает логин данные своего аккаунта, заходит и должен заполнить формы (задачи) до установленной даты. С другой стороны, компания собирает эти данные.
Необходимо создать кастомную тему для WordPress, используя предоставленные файлы HTML, CSS и JS. Тема должна состоять из трех основных страниц, а также включать дополнительные функциональности для работы с пользователями и кастомными типами контента.
👉Основные требования:
Структура темы:
Тема должна включать три основные HTML-страницы:
login.html эта страница должна быть использована как домашняя страница и предоставлять пользователям возможность войти в систему. После успешного логина пользователь попадает на другие страницы.
overview.html эта страница должна быть доступна только для авторизованных пользователей. На ней должна отображаться информация о назначенных событиях (Events) и статистика по выполненным и невыполненным задачам (Tasks).
tasks.html также доступна только после авторизации. На этой странице пользователи должны иметь возможность заполнять и отправлять формы, которые затем будут отображены как "выполненные".
Кастомные типы постов:
Создать кастомный тип поста Events (События). Каждое событие должно иметь возможность редактирования следующих полей: заголовок, текст и изображение. Событие может быть ассоциировано с несколькими пользователями с ролью event_user, но каждый пользователь может быть ассоциирован только с одним событием.
Кастомная роль пользователя:
Создать кастомную роль "Event User". Пользователи этой роли не должны иметь доступ к админ-панели WordPress, а только к фронтенду после успешного логина. Роль "Event User" предоставляет доступ только к страницам overview.html и tasks.html.
Функционал для администратора:
Администратор имеет возможность просматривать данные, отправленные пользователями (роль: "Event User") через формы на странице tasks.html. В админке WordPress администратор может видеть всю информацию, которую заполнили пользователи в формах.
👉Функционал на страницах:
overview.html на этой странице должна быть секция, отображающая назначенное событие для пользователя (если таковое имеется). Также должна быть секция со списком задач (Tasks), где будет отображаться статус каждой задачи: выполнена или не выполнена.
tasks.html пользователи имеют возможность заполнять и отправлять формы для выполнения задач. После отправки, задача должна помечаться как "выполненная", и информация об этом будет отображаться на странице.
Формы на странице Tasks должны сохранять данные после отправки, чтобы администратор мог их просматривать в админке.
👉 Дополнительно:
Использование стандартов WordPress для разработки темы и плагинов. Соблюдение принципов безопасности, таких как валидация и экранирование ввода. Реализация кастомного типа поста через функции темы. Обеспечение корректного отображения страниц на всех устройствах.