Актуальные сообщения на SitePoint сегодня:
- 7 способов сделать WordPress проще для пользователей
- Мне нужен сайт. Что мне нужно знать о хостинге?
- Контроль версий WordPress с помощью Git
- 10 простых советов по безопасности WordPress
- Какой формат изображения подходит для вашего сайта?
В моей предыдущей статье мы обсуждали причины, по которым вы могли бы извлечь выгоду из использования статического генератора сайтов. Подведем итог:
- Статический сайт — это набор страниц, содержащихся в основных файлах HTML. Вы можете написать их вручную в текстовом редакторе, но управление ресурсами и повторяющимися элементами, такими как навигация, может стать проблематичным.
- Система управления контентом (CMS) хранит контент страницы в базе данных и предоставляет средства для редактирования и применения тем. Управление становится проще за счет гибкости, производительности, требований к серверу, безопасности и резервного копирования.
- Генератор статического сайта (SSG) — это компромисс между использованием статического сайта с ручным кодированием и полной CMS. Вы создаете веб-сайт только для HTML с использованием необработанных данных (таких как файлы Markdown) и шаблонов. Полученная сборка переносится на ваш живой сервер.
Популярные генераторы статических сайтов включают в себя Jekyll , Pelican , Hugo и Metalsmith — см. StaticGen для многих других вариантов.
Похоже, что SSG предлагают преимущества как CMS, так и статических миров, но они не подойдут для каждого проекта …
1. Ты сам по себе
Вы не продвинетесь далеко, используя статический генератор сайтов без некоторого опыта разработки. Процесс сложнее, чем использование CMS, меньше ссылочных ресурсов, и вы можете изо всех сил пытаться найти готовые плагины и шаблоны.
Сравните это с WordPress. Нетехническим пользователям может потребоваться помощь в установке, но после этого они могут отредактировать сайт и установить одну из многих тысяч доступных тем и плагинов. У них может не быть лучшего сайта, сделанного на заказ, но они работают с минимальным вмешательством.
2. Выбор паралича
Существует много генераторов статических сайтов , но даже самые популярные инструменты используются крошечной частью веб-сообщества. Вам нужно время, чтобы исследовать, исследовать и оценивать варианты. Бесспорным чемпионом является Джекилл, но, хотя вам не обязательно требовать знания Ruby, это поможет, если вы уже использовали этот язык.
Существует много CMS, но есть один очевидный выбор: WordPress . Он поддерживает более одного на каждые четыре веб-сайта, поэтому помощь в изобилии. Опять же, это поможет, если у вас есть некоторый опыт работы с PHP, но даже не разработчик может создать разумный сайт, используя готовые темы и плагины.
3. Время начальной настройки
Создание вашего первого статического сайта займет время. Вам нужно будет изучить процесс сборки, и большая часть кода шаблона должна быть разработана. Скрипты развертывания также могут быть необходимы.
Разработка собственной темы CMS также может быть сложной, но доступны предварительно созданные шаблоны и помощь легче найти. Развертывание файла редко требуется после начальной установки.
4. Нет интерфейса администрирования
Клиенты могут быть осторожны, когда сталкиваются с интерфейсом CMS. Попросить их создать и отредактировать набор файлов Markdown может привести многих в ужас. Вы можете сделать процесс проще. Например:
- позволить им использовать свою существующую CMS, или
- обеспечить более простые рабочие процессы, такие как редактирование файлов Dropbox в StackEdit .
Но это в дальнейшем повлияет на ваше начальное время разработки.
5. Согласованность сайта
Статические сайты являются гибкими: все, что содержится в исходных файлах Markdown, может отображаться как содержимое страницы. Пользователи могут включать скрипты, виджеты или многочисленные нежелательные элементы.
CMS ограничивает пользователя, потому что контент обычно привязан к базе данных с конкретными полями. Панели управления подскажут пользователю, поэтому очевидно, что они должны ввести заголовок, содержание тела, выдержку и т. Д. Даже если пользователь вводит что-то в непредвиденное поле, оно не появится на веб-сайте, если оно не реализовано в шаблоне темы.
6. Управление большими сайтами
Рассмотрим сайт с тысячами страниц, регулярными публикациями, новостями в реальном времени и десятками авторов в разных местах. SitePoint — отличный пример. Можно было бы управлять контентом, используя генератор статического сайта, но:
- редактирование и публикация контента более неудобны. Редакторам может потребоваться доступ к репозиторию Git или общим папкам, а не простой веб-интерфейс или интерфейс приложения.
- обновления в режиме реального времени будут отложены, потому что сайт должен быть перестроен, протестирован и развернут
- время сборки может быстро увеличиться, и развертывание станет громоздким.
Генераторы статических сайтов, пожалуй, лучше всего подходят для сайтов, содержащих не более нескольких сотен страниц с парой новых сообщений каждую неделю. Потребуются автоматические процессы сборки и развертывания, и вы можете достичь точки, когда CMS станет более практичным вариантом.
7. Сайты с серверной функциональностью
Настоящий статический сайт не может предлагать интерактивные средства, такие как логины пользователей, заполнение форм, поиск или дискуссионные форумы. Есть некоторые варианты на стороне клиента, такие как поиск lunr.js и комментирование Disqus , но ваш выбор будет более ограниченным.
Существуют такие решения, как использование этапа сборки, который генерирует статический сайт, содержащий необходимые <?php ... ?>
Это должно делать предварительную визуализацию HTML, где это возможно, например, навигацию, включения, партиалы и т. Д., Чтобы страницы были более эффективными и требовали меньше усилий от процессора PHP. К сожалению, вы увеличиваете сложность сборки, и это может принести мало пользы для некоторых платформ.
Подходит ли вам статический сайт?
Прежде чем принимать какое-либо решение, изучите:
- требования к вашему проекту, размер, сложность и т. д.
- ваша база пользователей
- навыки развития вашей команды, и
- факторы хостинга и / или размещения.
Подавляющее большинство веб-сайтов редко превышают несколько десятков страниц, получают нечастые обновления и зависят от разработчика, который вносит эти изменения. CMS часто бывает излишним, а создание статических сайтов может облегчить разработку и снизить затраты. Однако убедить вашего клиента отказаться от своих панелей администрирования CMS может оказаться более сложной задачей …
Для практической демонстрации того, как создать сайт с помощью генератора статических сайтов, см. Мою статью Как создать статический сайт с помощью Metalsmith .