Pull to refresh

BlogEngine.NET 1.5. Русифицированная сборка с темами и расширениями

Reading time5 min
Views2.3K
Собрал для себя дистрибутив блогового движка BlogEngine.NET (версия 1.5.0.7), готовый к развертыванию на хостинге за секунды и русифицированный так, как мне нужно (начиная от slug'ов до множества доработок перевода в спецфайле и самом коде, включая расширения), с различными расширениями и с большим пакетом тем, но подумал, что, возможно, еще кому-нибудь он пригодится.
Далее: для тех, кто не знает, что такое BlogEngine.NET и с чем ее едят — возможно, будет интересен рассказ о нем, для тех, кто «в теме» — список сделанных в движке изменений.

Что такое BlogEngine.NET?


BlogEngine.NET — это легкий и достаточно функциональный open-source движок для блогов, написанный с использованием технологии ASP.NET. Он может работать как с базами данных (Microsoft SQL, Microsoft SQL Express, MySQL), так и с XML-файлами в качестве хранилища (по умолчанию). При обычных размерах блога разницы в производительности не наблюдается.
Пример BlogEngine «из коробки» со стандартной темой — блог разработчика движка.

Чем BlogEngine не является?



BlogEngine — это не Wordpress. Повторяю: это не Wordpress. Конечно, тянет их сравнить (в общем-то, лучшие блог-движки на двух разных платформах). Но BlogEngine — движок другого класса: не столь расширяемый готовыми плагинами (хотя свои можно написать достаточно быстро и просто), но максимально легкий и быстрый, обеспечивающий функциональность большую, чем это необходимо обычному блоггеру (не играющемуся со своим блогом, а просто его пишущему).
Его не надо использовать там, где может потребоваться любая функция: за исключением случаев, когда вы хотите действительно изучить ASP.NET путем написания необходимых вам UserControl'ов и расширений. Но в случаях, когда нужно что-то легкое, быстрое в развертывании, легко настраиваемое, удобное для конечного пользователя (панель управления BlogEngine существенно проще и легче, чем панель Wordpress'а) — тогда есть смысл попробовать BlogEngine. В FAQ'е разработчиков есть вопрос «Сможет ли моя мама его использовать?» :) Ответ — да, сможет. Все достаточно просто и интуитивно понятно как для пользователя, так и для разработчика. Разработчику так вообще — достаточно загрузить выложенный на официальном сайте проект в Visual Studio и наслаждаться удобством работы с красиво написанным кодом :)

Что он может из коробки?

  1. Нормально работать с кэшированием (не беспокоя этим пользователя), мобильными устройствами (им по умолчанию отдается специальная тема), трэкбэками, пингбэками и даже OpenSearch (поиск по блогу можно вставить в строку поиска современных браузеров в дополнение к Яндексу, Google, Bing и т. д.)
  2. Древовидные комментарии, граватары, уведомление о комментариях на почту, пинг-сервисы
  3. Ведение мультиавторского блога, подробные профайлы для авторов
  4. Виджеты для облака тэгов, твиттера, любимых блогов, уведомление о новых постах на почту, драг-н-дроп работа с этими виджетами
  5. Авторесайз загружаемых изображений
  6. Использование bbcode в комментариях, предпросмотр комментариев
  7. MP3 аудиоплеер на технологии Flash
  8. и многое-многое другое!
И главное — всем этим легко управлять, да и работу блога возможности ничуть не замедляют. Мгновенная установка и минимальные системные требования — тоже серьезное достоинство. Даже инсталлятора не требуется, см. ниже :)


Windows-хостинг дорог!!


Да ничего подобного: многие серьезные компании предлагают Unix и Windows хостинг за одинаковые цены. Более того: у Windows-хостинга, как правило, есть тестовый период. Лично меня устраивает Windows-хостинг от Инфобокса и Агавы, но я совершенно не настаиваю. Вдобавок для BlogEngine.NET хостинг требуется куда менее мощный, чем для Wordpress'а.

Кому это пригодится?


Если вы только интересуетесь платформой ASP.NET — то это хороший конструктор для старта. Код BlogEngine написан красиво и легко, он достаточно понятен даже без особенной подготовки в области .NET-технологии. В нем можно свободно копаться и без проблем подправлять под себя, заодно постепенно разбираясь в ASP.NET. Если вы никогда не работали с ASP.NET, но хотели бы попробовать — просто поиграться, не пытаясь писать свою собственную CMS с нуля — попробуйте BlogEngine, не пожалеете. На его базе вполне можно сделать и свою собственную CMS, все готово и для обычной неблоговой CMS (NB готово не значит сделано ;-) Например, есть поддержка древовидной организации страниц в панели управления, но для собственно сайта ее пока что придется кодить самостоятельно).

Установка


BlogEngine работает без базы данных (хотя вполне можно ее подключить) и для установки требуется лишь закачать на хостинг и указать права на запись для папки App_Data. После чего загрузить главную страницу; в первый раз она будет грузиться подольше, но дальше все будет происходить быстро.

Что изменено в этой сборке?

  1. Серьезно дополнен и подкорректирован официальный перевод в файле \App_GlobalResources\labels.ru.resx
  2. Где возможно — переведены названия прямо в коде (так как не все вынесено в отдельный файл, и не все возможно вынести без большого количества изменений в движке; надеюсь, когда-нибудь это изменится)
  3. \bin\BlogEngineCore.dll пересобран. Теперь русские заголовки не превращаются в slug'и вида d09ed0b1d0be-d0bcd0bdd0b5 (головная боль для BlogEngine, ибо здесь нельзя отключить рерайт урлов), а показываются прямо русскими буквами (а-ля Википедия). Лично мне так нравится :) Но в сборку входит на крайний случай и плагин для транслитерации slug'ов у постов (к сожалению, на категории и тэги это не распространяется, поэтому решение меня полностью не устроило...)
  4. Добавлена полностью русифицированная версия TinyMCE вместо англоязычной
  5. Добавлено большое количество расширений, все переведены.
  6. В комплекте сборки идет 50 разнообразных тем. Они не русифицировались, тем не менее, там требуется совсем немного изменений (в среднем — значительно меньше, чем в Wordpress'овских темах; сказывается более простой устроенный код); я думаю, что это проблемы не составит, хотя в будущем планирую и их перевести, если потребуется

Что еще нужно будет сделать

  1. Не просто перевести, а качественно перевести движок, особенно это касается панели управления. Убрать разночтения в терминах (каюсь, работы непочатый край...), а кое-где и подправить код для корректного перевода.
  2. Перевести темы (хотя бы несколько)
  3. Улучшать, улучшать и еще раз улучшать BlogEngine :) В целом хотелось бы, чтобы в будущем весь перевод шел только через один файл — и тогда сайт бы переводился автоматически на язык зашедшего пользователя без бубнов (технология ASP.NET это позволяет реализовать из коробки). Красота :)

Наконец, зачем я это сделал


Все просто: самому потребовалось иметь под рукой готовый к установке дистрибутив блог-движка под ASP.NET, достаточно русифицированный для того, чтобы дать управление в руки простого пользователя. Чтобы там и темы, и расширения уже были. Те расширения, для использования которых не требуется вписывать UserControl'ы в темы. Это, конечно, несложно, но не для данного случая :)
Поскольку с нуля у BlogEngine на русскоязычных просторах проблем хватает, и более того — не все проблемы решаются правкой скриптов (для чего-то надо пересобирать ядро, а тут уже не всякий будет открывать Microsoft Visual Studio для этого...), то порылся, понаисправлял — и выложил.
Если даже никому не потребуется (в конце концов, у нас мало используют ASP.NET в подобном «легком» сегменте веба, а жаль, очень хорошая технология), то как минимум мне — нужно. :)

Скачать, буде кого заинтересует, можно у меня с сайта; там же список использованных тем и расширений со ссылками на источники. Если что некорректно работает (вполне может быть, промышленно не тестировал :) — пишите, разберемся. :)
Tags:
Hubs:
+15
Comments19

Articles