Как стать автором
Обновить

WebProject — бесплатная программа для создания и сопровождения html-сайтов

Время на прочтение3 мин
Количество просмотров11K
Мне нравятся html-сайты. Они быстрые, не нагружают сервер, их легко бекапить и легко переносить, можно держать на флешке для оффлайнового просмотра. Но есть проблема — их сложно сопровождать. Вносить изменения в несколько файлов для смены пункта меню или года копирайта — занятие невеселое. Для этих целей я сначала написал для себя шаблонизатор, а затем после нескольких итераций родилась вот такая программа — WebProject.





Программа представляет из себя некое подобие оффлайновой CMS и собирает html-сайт из описанной структуры страниц и разделов по заданному шаблону, а так же позволяет залить готовый сайт на ftp-сервер.

Кратко перечислю, что позволяет программа:
  • создать несколько html сайтов в рамках одного проекта
  • быстро создать структуру html сайта
  • наполнить страницы сайта используя как html так и упрощенный язык разметки
  • самостоятельно либо автоматически задавать имена для создаваемых html страниц
  • задавать ссылки на страницы в структуре сайта для использования в меню и боковой панели
  • задать заголовок страницы и определить теги META-Description и META-Keywords
  • выбрать дизайн сайта используя доступные шаблоны или создать свой шаблон
  • самостоятельно вносить изменения в html шаблон сайта
  • автоматически создавать меню сайта и боковую панель навигации
  • автоматически создавать html-карту сайта
  • выполнить предварительный просмотр созданного сайта
  • выгрузить созданный сайт на FTP сервер


Изначально программа планировалась как некий фреймворк. Элементы проекта — страницы и категории — кирпичики из которых собирается сайт. В планах добавить специализированные элементы — пост (для ведения аналога блога), новость, галерея, файлы (для размещения файлов с их описанием).

Было бы неуважением к сообществу не поделится некоторыми техническими деталями проекта. Проект написан на Delphi XE, для оформления использовал свои компоненты основанные на библиотеке GR32. Особый интерес был в разработке шаблонизатора. Шаблон сначала парсится и разбивается на блоки в соответствии со структурой дизайна сайта: menu, content, sidebar и внутри определяются блоки для итерации элементов и места для вставок содержания элементов типа {name}, {url} и т.п. По сути это возможности макроподстановки, что иногда позволяет значительно уменьшить количество дублирующегося текста и количество связанных с этим ошибок. В программе есть возможность задать макросы для всего проекта, так и для отдельного сайта. Помимо этого есть возможность делать условные вставки: {?!isLast} | {/?} Все это позволило сделать систему шаблонов легкой для адаптации к уже готовым css-шаблонам.

Хотел бы так же сказать пару слов про аплоад на FTP. В проекте можно держать несколько сайтов, у каждого можно указать свой сервер для публикации. А опубликовать все одной кнопкой. Причем по умолчанию публикуются только изменения, а файлы которые были уже опубликованы, но затем удалены так же удаляются и с FTP-сервера.

Для каждого сайта можно настроить папку куда будет генерироваться сайт и это позволяет провести следующий трюк с созданием отдельной части сайта со своим шаблоном: создаем основной сайт, затем сайт который будет разделом большого сайта, а затем настраиваем папку для генерации сайта-раздела на подпапку основного сайта. Тогда сайт подраздел можно исключить из публикации, при публикации основного сайта файлы подраздела будут выгружены на FTP автоматически. Так у меня сделано на сайте программы с основным доменом bytexpert.ru и разделом bytexpert.ru/webproject

Можно много спорить о том, нужны ли сейчас html-сайты или в наше время проще установить WordPress и все сделать в нем, но мое мнение такое: зачем использовать ресурсоемкое решение, когда с задачей успешно справляется набор html-файлов. Нужен лишь удобный инструмент, что я и попытался сделать своей программой.

Сайт программы: bytexpert.ru/webproject
Прямая ссылка на загрузку программы: bytexpert.ru/webproject/WebProjectSetup.exe
Теги:
Хабы:
+35
Комментарии68

Публикации

Изменить настройки темы

Истории

Ближайшие события