Главная · Правила · Воскресенье, 02.02.2025, 11:44
Вход · Регистрация



Интересное

  • Статьи [18]
    Скрипты [39]
  • Статистика



    Как создать движок для сайта

    Как создать движок для сайта

    У меня часто спрашивают: "Как создать свой собственный движок для сайта, например, как JoomlaDLEWordPress и другие". Многие, конечно, спросят: "А зачем, ведь есть, например, Joomla?". На этот вопрос я уже отвечал в этой статье:joomla vs сайт с нуля. И если Вы приняли решение о создании своего движка для сайта, то читайте дальше.

    Первым делом я Вас заранее предупреждаю, что даже создание простого движка требует очень много времени и сил, но зато через этот очень-очень интересный процесс Вы получите колоссальный опыт. Чтобы Вы лучше поняли, давайте распишу всё по пунктам:

    1. Сверстайте все страницы сайта. Здесь совсем необязательно рисовать какой-то дизайн - это можно сделать потом. Вы должны просто чётко нарисовать структуру внешнего вида: где будет лого, где меню, сколько колонок у Вас будет, что будет в подвале и так далее. Это всё можно будет потом поменять, но начальном этапе Вам просто нужно отлаживать движок, поэтому самый элементарный внешний вид всё равно потребуется.
    2. Создайте все таблицы для базы данных. В этом пункте необходимо понять, какие таблицы Вам потребуется и какие там будут поля. Например, таблица со статьями, с пользователями, с разделами сайта и так далее. Ничего страшного не будет, если Вы что-то забудете. Но этот пункт надо выполнить максимально хорошо, потому что после этого внутренняя структура движка станет намного понятнее.
    3. Теперь Вам необходимо создать набор классов (да, советую использовать объектно-ориентированное программирование, поверьте - так будет намного проще), каждый из которых отвечает за определённую часть. Например, класс по работе с базой данныхкласс по управлению пользователями и так далее. Обратите внимание, что один класс не должен реализовывать задачи, которые по смыслу относятся к другим. Например, не надо соединяться с базой данных в классе пользователя. А надо создать объект базы данных в классе пользователя и им манипулировать. В каждом классе Вы должны написать все методы, которые Вам потребуются. Например, метод получения логина пользователя по его id или метод изменения e-mail пользователя и так далее. Также наверняка Вам потребуется какой-нибудь глобальный абстрактный класс, в котором будут содержаться методы, общие для всех других. Например, очень полезный метод - это получения значения некоего поля, по известному имени и значению другого поля. Например, мы знаем e-mail пользователя, и хотим узнать его логин. Такой метод легко данную задачу решит.
    4. Разбейте Ваш шаблон на составные части и отправьте их в отдельные файлы с расширением tpl. Делается это так: копируете какую-то отдельную часть (например, форму авторизациичасть, где выводятся статьименю и другие) и вставляете в отдельный файл tpl. В результате, у Вас появится большое количество файлов-шаблонизаторов. В этих файлах-шаблонизаторах поставьте {элемент_шаблона}. Например, там где должно быть имя пользователя поставьте {username}. Там, где должен быть заголовок статьи, поставьте {article_title}. Аналогичным образом Вам надо исправить каждый файл tpl.
    5. Дальше создайте класс, который будет работать с файлами-шаблонами. В задачу этого класса будет входить работа с основными другими классами (например, классом пользователей), а также подстановка соответствующих данных в файлы-шаблоны вместо {элемент}. Например, вместо {username} этот класс должен будет подставить имя пользователя. Разумеется, здесь будет очень много методов, каждый из которых выполняет свою функцию.
    6. Выводите все элементы на страницах сайта, используя класс созданный в предыдущем пункте, собирая тем самым страницы по кирпичикам.
    7. И, наконец, внешний вид сайта - он же дизайн. Исправляйте файлы tpl (оставляя {элементы}), добавляйте CSS-файлы и JavaScript. А функциональность трогать уже не надо (если Вы всё сделали правильно, конечно).

    Всё, движок для сайта создан! Я понимаю, что многие из Вас сейчас сидят в шоке, не понимая, как это всё реализовать. Это действительно сложно для начинающего, поэтому сначала Вам надо набраться опыта в простых вещах. А вот дальше уже реализовать подобные вещи. Если остались какие-то вопросы, то Вы можете задать их в комментариях. А в следующей статье я расскажу, как создаётся Admin-панель для сайта, так что подписывайтесь, чтобы не пропустить.

    Пример создания реального движка с нуля можно посмотреть в этом курсе: http://srs.myrusakov.ru/php

    Категория: Статьи Добавил: Modo
    Просмотров: 32 | Рейтинг: 0.0/0
    Всего комментариев: 0
    avatar

    Наш сервис

    • Наш Чат
    • Фото хостинг
    • Скачать

    Календарь

    Яндекс.Метрика Top.Mail.Ru

    Календарь

    [15.11.2023]Свои драйверы в driverpack
    [27.10.2023]ртефакты силы
    [28.08.2023]Процессор Intel Core i3-2130 Sandy Bridge LGA1155, 2 x 3400 МГц Процессор Intel Core i3-2130 Sandy Bridge LGA1155, 2 x 3400 МГц, OEM
    [12.08.2023]Как отключить добавление слова «ярлык» при создании ярлыков
    [28.07.2023]Как разобраться в кроссоверах телевселенной DC — читайте на «Мире фантастики»!
    [16.06.2023]Открытие файлов в формате DDS
    [24.05.2023]Как создать движок для сайта
    [15.05.2023]Описание серий сериала «Звёздные врата SG-1». 3 сезон.
    [15.05.2023]Описание серий сериала «Звёздные врата SG-1». 2 сезон.
    [15.05.2023]Описание серий сериала «Звёздные врата SG-1». 1 сезон.

    Новое видео

    Флешка или SSD не форматируется. Что делать?

    • Просмотры:
    • Всего комментариев: 0
    • Рейтинг: 0.0
    00:01:24

    Как переводить программы на русский язык

    • Просмотры:
    • Всего комментариев: 0
    • Рейтинг: 0.0
    00:01:23

    как поменять стандартную картинку при запуске windows 7

    • Просмотры:
    • Всего комментариев: 0
    • Рейтинг: 0.0
    00:04:44

    монитор acer гаснет через 2 сек. после включения.

    • Просмотры:
    • Всего комментариев: 0
    • Рейтинг: 0.0
    00:14:20

    Ремонт монитора acer AL1916. Монитор не включается и мигает индикатор

    • Просмотры:
    • Всего комментариев: 0
    • Рейтинг: 0.0

    ff Мобильная версия · Для правообладателей