→ Пошук по сайту       Увійти / Зареєструватися
Знання CMS — системи керування вмістом

CMS. Принципи розробки систем керування вмістом сайтів

 CMS

  1. CMS. Схема роботи CMS
  2. Центральна сутність CMS – елемент контенту або веб-сторінка
  3. Модуль подання контенту (ядро)
  4. Розповсюджені архітектурні і технічні помилки при розробці CMS.

1.    CMS. Схема роботи CMS

Система керування вмістом (СКВ; англ. Content Management System) — програмне забезпечення для організації веб-сайтів чи інших інформаційних ресурсів в Інтернеті чи окремих комп'ютерних мережах.

Різновиди СКВ

  • Web content management systems для управління веб-сайтами (наприклад, енциклопедіями, подібними до Вікіпедії, онлайн-виданнями, блогами, форумами, корпоративними чи персональними веб-сторінками та ін.)
  • Транзакційні СКВ для забезпечення транзакцій у електронній комерції.
  • Електронні бібліотеки (Digital Asset Management) для забезпечення циклу життя файлів електронних медіа (відео, графічн., презентації, тощо).
  • Освітні СКВ — системи для організації Інтернет курсів та відповідного циклу життя документації. Наприклад:
  • Корпоративні СКВ (Enterprise content management systems) з різноплановим пристосуванням для потреб підприємн. діяльності. Підтримують цикл життя внутрішньої і зовнішньої документації.

А також:

  • Інтегровані СКВ для роботи з документацією на підприємствах.
  • Системи для забезпечення циклу життя документації (інструкції, довідники, описи).
  • Платформенні СКВ (Platform Content Management Systems) підтримують автоматизацію роботу з комп’ютерними файлами, папками, програмами у визначеному програмному середовищі.

Схема роботи CMS

Web content management systems – Керування вмістом сайтів

Генерація сторінок за запитом. Системи такого типу працюють на основі зв'язки

Контент-менеджер

Модуль редагування

База даних

Модуль подання (ядро)

Відвідувач

Інформація в базі даних змінюється за допомогою модуля редагування.

Модуль подання генерує сторінку із змістом при запиті на нього, на основі інформації з бази даних. Сторінки наново створюються сервером (модулем подання) при кожному запиті. На основі URL у модулі запиту відбувається визначення запитуваної порції контенту/сторінки (наприклад через параметри методу GET).

2.    Центральна сутність CMS – елемент контенту або веб-сторінка

Веб-сторінка (англ. Web-page) — інформаційний ресурс доступний в мережі World Wide Web (Всесвітня паутина), який можна переглянути у веб-браузері . Зазвичай, ця інформація записана в форматі HTML або XHTML , і може містити гіпертекст з навігаційними гіперпосиланнями на інші веб-сторінки.

Розробка моделі веб-сторінки зо допомогою об’єктного підходу

Кожна веб-сторінка сайту має унікальний ідентифікатор з точки зору відвідувача – свою URL-адресу.

Веб-сторінка сайту містить:

  • Інформацію:
    • Власне контент
    • Елементи навігації (меню, навігаційний шлях, додаткові посилання)
  • Елементи дизайну:

 

Контент веб-сторінки сайту містить:

  • Заголовок
  • Основний контент

А також додатково може містити:

  • Анотацію
  • Зображення-ілюстрація для анотації
  • Зображення-ілюстрація для сторінки
  • Короткий заголовок, якщо основний заголовок довгий (наприклад для меню)
  • Дати (дата створення, тощо…)

Такий набір атрибутів є базовим для будь-якої сторінки сайту:

  • Головна сторінка
  • Сторінка розділу
  • Інформаційна сторінка
  • Стаття
  • Новина
  • Товар (має додаткові атрибути)

Сторінки-контейнери – сторінки, головним призначенням яких є подати список посилань (як правило список анотованих посилань) на дочірні сторінки.

Сторінки-контейнери займають друге місце після інформаційних сторінок по частості застосування в веб-ресурсах.

Форми публікації веб-сторінки:

  • Власне сторінка
  • Гіперпосилання всередині контенту іншої сторінки
  • Гіперпосилання, текстом якого є заголовок сторінки
  • Анотоване посилання

Анотоване посилання – містить заголовок сторінки, що є посиланням на неї а також невелику анотацію, зазвичай розміщену нижче під посиланням.

Об???єктна модель Веб-сторінки сайту

Базовий набір атрибутів і методів об’єкту сторінки

(parentId)

id

caption

shortCaption

intro

text

image

date???

printContent

printIntroLink

getURL

Багатомовність контенту

У разі багатомовного ресурсу має сенс продублювати текстові атрибути об’єкту сторінки, додавши поля для відповідної мови:

captionEn

shortCaptionEn

introEn

textEn

Місце сторінки в структурі сайту

Найкращою базовою структурою для подання контенту є ієрархічна (дерево сторінок), тому збереження об’єктів контенту в БД слід організувати по принципу дерева – додати поле, що вказує на ідентифікатор батьківського елементу:

parentId

Id

3.    Схема роботи модуля подання контенту

Користувач

Ядро

одуль подання контенту)

Об???єкт поточної сторінки (ОПС)

Робить запит URLGET параметром)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Отримання і перегляд згенерованої сторінки

 

 

Отримує код сторінки, переданий методом GET

 

Ініціалізація ОПС по коду →

 

 

 

 

 

 

Запуск публікації контенту. Початок формування структури HTML-документа.

 

Виведення в <title> заголовку з ОПС

 

Виведення меню

1)     запит до БД на отримання записів з таблиці сторінок

2)     циклічна обробка запиту, виведення пунктів меню

 

Виклик методу публікації контенту ОПС →

 

 

Завершення формування HTML-документу

 

 

 

 

 

Запит до БД на отримання запису сторінки по коду

 

Ініціалізація полів по запису із таблиці БД

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Виведення контенту сторінки

 

 

 

 

4.    Розповсюджені архітектурні і технічні помилки при розробці CMS

  1. Розмежування на рівні сутностей БД елементів контенту і навігації (меню). Меню не є незалежною сутністю і фактично являє собою ієрархічний перелік посилань на елементи контенту, тобто вся інформація про меню міститься в об’єктах контенту.

Вихід: Зберігати ієрархію сторінок в таблиці веб-сторінок, за допомогою «рекурсивного зовнішнього ключа на цю ж таблицю» (дерево сторінок).

  1. Використання в URL сторінки автоінкрементного ідентифікатору сторінки. Неефективно з точки зору usability. (допустимо лише для сайтів ЗМІ і подібних).

Вихід: У якості унікального поля використовувати текстовий ідентифікатор сторінки (наприклад: about, contacts, pronas, tovary).

  1. Залежність URL сторінки від місця сторінки в структурі сайту. Хоча ця властивість зазначається як позитивна з точки зору usability (видно по URL, де ця сторінка в структурі), це має негативне значення для потреби гнучкості розвитку сайту і SEO (оптимізації під пошукові системи) – у разі зміни URL сторінка втратить придбані раніше позиції в пошукових системах. Якщо ж URL сторінки не залежить від місця сторінки в ієрархії сайту, її можна вільно пересувати, розвиваючи ресурс, не втративши пошукових позицій.

Вихід: У якості унікального ідентифікатора стоірнки використовувати текстовий ідентифікатор (наприклад: about, contacts, pronas, tovary). У свою чергу це позитивно відобразиться на usability.

  1. Використання у якості URL сторінки транслітерованого заголовка сторінки – негативно позначається для SEO: при зміні заголовка змінюється URL.

Вихід: аналогічно попередньому.

  1. Багатомовність реалізується за допомогою додаткових сутностей (таблиць) в БД – ускладнює як роботу програміста, так і роботу контент-менеджера.

Вихід: зберігати іншомовні версії в тій же таблиці сторінок у відповідних полях, що дублюють основні текстові поля для контенту.

Завдання на лабораторну роботу № 3

Створити просту CMS. Створити три складові системи: БД, модуль редагування, модуль подання (ядро):

  1. БД: Контент, тобто сторінки зберігаються в 1-й таблиці.
  2. Модуль редагування: дає можливість редагувати таблицю сторінок
  3. Модуль подання:

1)    Зауваження: усі запити відбуваються на хост сайту (тобто на index.php, в index.php підключаються необхідні бібліотеки). Код сторінки передається методом GET, наприклад URL можна задавати так: http://supersite.ua/?show=main.

2)    Створити клас «Сторінка/Елемент контенту», поля якого видобуваються з БД, містить метод публікації контенту.

3)    При публікації сторінки в заголовок браузера (<title>) виводити заголовок сторінки.

Зауваження: для початку створити однорівневу структуру сайту – одна таблиця містить усі сторінки без вказівок на ієрархію.


© 2009 Титенко С.В. Конспект лекції. НТУУ "КПІ", АПЕПС
загрузка...
Теми розділу
Сторінки, близькі за змістом