Софт: Meruert

3 ноября 2016 (01:02:03)

Полгода существования этого блога являются достаточным сроком для того, чтобы рассказать о замечательной CMS, на которой он работает — а она действительно замечательная, иначе бы я за эти полгода сменил её на что-нибудь другое.

Встречаем — Meruert, автор — Кирилл Панфилов. Бесплатная CMS, не использующая базу данных. Лицензия допускает как некоммерческое, так и коммерческое применение. На момент написания этого обзора актуальной является седьмая версия системы.

Суть и назначение

Вполне определяются тем, что сказано выше. Система предназначена для ведéния сравнительно небольших однопользовательских блогов и также отлично подходит для создания сайтов-визиток.

Почему «сравнительно небольших»? Не используется база данных. Почему однопользовательских? Не предусмотрено разделение полномочий типа «автор, редактор, модератор». Есть только хозяин, который полновластно распоряжается на сайте, а все остальные — посетители, которые могут лишь видеть то, что разрешил хозяин и в определённых пределах общаться с хозяином. Для персональных блогов, в общем-то, ничего больше и не нужно.

Две особенности: отсутствие средств импорта из других блогов (то есть в случае чего перетаскивать что-то под Meruert нужно руками) и крайняя желательность относительно прямых рук у хозяина блога (чуть позже увидим, почему).

Установка

Всё очень просто: скачанный с официального сайта дистрибутив (zip-файл менее четырёх мегабайт) нужно распаковать в то место, которое http-сервер будет отдавать как начальную ссылку на сайт. Затем нужно обычным браузером обратиться по этой ссылке, ответить на несколько простых вопросов (самое главное — пароль хозяина!), и всё.

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

На нормальном хостинге с поддержкой PHP всё работает сразу «из коробки», свидетельствую по собственному опыту. Разумеется, за хозяином блога остаются все дела, связанные с привязкой сайта к домену.

Настройка

Выполняется, скажем так, на двух уровнях. На «внешнем» — вы можете определять, какие именно элементы CMS, реализованные автором, вам нужны, а какие нет. И в некоторой степени управлять их отображением. Можно задать общие параметры сайта — название, слоган, выбрать тему оформления (из предложенных двух с половиной десятков) и язык интерфейса (из предложенных шестнадцати). Всё делается достаточно просто, выбором опций и расстановкой галочек.

Если хочется чего-то большего — нужно переходить на «внутренний» уровень. Здесь всё уже серьёзнее, ибо придётся править файлы шаблонов. А зачем, по-вашему, было упомянуто о прямых руках? С другой стороны, ничего сверхсложного тут нету, могу опять же засвидетельствовать на своём опыте.

Чтобы не ходить далеко за примером, просто могу предложить вам посмотреть внимательней на этот мой блог. Его нынешний вид основан на штатном шаблоне BusinessCard и потребовал ряда правок, которые я сделал в CSS-файле, а именно:

  • убрал фоновые текстуры и изменил используемый шрифт;
  • отображение абзацев привёл к «книжному» виду и соответствующим образом изменил отображение нескольких других элементов текста, а также ввёл несколько новых классов желаемого вида, отсутствовавших в CSS изначально;
  • изменил отображение внутренних заголовков сообразно своим представлениям о структуре публикуемых на блоге текстов;
  • изменил правила формирования миниатюр присоединямых к сообщениям блога картинок.

Не так уж много, но часика три возни и экспериментов на всё это ушло. Что хотел сделать — всё сделал, при том, что ни разу не являюсь HTML-верстальщиком. В общем, не боги горшки обжигают.

Функционал

В Meruert присутствует стандартный функционал блогов: есть записи, выводимые в хронологическом порядке, есть статические страницы, не привязанные к датам — способ их отображения выбирается в каждом конкретном случае отдельно. Те и другие могут иметь статус черновика и быть при этом видимыми только хозяину блога. Есть ещё пара вариантов приватности страниц и записей. Если опубликовать запись с датой, которая пока не наступила, она получит статус отложенной и будет видна лишь после наступления этой даты. В рамках сайта можно вести несколько блогов (но хозяин всё равно один!) и даже делать мультиязычные версии статей и страниц.

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

Имеется также функционал «избранного», позволяющий хозяину сайта помечать записи-страницы и показывать читателю единый список помеченного. Разумеется, каждой записи-странице можно присвоить одну или несколько тем. В общем, с организацией содержимого всё в полном порядке.

Специальный макроязык позволяет делать некоторые вспомогательные вещи — например, формировать списки страниц по определённым критериям. В документации такие макросы называются парселями. На данном блоге так формируется общий список всех опубликованных материалов.

Много возможностей доступно при публикации записи или страницы. В частности, можно назначать произвольный текст, видимый вместо этой страницы в основной ленте (многие движки блогов позволяют в этом качестве использовать только начальные несколько фраз и далее ставить «кат»). Можно прикрепить к материалу файлы (например, изображения или видеоролики) — и это очень удобно для тех случаев, когда такие файлы нужно прикрепить к материалу вообще, а не вставить их в конкретное место текста. Это как раз мой случай, и я такой возможностью с удовольствием пользуюсь. Ещё одна полезная мелочь — возможность произвольно назначать материалам ссылки, которые будут на них указывать («говорящие» ссылки намного приятнее абстрактных). Есть даже опция для пометки материалов «только для взрослых».

Meruert включает простой файловый менеджер, позволяющий управлять файлами сайта. Обычно это делается через ftp, но при работе с «неродного» компьютера менеджер может быть очень удобен.

Коротко говоря: на данный момент я не смог придумать ни одной потенциально нужной мне возможности, которой не было бы в функционале Meruert. Хотя фантазия у меня довольно богатая.

Взаимодействие с читателем

Здесь предусмотрены две типовые возможности: комментарии и «лайки».

Комментирование можно настраивать как для блога в целом, так и для индивидуальных материалов. Структура комментариев простая: хозяин может один раз ответить на любой (в том числе собственный) комментарий, и всё. Сложные ветвящиеся дискуссии не предусмотрены. Есть уведомления о комментариях (в том числе — уведомления комментаторов об ответах хозяина сайта) и опции модерирования.

Система «лайков»/«дизлайков» очень простая, без контроля накрутки. «Дизлайки» при желании отключаются. Текущие рейтинги материалов видны на отдельной странице, доступной только хозяину.

Для серьёзного отслеживания посещений и прочтений можно пользоваться сторонней аналитикой — возможность вставки соответствующего кода в материалы предусмотрена изначально.

Кроме того, имеется возможность выводить после материалов панельку для перепоста в социальные сети. Никто не мешает пользоваться ей самому: у меня именно через эту панельку уходят уведомления в твиттер. Для читателей, желающих отслеживать новые материалы, формируется RSS.

Достоинства

Говорить о достоинствах софта мне обычно нелегко. В моём понимании хороший софт — это такой софт, которым ты пользуешься просто потому, что не задумываешься о каком-то софте на замену. Это на самом деле значит очень многое.

Так вот, Meruert — это именно такой софт. Я нашёл в нём то что нужно, этим оказалось весьма удобно пользоваться и… и, собственно всё. Чего ещё-то?

Ну ладно, если говорить чуть более конкретно, то я весьма оценил богатый набор опций, доступных для каждой конкретной записи блога или страницы. Возможность прикрепить файлы к материалу в целом вместо вставки их внутрь текста вообще идеально легла на когда-то придуманную мной концепцию. Но без общего удобства и естественности работы это значило бы для меня немного…

Недостатки

Говорить о недостатках, напротив, очень легко. Они всегда конкретны и их ощущаешь сразу. Есть они и в Meruert… собственно, они везде есть, как же без них-то. В данной CMS я насчитал их четыре штуки.

Во-первых, при всяком редактировании-сохранении материалов сайта система активно сохраняет какие-то резервные копии, и эти копии плодятся как кролики. Я просто взял себе за правило в начале месяца чистить вручную всё, что накопилось за предыдущий месяц — в порядке, так сказать, общей гигиены. Невелик труд, но ведь могло бы и не плодиться. Или хотя бы отключаться.

Во-вторых, я не нашёл способа выставить часовой пояс. На сайте показывается время сервера, а не моё домашнее время — учитывая, что я живу в центре Сибири, а хостинг мой находится в центре Европы, это два сильно разных времени. А я бы всё-таки хотел видеть домашнее время.

В-третьих, слабенький редактор записей. Вот тут не знаю, насколько я объективен — я эти визуальные редакторы админок вообще принципиально не люблю. Но мне показалось, что слабенький он. Попробовал я в нём пару публикаций оформить, пожал плечами, да и отключил. Пользуюсь своим любимым Markdown, чем премного доволен и другим советую.

В-четвёртых и главных. При сохранении материала CMS делает ему… хм, как бы это по-русски сказать-то? Раз-escape, что ли. Заменяет HTML-мнемоники истинными символами и глотает обратные слэши. Вот это уже приличное ограничение, ибо не позволяет толком публиковать какие-то тексты с исходными кодами (из-за знаков «больше-меньше» вёрстка слетает) и математическими формулами (MathJax слетает из-за обратного слэша). Если бы я задумал что-то похожее на свой преподавательский блог, то Meruert была бы плохим выбором… А для простого окололитературного текста это не ограничение.

Резюме

Meruert — очень симпатичная и достаточно приятная в использовании система. На неё определённо стоит обратить внимание, если вы задумали…

  • не очень широкомасштабный блог одного автора с лаконичным оформлением и без интенсивного использования графики/медиафайлов;
  • сайт-визитку с небольшим числом быстро- и удобо-изменяемых страниц, лентой новостей (опционально) и опять же лаконичным оформлением;
  • сайт, посвящённый какому-то своему литературному или гуманитарному проекту;
  • онлайн-дневник персонального характера (не для чтения другими людьми).

Meruert плохо подходит для…

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