Помогите с тестовым заданием по PHP!
Тестовое задание:
Создать новостной портал. Фронт и бэк части.
Функционал: CRUD новостей, CRUD категорий.
Новость: Заголовок, категории (может быть одна, несколько, ни одной) , содержание, дата создания, дата публикации, дата снятия с публикации.
Категория: Заголовок, родительская категория (может быть одна, несколько, ни одной) .
Структура страниц: у всех страниц формат один: область с сайдбаром (меню) , контент.
Меню: ссылка на главную и вложенный список ссылок на категории.
Главная страница: вывод всех новостей (Заголовок, дата публикации, превью текста (первые n слов) ), пагинатор (20 на странице) .
Страница категории: вывод всех новостей данной категории и ее подкатегорий, пагинатор (20 на странице) .
Страница новости: Заголовок, дата публикации, текст.
Фреймворк: CodeIgniter
Теперь вопрос:
Можете посоветовать как организовать структуру БД MySQL новостей, а точней категорий (так что бы новость могла иметь 1 или более категорий или вообще не иметь их) ?