С днем программиста, коллеги! Успехов в работе и интересных проектов!
Последние заметки
Прасониси
Линдос
В отпуске хорошо
Плагин Blog Archive
В процессе миграции домовой страницы с Drupal 6 на OctoberCMS, написал несколько плагинов. Первым из них стал плагин BlogArchive и в этой заметке я немного о нем расскажу.
Изначально плагин я написал, чтобы сделать архив постов по месяцам, примерно как было на старом сайте, только лучше. Архив реализован через компонент blogArchive, он работает, можно пользоваться. Компонент даже умеет количество комментариев из Disqus подгружать (если Disqus включен).
Mr. Robot
Обычно всякое про-компьютерное я смотрю без особого энтузиазма. Не знаю, почему, может потому что сам за компьютером сижу достаточно, чтоб еще смотреть, как другие сидят. Поэтому, заметив сериал Mr. Robot, думал сначала, может ну его. Но рейтинг 8.8/10 на IMDB не дал пройти мимо. Тем более, недавно как раз смотрел Stranger Things, у которого вообще 9.2/10 — и он крутой на все баллы. В общем, принялся смотреть «Мистера Робота».
Главный герой Эллиот работает экспертом в компании с говорящим названием Allsafe. Компания занимается IT-безопасностью для крупной корпорации E-Corp. А Эллиот, в свободное от работы время, занимается компьютерными взломами всего подряд — например, коллег и знакомых. Вроде как, потому что ему взломать компьютер и узнать все про человека проще, чем поговорить и спросить. Потому что вот такой он — замкнутый и нелюдимый, худощавый молодой человек.
Еще, помимо знакомых, Эллиот взламывает компьютеры негодяев, чтобы пролить свет на их негодяйскую деятельность. С этого как раз сериал и начинается: главный герой сидит за столиком и рассказывает негодяю-владельцу кафе, как он ловко взломал его сеть по распространению нехорошей порнографии. И, довольный, покидает кафе под сирены уже подъезжающих полицейских машин.
Анатомия плагина OctoberCMS
Функционал OctoberCMS, как и любой другой CMS, можно расширять. Единицей такого расширения является плагин. В этой заметке я расскажу немного о том, что такое плагин для OctoberCMS, как его сделать, из чего он состоит и что куда класть внутри.
Большую часть информации, рассматриваемой далее, можно почерпнуть из официальной документации OctoberCMS. В этой заметке я постараюсь не столько пересказать содержимое доков, сколько обобщить то, что мне удалось выяснить в процессе разработки и использования плагинов для October.
Парк птиц
Для разнообразия съездили сегодня в Парк птиц под Калугой. Птиц через решетки особо пофоткать не удалось, пофоткал других зверей.
Что понравилось, так это то, что тут не поскупились на маленьких обезьян и игрунок. Вместо одной-двух, как обычно, насчитывал более пяти одинаковых особей. И это хорошо, игрунок должно быть много!
Еще несколько фотокарточек добавил в галерею.
Починил нотбук
В начале года, прямо перед отпуском угробил нотбук. Угробил в два этапа: сначала ловкими и умелыми действиями убил возможность входа в настройки биос, так что с флешки не загрузиться. А затем уничтожил загрузочные разделы, чтобы уже не загрузиться вообще. В отпуск пришлось ехать без нотбука, но это было даже хорошо, тем более что там все равно интернета нет.
Но уже скоро снова пора ехать в опуск — решил нотбук починить. Отвез в Samsung Сервис Плаза на Ломоносовском. Починили: поменяли микросхемку и перепрошили биос, 4 500 рублей за всё. Делали три недели, но зато успешно, за что сервису большое спасибо.
Притащил нотбук домой и немедленно установил последнюю kubuntu. Раньше приходилось делить и так небольшой диск пополам с Win8. Но в результате поломки от Win8 удалось избавиться, так что теперь на нотбуке один линукс в полный рост, да с LVM-шифрованием. Жизнь, в общем, налаживается.
Placeholders в разметке OctoberCMS
Как известно из документации, OctoberCMS предоставляет для Twig ряд расширений. В том числе среди них есть тег {% placeholder %}, позволяющий собирать фрагменты разметки из разных шаблонов в один блок. Вот например есть у нас лейаут:
<html>
<head>
{% placeholder head %}
</head>
<body>
...
</body>
</html>
Этот тег выведет вместо {% placeholder head %} всё, что будет добавлено туда в других шаблонах. То есть если мы в шаблоне с выводом блог-поста добавим
{% put head %}
<meta name="title" content="Домовая страница | Graker.Ru">
<meta name="author" content="Graker">
{% endput %}
а потом еще где-нибудь добавим
{% put head %}
<link rel="icon" type="image/png" href="http://graker.ru/themes/grakerru/assets/images/icon.png" />
{% endput %}
то всё это попадет в head. Такая вот полезная фича.
P.S. Скрипты и стили вручную собирать в плейсхолдеры не нужно, для этого в October уже есть готовые {% scripts %} и {% styles %}. Но и к ним можно при желании добавить скрипт/стиль с помощью {% put %}.