Створення сайту на TYPO3
Зміст
Курсова робота на тему “Створення сайту на TYPO3”
1. Система керування вмiстом
Скорочено СКВ (англ. CMS) — програмне забезпечення для організації веб-сайтів чи інших інформаційних ресурсів в Інтернеті чи окремих комп’ютерних мережах. Перші СКВ були розроблені на великих корпораціях для організації роботи з документацією. З часом діапазон продукції розширювався і все більше інтегрувався у сучасні мережеві рішення аж до популярних веб-порталів.
Багато сучасних СКВ поширюються як безкоштовні і легкі у встановленні (інсталяції) програми, які розробляються групами ентузіастів. Системи управління веб-сайтом часто розраховані на роботу у певному програмному середовищі, тому для їх роботи потрібно, щоб на сервері, де вона розміщена, були встановлені веб-сервер, підтримка PHP та системи керування базами даних, а також, в разі необхідності, додаткові програми для обробки зображень чи математичних формул.
У рамках даної курсової роботи для використання обрана система керування вмістом з відкритим програмним кодом TYPO3 (вимовляеться «тайпо три»), яка розповсюджується на основі Загальної публічної ліцензії (GPL). Вона має багато цікавих і просто необхідних для роботи властивостей систем такого типу, є багато прикладів використання TYPO3 для побудови найрізноманітніших багатомовних сайтів.
На сьогоднішний день TYPO3 працює більш ніж на 8500 сайтах, це промислова СКВ, що відповідає високим стандартам безпеки. Вона використовується на сайтах шести швейцарських банків і декількох європейських платіжних систем.
TYPO3 має два режими роботи: frontend і backend. Frontend — це «обличчя» сайту, те, яким він видний відвідувачам. Backend — це інтерфейс для адміністраторів і редакторів веб-сайту. Крім того, підтримується режим frontend-редагування, що дозволяє редакторам вносити правки безпосередньо при перегляді «обличчя» сайту.
2. Використання веб-шаблонiв
Шаблонізатор — це програмне забезпечення, що дозволяє використовувати html-шаблони для генерації кінцевих html-сторінок. Основна мета використання шаблонізаторов — це відділення представлення даних від виконуваного коду. Часто це необхідно для забезпечення можливості паралельної роботи програміста і дізайнера-верстальника. Використання шаблонізаторов часто покращує читаність коду та внесення змін у зовнішній вигляд, коли проект цілком виконує одна людина.
Веб-шаблони можуть бути використані для створення сайтів будь-якого типу. У найпростішому своєму смислі, веб-шаблон функціонує аналогічно документу на бланку для використання при створенні веб-сайту.
Структура сайту в TYPO3 представлена деревом сторінок. На кожній сторінці можуть бути розміщені елементи змісту — невеликі блоки інформації: текст, текст і зображення, зображення, таблиця, чистий html, плагін і інше. TYPO3 заснована на шаблонах. Існують готові шаблони для TYPO3, проте в основному шаблони будуються наново на спеціальнiй конфігураційнiй мовi TypoScript. Незважаючи на використання script в назві, TypoScript не є процедурною мовою. Він використовується для конфігурації і відображення сайту.
Templavoila — це альтернативний шаблонізатор для TYPO3. За допомогою Templavoila з HTML-шаблону генерується TYPO3-шаблон без змін в структурі HTML. Процес генерації такого шаблону (меппінга) являє собою зіставлення областей HTML-коду і тієї функціональсті, яка буде пов’язана з цими областями. Наприклад, один з тегів <div> буде замінятися на сайті меню, замість іншого тега буде підставлений елемент змiсту. Процедура меппiнгу виконується за допомогою миші й не вимагає навіть знання HTML.
3. Система керування базами даних
База даних (БД) — це впорядкований набір логічно взаємопов’язаних даних, що використовується спільно, та призначений для задоволення інформаційних потреб користувачів.
Система керування базами даних (СКБД) — це комп’ютерна програма чи комплекс програм, що забезпечує користувачам можливість створення, збереження, оновлення, пошук інформації та контролю доступу в базах даних.
У рамках даної курсової роботи для використання обрана система керування базами даних СКБД з відкритим кодом MySQL. Первiсно вона була створена як альтернатива комерційним системам. MySQL з самого початку була дуже схожою на mSQL, проте з часом вона все розширювалася і зараз MySQL — одна з найпоширеніших систем керування базами даних. Вона використовується, в першу чергу, для створення динамічних веб-сторінок, оскільки має чудову підтримку з боку різноманітних мов програмування.
MySQL вважається гарним рішенням для малих і середніх застосунків. Вихідні коди сервера компілюються на багатьох платформах. Найповніше можливості сервера виявляються в UNІХ-системах, де є підтримка багатонитевості, що підвищує продуктивність системи в цілому. Для некомерційного використання MySQL є безкоштовним.
Можливості сервера MySQL:
– простота у встановленні та використанні;
– підтримується необмежена кількість користувачів, що одночасно працюють із БД;
– кількість рядків у таблицях може досягати 50 млн.;
– висока швидкість виконання команд;
– наявність простої і ефективної системи безпеки.
4. Структура сайту
Основним компонентом розробленої структури інтернет-магазину є каталог товарів — частина сайту, з якою безпосередньо мають справу відвідувачі магазину. У результаті аналізу предметної області було вирішено зробити каталог багаторівневим: перший рівень визначає клас товару (велосипеди, аксесуари і т.д.), другий рівень — категорію (марка велосипеда, назва продукта), на третьому рівні містяться конкретні моделі продукції.
Структура СКВ припускає відділення логіки від оформлення, тому ми створюємо окремi файли, якi надалi можна буде пiдключити при формуваннi каталогу. Цi файли розташовані в папці typo3conf, тобто в папці конфігурації.
Коротко опишемо функціональну спрямованість кiлькох з них:
– confing.php
містить параметри з’єднання з базою даних, ініціалізує головні таблиці і отримує дані за допомогою методiв post і get;
– main.php
отримання списку товарів з БД, заповнення полів атрибутів, перевірка полів на порожнечу, розрахунок ціни, заповнення сторінок каталогу;
– sub_menu.php
формування розділів меню, отримання ідентифікаторів розділів верхнього та нижнього рівнів, установка відповідності рівнів;
– random_tov.php
генерація списку товарів, що позначенi як новинки, і виведення декількох з них на головну сторінку у випадковому порядку;
– page_conf.php
формування сторінки товару, ініціалізація маленької картинки для попереднього перегляду і фотографії великого розміру.