Моя збірка Mosquito Bloody Mary



Мене тут попросили викласти збірку Mosquito Bloody Mary, на якій працює цей сайт. Mosquito це безкоштовний двигун з відкритим кодом, написаний на PHP. Легкий, відкритий, по-своєму класний. Я трішки допиляв його під свої вимоги, але це було півроку тому, всіх змін вже не пам’ятаю. Те що знайшов — пишу тут. Переважно всі редагування це якісь дрібниці. Основні зміни — у файлах шаблонів.
  1. Дати постів виводяться у форматі типу «16 лютого 2014 о 21:18». Не забув про 11 годину, для неї виводиться «об» замість «о» :). Крім того, для сьогоднішніх чи вчорашніх записів, замість повної дати виводиться «Сьогодні» чи «Вчора» відповідно. Ця зміна десь у файлі data/functions.inc.
  2. Додав посторінкову Ctrl-навігацію. Тобто можна пересуватись між сторінками записів за допомогою комбінацій кнопок Ctrl+стрілочка вбік (для старіших записів — стрілка вправо, для новіших — вліво). Файл data/actions/blog.inc.
  3. Українізував двигун. Файли в теці lang.
  4. Щось змінив у плагіні теґів (файл plugins/tags/funcs.inc). Лінь розбиратись, що то таке, ну та й начхати :)
  5. Зробив так, щоб в RSS потік записи виводились лише до кату, і вставлялось «Читати повністю» з лінком на повний запис. Файли у теці rss.
  6. Якісь дрібні зміни у index.php.

    Тепер до змін у шаблонах.
  7. Дизайн робив свій з нуля. CSS стилі, іконки і тд. Спершу намалював psd шаблон, потім зверстав, потім натягнув його на Mosquito. Наполегливо прошу його не використовувати, а переробляти під себе, не будьте козлами :).
  8. З шаблонів коментарів я випиляв оригінальну москітівську форму коментування і запиляв Disqus. Файли templates/comment.html, templates/comment_a.html, templates/comment_form.html, templates/comment_last.html. Сам Disqus я теж трошки редагував, про це був запис.
  9. Адмін-панель в мене окремим блоком, зліва. Дрібні зміни у templates/head.php.
  10. Багато змін у templates/post.html. Розписувати не буду, шаблон запису чудово видно тут на сайті.
  11. Не пригадую, як виглядають налаштування запису в оригінальному Москіті, але в мене вони виглядають отак:



    Виводяться n найчастіше вживаних теґів, їх можна вставити до запису просто по кліку. Файл templates/post_form.html.
  12. На тому ж скріні вгорі видно, що в мене кастомні красиві чекбокси замість стандартних :)
  13. Змінив вигляд, у якому виводяться записи в режимі архіву (як виглядає вживу можна глянути тут). Тут для обрізання запису до певної кількості слів використовується ф-кція cutString, її я дописав у data/functions.inc.

    Mosquito використовує WYSIWYG редактор Nicedit. Його я теж переробляв під себе:
  14. Українізував.
  15. Додав функціонал для вставки кату, цитат, коду з Pastebin, відео з Youtube. Самі функції у файлі nicEdit.js. Перелік кнопок, які використовуються в редакторі можна змінити у файлі templates/post_form.html (там де створюється об’єкт nicEditor). Іконки для своїх кнопок додав у спрайт templates/nicEditor.png.
  16. Зробив, щоб Nicedit аплоадив зображення на мій сервер, а не на Imageshack. Файл nicUpload.php (в оригінальній збірці він відсутній).
  17. Переписав функцію для вставки зображень із сторонніх сайтів. Там тепер можна вибирати кількість зображень, які будуть в рядку, щоб створювати щось аля-галерей.
  18. Зробив, щоб при спробі закриття незбереженого запису видавалось попередження (про це теж був запис).

    Загалом форма редагування записів в мене виглядає так:

  19. Українізував і трошки змінив вигляд додатку Shadowbox (в оригінальній збірці його нема, можна завантажити тут).
  20. Ще є різні дрібні зміни у файлах шаблонів.

Крім того я написав свій маленький двигун для смітника, але його викладати не буду, він надто примітивний, там навіть редагування записів нема).

Завантажити збірку можна тут.

Розбиратись в коді, написаному автором двигуна — складно, розбиратись після того, як я туди щось подописував — взагалі смертельно. Тому важко уявити, як комусь може пригодитись ця збірка, але попросили, то виклав :)

16 лютого 2014 о 20:40