Всем привет! Сегодня состоялся релиз новой версии моего блога. В этой записи я расскажу немного об этом событии.
atnartur.ru был перемещен на GitHub и перенесен на платформу для генерации статических сайтов Hexo. Причины:
- Быстрее, выше, сильнее: теперь все страницы сайта - простые HTML страницы. Не нужно ждать, пока подцепяться килограммы PHP-файлов Wordpress, пока придет ответ от базы данных… Теперь все происходит моментально, без задержек и тормозов.
- Круче: среди разработчиков стало модным размещать личные блоги на GitHub. Появляется возможность писать статьи в любимом текстовом редакторе, работать с системой контроля версий как с системой управления контентом сайта.
- Дешевле: GitHub бесплатен для открытых проектов. Поэтому сейчас отпала надобность в покупке хостинга для блога.
Перед Hexo я пробовал перенести блог на Docpad - еще один генератор статических сайтов, написанный на NodeJS. Однако он не подошел мне по следующим причинам:
- нет импорта из Wordpress из коробки (в Roadmap есть эта функция)
- нет поддержки тегов и категорий из коробки
- даже если добавить поддержку тегов и категорий плагинами, не генерируются страницы со списком статей по тегам и категориям (казалось бы, плагины категорий и меток должны это уметь…)
На работу с Hexo я убил в два раза меньше времени, чем на попытки разобраться с Docpad. Однако, на Hexo были перенесены все статьи из Wordpress с сохранением старых адресов и статических файлов (с помощью плагина alias). Я перенес новый дизайн, который разрабатывался еще для Wordpress-версии блога, на Hexo. Полный список плагинов Hexo, которые используются на моем сайте (плагин - npm-пакет, который подцепляется с помощью Hexo и запускается генератором):
hexo-deployer-git
- деплой в git (в том числе в GitHub-pages)hexo-generator-alias
- создание адресов-алиасов к записям, страницам и просто в конфигеhexo-generator-feed
- генератор RSShexo-generator-search
- генерирует search.xml для реализации поиска по сайту (подробнее ниже)hexo-generator-seo-friendly-sitemap
- генератор карты сайтаhexo-migrator-wordpress
- миграция из Wordpress (переносит данные из файла экспорта Wordpress)
Есть еще несколько плагинов, но они являются стандартными и устанавливаются по умолчанию командой hexo init
.
Поиск релизован на сайте с помощью плагина для Hexo и bootstrap3-typeahead
. hexo-generator-search
генерирует файл search.xml
, который прочитывается при наборе текста в текстовом поле. Затем происходит поиск слова по всему списку статей, и пользователь видит поисковые подсказки. По нажатию Enter
происходит открытие выбранной статьи. Исходный код.
От комментариев, которые пользователи написали на Wordpress, пришлось отказаться и перейти на Disqus. Подключается эта система вполне быстро тоже, поэтому особых трудностей это не вызвало:)
Добро пожаловать на страницы нового блога. Приятного чтения!