|
4. Ієрархія контенту в CMS
ADO в Delphi AJAX Android C++ CakePHP CMS COM CSS Delphi Flash Flex HTML Internet Java JavaScript MySQL PHP RIA SCORM Silverlight SQL UML XML Бази даних Веб-розробка Генетичні алгоритми ГІС Гітара Дизайн Економіка Інтелектуальні СДН Колір Масаж Математика Медицина Музика Нечітка логіка ООП Патерни Подання знань Розкрутка сайту, SEO САПР Сесії в PHP Системне програмування Системний аналіз Тестологія Тестування ПЗ Фреймворки Штучний інтелект
|
Знання
→
CMS — системи керування вмістом
→
Розробка систем керування контентом (CMS) – архітектурні та інфологічні засади
CMS — системи керування вмістом → Розробка систем керування контентом (CMS) – архітектурні та інфологічні засади4. Ієрархія контенту в CMSІєрархія – це розташування частин або елементів цілого в певному порядку від вищого до нижчого. Ієрархія – найзручніший і природно зрозумілий спосіб структурування речей, це ж справедливо і для елементів контенту сайту. Незважаючи на те, що ієрархічне структурування в Web викликає труднощі у випадках великої кількості інформації, тим не менше ієрархія, як базова структура, для організації контенту є зручним і практично доцільним способом структурування інформації веб-ресурсу.
Практичне значення ієрархічної структури контенту розповсюджується на обидві категорії користувачів CMS – на відвідувачів сайту і на редакторів. З іншого боку для редактора сайту наявність ієрархічно структурованого контенту спрощує внутрішню орієнтацію, пошук, редагування та додавання нового контенту в потрібне місце інформаційної структури ресурсу. Таким чином, вважається доцільним зробити базовою структурою контенту ієрархію сторінок, що виражатиметься в деревоподібній структурі елементів контенту. Для реалізації такої моделі в реляційній БД CMS-системи немає необхідності створювати додаткові таблиці для збереження відношень між сторінками, як це часто робиться в розповсюджених системах. В даному випадку в таблицю сторінок необхідно додати поле, яке вказуватиме на батьківську сторінку. Таке відношення в БД прийнято називати зворотним (рис.6). Рис. 6. Батьківське відношення в таблиці сторінок для реалізації дерева контенту Тут code – код сторінки, ключове поле. parentCode – код батьківської сторінки, зовнішній ключ, що посилається на поле code цієї ж таблиці.
Зауваження Подібний зв’язок дозволяє представити структуру сторінок у вигляді дерева, де у кожного елемента може бути лише один батьківський (рис.7). Організація ієрархічного меню сайтуНавігаційна схема та схема меню сайту можуть значно відрізнятись від проекту до проекту. Натомість одним із найбільш зручних способів забезпечення навігації у великому інформаційному просторі веб-ресурсу є ієрархічне меню, що розкривається послідовно із відвідуванням наступного рівня вкладеності сторінок (рис.8). Рис. 8. Приклад ієрархічного меню сайту
Зауваження Алгоритм побудови ієрархічного меню сайтуІєрархічне меню, про яке іде мова, працює відповідно до простого правила: відкрито усіх пращурів поточного елемента, а також і сам поточний елемент. Поточний елемент меню – це такий елемент, який відповідає поточній сторінці сайту. Відкритий елемент меню – це такий елемент, для якого відображаються усі його дочірні елементи (звичайно один з дочірніх елементів також може бути відкритим). Алгоритм програмної побудови такого меню:
1. Визначити ланцюжок батьківських сторінок для поточної сторінки – масив кодів сторінок-пращурів. Реалізація зсуву вправо. Для візуалізації ефекту вкладеності кожен наступний по глибині рівень повинен відображатися з деяким відступом праворуч (див. рис. 8). Реалізувати зсув можна різними способами. По-перше разом із сторінкою в рекурсивну функцію можна передавати рівень вкладеності. Іншим способом є використання CSS, коли для блоку, що міститиме підпункти задається відступ.
Зауваження Сторінки-контейнериСторінки-контейнери – сторінки, головним призначенням яких є подати список посилань (як правило список анотованих посилань) на дочірні сторінки. Власний контент таких сторінок, як правило, не має великого об’єму і є короткою анотацією до розділу або набору статей. Сторінки-контейнери займають друге місце після простих інформаційних сторінок по частоті застосування в веб-ресурсах (рис. 9). Рис. 9. Приклад сторінки-контейнера До прикладів сторінок-контейнерів слід віднести такі розділи: категорії товарів, рубрики новин, тематичні розділи в блогах, сторінки тегів (міток) тощо. Типи сторінок-контейнерівСторінки-контейнери можуть представляти дочірні сторінки у різних формах, основними з яких є наступні:
Керування формою сторінки-контейнера можна реалізовувати як на рівні адміністрування сайту, так і на рівні інтерфейсу відвідувача, в залежності від специфіки веб-проекта. З точки зору дизайну і зручності користування сайтом CMS система повинна передбачати керування основною формою подання даної конкретної сторінки-контейнера на рівні редактора сайту. На рівні структури БД опис контейнерів реалізовується шляхом додавання спеціального поля в таблицю сторінок, наприклад isContainer та/або containerType. isContainer – прапор, що вказує, чи є контейнером сторінка, containerType – вказує тип відображення контейнера (список, плитка тощо). Рис. 10. Приклад сторінки-контейнера із відображенням дочірніх сторінок у вигляді плитки Керування сортуванням дочірніх сторінокВажливим елементом в реалізації контейнерів є порядок сортування дочірніх сторінок. Керуючи способом сортування, можна створювати розділи новин, категорії товарів, добірки статей тощо. Таким чином, важливим фактором в створенні ефективної схеми роботи з ієрархією контенту та контейнерами в CMS є можливість змінювати порядок сортування для різних розділів на сайті. Для реалізації даної функціональної можливості на рівні БД слід додати спеціальне поле в таблицю сторінок, що вказуватиме на порядок сортування дочірніх сторінок, наприклад sortBy. Основні типи сортування в контейнерах:
Очевидно, для реалізації сортування у порядку визначеному редактором сторінка повинна отримати ще один атрибут – поле сортування, наприклад place. У випадку сортування сторінок по полю сортування запит на дочірні сторінки контейнера під час публікації міститиме клаузу ORDER BY place. Таким чином, поле sortBy зберігатиме налаштування для керування вибіркою дочірніх сторінок з БД та порядком їх публікації в контейнері та в меню. © Титенко С. В. Інформація курсу по матеріалам: Web-орієнтовані інформаційні системи. Методичні вказівки до вивчення дисципліни для студентів напряму підготовки 6.050103 «Програмна інженерія» / Титенко С. В. – К.: НТУУ «КПІ» 2015. – 51с. Зверніть увагу на додаткові посиланняЯкщо вас цікавить...Головний розділСторінки, близькі за змістомзагрузка...
|
Теми розділу
Сторінки, близькі за змістом
|
|
Copyright © 2008—2026 Портал Знань.
При використанні матеріалів посилання, для інтернет-ресурсів — гіперпосилання, на Znannya.org обов'язкове.
Зв'язок
|
НТУУ "КПІ" Інженерія програмного забезпечення КПІ Лабораторія СЕТ |
|