Всем привет!
Самое интересное и полезное из мира Drupal за прошедшие 3 недели в нашем седьмом выпуске.
Начнём с материалов в рунете:
Этот раздел специально для тех, кто с друпалом недавно:
Коктейль из материалов для друпалеров среднего уровня и выше:
Над выпуском работали Олег Кот и Катя Маршалкина.
Пишете статьи о Drupal на благо сообщества? Дайте нам знать — drupal.digest@gmail.com.
А ещё мы запускаем Drupal-рассылку. Воспользуйтесь формой регистрации и станьте первыми читателями!
Самое интересное и полезное из мира Drupal за прошедшие 3 недели в нашем седьмом выпуске.
По-русски
Начнём с материалов в рунете:
- По традиции несколько полезных сниппетов от xandeadx: «Оплата доступа к ноде с помощью Робокассы», «Taxonomy Menu и названия пунктов меню из поля термина», «Программно авторизовать пользователя по uid».
- Павла Китаева не отпускает Form API :) Читайте его статью «Создание новых типов элементов формы HTML5».
- Макс Корейченко размышляет на тему производительности и делится своим подходом к аяксификации.
- «Такой замечательный баг нашел, или это фича?» — пишет автор блога «Make You Live Better | Сексуальные опыты с Drupal CMF» после ночи с модулем Context :)
- @kalabro рассказала, как можно подключать PHP-файлы в своём модуле.
Drupal-lite
Этот раздел специально для тех, кто с друпалом недавно:
- В статье Form API #states рассказывается, как легко сделать свои формы динамичными без единой Javascipt-строчки.
- Пошаговый мануал, как добавить свой собственный текст (custom content) в Panels.
- Сложные проверки значений полей можно настроить прямо из админки с модулем Field Validation.
- Переходим на сторону добра — отказываемся от Views PHP: Conditional Views — Sure beats Views PHP for simple variance.
- При записи обзорного видео по модулю Subuser Шэйн Томас нашел баг и решил исправить его сам. Подробности в видео Module Investigator: Fixing an issue in the Drupal Subuser module.
Всё для Drupal-разработчика
Коктейль из материалов для друпалеров среднего уровня и выше:
- Очередная гигантская компиляция из модулей, статей и тому подобного появилось на Drupal.org. На этот раз она посвящена созданию сайтов государственных учреждений. Архив других компиляций доступен на странице Resource Guides. Очень советуем добавить в ваши закладки.
- Многие поисковые системы поднимают наверх в выдаче сайты, которые работают по HTTPS, а также имеют мобильную версию. Google даже подготовил официальный гайд по адаптивным темам в Drupal.
- Не всё решается через модуль Views (и далеко не все списки полезно делать через него). В публикации Easy Way Out Before Lost inside Views Maze рассказывается, как можно сделать выборку материалов самостоятельно для отображения блока с ленивой загрузкой через Ajax.
- Неплохое введение в парадигму Headless Drupal представлено в материале Headless Drupal. Why & how a RESTful API in Drupal?
- Как портировать модули на форк Drupal 7 под названием Backdrop CMS, читайте в статье Porting Drupal 7 Modules to Backdrop.
- Тема безопасности не теряет актуальности. Существует изрядное количество автоматических сканеров уязвимостей сайтов плюс целые базы эксплоитов. Ввести хакеров в заблуждение помогут шаги по сокрытию того факта, что ваш сайт сделан Drupal. В материале Hiding the fact that your site runs Drupal представлен подробный обзор методов достижения этой цели. Дополнительные идеи можно почерпнуть в подборке Hiding Traits of Drupal.
- Пакетная обработка больших данных практически всегда предполагает использование очередей. В материале с лаконичным названием Drupal Queues показан пример объявления и использования собственной очереди.
- The Drupal mail system — исчерпывающая статья про почтовую подсистему друпала.
- Если вы задумывались, есть ли что-нибудь похожее на
hook_node_access()
, только для других сущностей, то обязательно прочитайте публикацию Custom access control for Drupal 7 entities. - Капелька драша не повредит нашему дайджесту: Drush Registry Rebuild для лечения тех проблем, которые не решаются сбросом кеша.
- Jeff Geerling проделал огромную работу по популяризации Ansible в Drupal-сообществе, апогеем которой стала Drupal VM = Vagrant + Ansible + Drupal.
- Появилось несколько обзоров хостинга Platform.sh: первые шаги на SitePoint и более серьёзная статья на примере реального проекта.
- В статье Drupal Testing Methodologies Are Broken — Here's Why автор интригует скорой публикацией выстраданного фреймворка для интеграционных тестов в Drupal 7, который можно было бы запускать на работающем сайте вместо Simpletest или PHPUnit. Также представлен обзор основных проблем, с которыми сталкиваются разработчики при попытках прикрутить автоматизацию тестов к Drupal.
- Раз уж мы заговорили про тестирование, стоит упомянуть вводную статью по Behat:BDD with Behat and Drupal.
- Луллаботы делятся опытом по использованию популярного Javascript-фреймворка AngularJS в Drupal-проектах: Wrapping AngularJS modules in Drupal CTools plugins.
- Углубляемся в query-запросы Solr, чтобы лучше понимать, как это всё вообще работает.
- В поисках замены Features, серия №2086: встречайте CINC и сразу пример с созданием представления из кода.
- Google отключает Image Charts API в апреле. По этому поводу обзор модулей построения графиков.
Drupal 8
- Вышла 9-я бета-версия Drupal 8. Критических issue по-прежнему больше полтинника.
- Если вы ещё не видели презентацию «30 Awesome Drupal 8 API Functions», то отличный шанс сделать это сейчас. Кстати, есть версия для семёрки.
- Настройка Vagrant для разработки под Drupal 8 с помощью VDD.
- В статье Creating Custom Field Formatters in Drupal 8 рассказывается о том, как создавать новые форматеры полей.
- Изменения в системе фильтрации текста в восьмёрке, а также подводные камни в виде двойного экранирования рассматриваются в материале Avoiding Double-Escaped Output in Drupal 8.
- В статье Dependency Injection with Traits in Drupal 8 автор делится любопытным опытом портирования одного модуля с Drupal 7 на Drupal 8. По ходу захватывающего странствия встречаются PHP Traits, а также Dependency Injection и Module Upgrader.
- В очерке Alter or Dispatch: Drupal 8 Events versus Alter Hooks сделана попытка указать идеальный способ объявления собственных событий в Drupal 8.
- Когда вам понадобится Ctools для восьмёрки, вы знаете, где его искать: The Drupal 8 plugin system — part 4.
- Красивая форма поиска по коммитам в Drupal 8: Drupal 8 Git Commit Explorer.
Бизнес и сообщество
- Drupal 8 Accelerate.
Программа грантов по разработке Drupal 8 уже наделала много шума. Drupal-ассоциация планирует привлечь как минимум $250k. При этом половину уже внесли сама ассоциация и 7 крупнейших Drupal-компаний. А вот бы так: делаешь git push на орге, а тебе на счёт автоматически падает $100… Но мы, кажется, отвлеклись :)
- Новости бизнеса: Mediacurrent, крупнейший игрок Drupal-рынка, поглощен дизайн-агентством Code and Theory.
- Утверждены доклады на майский DrupalCon Los Angeles.
- Сообщество простилось с ушедшим из жизни по причине тяжелой болезни Аароном Винборном. Почитайте о нём. Ассоциация анонсировала премию имени Аарона, часть которой будет ежегодно направляться семье Винборнов.
- Этот человек очень редко высказывается. В этот раз он сделал исключение: Earl Miles, он же merlinofchaos, автор Views и Panels, о друпале и его сообществе. (TL;DR: всё нормально и у Ёрла, и у друпала).
- Две трогательные истории разработчиков из серии «Я и Drupal»: My journey in Drupal, 4 years on, 542 days as a Drupal developer. Пусть таких историй будет только больше.
Интересные модули
- Configuration Management
Альтернативный Features подход для управления конфигурацией рассматривается в статье Configuration Management, an alternative to Features. - Features Builder
Если же вы активно продолжаете использовать модуль Features в разработке, то обратите внимание на материал Features Builder, problems zero with Features! - Taxonomy Entity Index
Этот модуль используется для оптимизации производительности сайта при массовом использовании таксономии. На данную тему написана небольшая статья Drupal 7, Tags, Unpublished Content, and You. - VoiceCommander
Голосовые интерфейсы — тренд на протяжении уже многих лет. С этим модулем вы можете проэкзаменовать Web Speech API в друпале. - Openstack Queues
Интеграция с движком очередей Openstack Zaqar (альтернатива Amazon SQS с открытым исходных кодом). - Field SQL Lean
Достаточно экстремальный подход к оптимизации, который необратимо изменяет структуру таблиц для хранения значений полей. Очевидно, что с новой структурой не смогут стандартно работать множество модулей Drupal, например Views, тем не менее, полезно знать, что существуют и такие возможности системы. - Views Calc
Этот модуль позволяет вывести строку «Итогов» в таблице. Подсчёт ведётся на стороне БД и поддерживает операции COUNT, SUM, AVG, MIN, MAX. Как пользоваться, рассказывают в OSTraining. - GA Push
Расширенное API для отправки любых событий в Google Analytics. С его помощью можно, например, отслеживать ошибки валидации форм на вашем сайте.
Над выпуском работали Олег Кот и Катя Маршалкина.
Пишете статьи о Drupal на благо сообщества? Дайте нам знать — drupal.digest@gmail.com.
А ещё мы запускаем Drupal-рассылку. Воспользуйтесь формой регистрации и станьте первыми читателями!