Атестаційні завдання K2 ERP/CMS

Матеріал з K2 ERP Wiki Ukraine — База знань з автоматизації та санкцій в Україні
Перейти до навігації Перейти до пошуку

Атестаційне завдання K2 ERP — CMS — практична задача для розробника K2 ERP, що передбачає створення модуля управління контентом сайту або корпоративного порталу: сторінками, новинами, статтями, оголошеннями, медіафайлами, багатомовністю, публікацією та історією змін.

Назва

Модуль CMS: Управління контентом сайту і корпоративного порталу.

Реальний бізнес-контекст

Компанія має публічний сайт або внутрішній корпоративний портал. Потрібно надати менеджерам можливість самостійно керувати контентом без залучення розробників.

Користувачі повинні мати можливість:

  • створювати сторінки;
  • редагувати новини, статті та оголошення;
  • керувати медіафайлами: зображеннями, PDF-файлами та іншими документами;
  • публікувати інформацію кількома мовами.

Основні завдання

1. Структура довідників

Довідник «Категорії контенту»

Довідник категорій контенту повинен містити:

  • назву категорії;
  • тип категорії:
    • новина;
    • стаття;
    • сторінка;
    • оголошення;
  • батьківську категорію для побудови ієрархії.

Довідник «Мови»

Довідник мов повинен містити:

  • назву мови, наприклад українська, англійська, польська;
  • код мови, наприклад uk, en, pl.

2. Журнал «Матеріали»

Журнал матеріалів повинен відображати всі одиниці контенту сайту або корпоративного порталу.

Колонки журналу

У журналі мають бути такі колонки:

  • заголовок;
  • категорія;
  • автор;
  • дата створення;
  • статус публікації:
    • чернетка;
    • опубліковано;
    • приховано;
  • мова.

Функціональність журналу

Журнал має підтримувати:

  • пошук по заголовку;
  • пошук по автору;
  • пошук по категорії;
  • фільтрацію за статусом;
  • фільтрацію за мовою.

3. Форма створення матеріалу

Основна інформація

Форма створення або редагування матеріалу повинна містити:

  • заголовок;
  • короткий опис або анонс;
  • повний текст матеріалу через WYSIWYG-редактор;
  • категорію з вибором із довідника через AJAX;
  • мову;
  • зображення-прев’ю із завантаженням через медіабібліотеку;
  • статус:
    • чернетка;
    • опубліковано.

Додаткові поля

Додатково потрібно передбачити:

  • теги для SEO;
  • URL-адресу, яка генерується автоматично або вказується вручну.

4. Управління медіафайлами

Модуль має містити медіабібліотеку з каталогами.

Потрібно реалізувати:

  • завантаження зображень та файлів через AJAX;
  • підключення файлів до матеріалів;
  • можливість обрізки зображень при завантаженні;
  • зберігання медіафайлів у структурованих каталогах.

5. Мультимовність

Кожен матеріал може мати окремі версії різними мовами.

Потрібно реалізувати механізм прив’язки матеріалів між мовами.

Приклад:

  • Про нас українською мовою → About us англійською мовою.

6. Публікація на сайті

Після публікації матеріал автоматично відображається на сайті за налаштованим шаблоном.

URL повинен формуватися за правилом:

/<код мови>/<категорія>/<url матеріалу>/

Приклад URL:

/en/news/open-new-office/

7. Специфіка функціоналу

Модуль повинен підтримувати:

  • редагування контенту без перезавантаження сторінки через AJAX;
  • автоматичне збереження чернеток кожні X хвилин;
  • відображення історії змін;
  • фіксацію того, хто редагував матеріал;
  • фіксацію дати та часу останньої зміни;
  • можливість відкату до попередньої версії.

8. Модульні блоки контенту, опціонально

Рівень Advanced передбачає можливість створення окремих блоків контенту для розміщення в різних частинах сайту.

Приклади блоків:

  • банер;
  • акційний блок;
  • слайдер.

Потрібно передбачити конфігурування розташування блоку через панель адміністратора.

Технічні вимоги

Параметр Опис
Бекенд K2 ERP на Python або PHP
БД PostgreSQL або MySQL
Фронтенд HTML5, JavaScript, AJAX через Axios або Fetch API
UI-компоненти DataTables, Select2, WYSIWYG-редактор TinyMCE або CKEditor
Медіауправління Завантаження файлів через FilePond або Dropzone.js
Друк Немає необхідності

Критерії оцінки

Критерій Бали
Реалізація журналу матеріалів 20
Форма створення та редагування матеріалу 20
Робота медіабібліотеки 20
Підтримка багатомовності 20
Інтерактивність через AJAX 10
Управління статусами публікації 10
Разом 100

Примітка

Цей модуль потрібен практично кожній компанії, що має сайт або внутрішній портал: IT-компаніям, маркетинг-агентствам, торговим мережам, освітнім установам і банкам.

Очікуваний результат

У результаті виконання атестаційного завдання має бути створений CMS-модуль K2 ERP, який підтримує довідники категорій і мов, журнал матеріалів, форму створення та редагування контенту, WYSIWYG-редактор, медіабібліотеку, багатомовність, автоматичну публікацію, SEO-поля, історію змін, AJAX-інтерактив і, за потреби, модульні блоки контенту.

Рекомендовані сутності бази даних

  • категорії контенту;
  • мови;
  • матеріали;
  • переклади матеріалів;
  • медіафайли;
  • каталоги медіабібліотеки;
  • теги;
  • SEO-налаштування;
  • історія змін;
  • статуси публікації;
  • модульні блоки;
  • розташування блоків;
  • автори та права доступу.

Див. також