Дайджест интересных материалов из мира Drupal #2

Всем привет! В этом выпуске вас ждут более 30 новостей, материалов, интересных модулей — всё самое интересное и свежее из мира Drupal.

20f46bb6becc659da37abe6b7c2481e7.png

По-русскиНачнём с материалов на русском языке: Всё для Drupal-разработчика Drupal-новости и статьи со всего мира в нашей основной рубрике: «Все технологии будущего имеют одно общее свойство: разработчики первых прототипов сознательно строят системы с возможностью инноваций от будущих пользователей». Возможно и спорное, и слишком строгое утверждение, но может так и объясняется успех Drupal 7? Очень интересный материал ждет вас в статье Adaptive Architecture: Leave Room to Evolve. В Drupal’e есть несколько популярных «базовых» тем. Автор статьи объясняет, почему он выбрал Bootstrap: Which Base Theme We Use (and Why). Пока не знаете, что такое хуки? Эта заметка с примером простого модуля специально для начинающих. В Drupal’e, как и в любом полноценном фреймворке, всегда остается место для нетривиальных вещей, подводных камней, граблей, велосипедов и т.п. В этом плане очень интересным являются подборки Gotcha — на этот раз от разработчика Wunderkraut — Bernt«s Drupal Gotchas. Клиент просит у вас CRM? Вам самим нужна система управления взаимоотношениями с клиентами? Сделайте её на Drupal’e, но не изобретайте велосипед, ведь уже доступно свыше 7 различных решений, которым посвящен отдельный обзор. Если вы разрабатываете мультиязычный сайт и хотите, чтобы переводились отдельные поля, включая заголовки, а не весь материал целиком, то обязательно ознакомьтесь со статьей Setup Entity Translation the right way. Парсите сторонние сайты? Сталкиваетесь с проблемой подбора регулярных выражений и тому подобного? Попробуйте использовать сервис Import.IO. Тем более, что он нормально интегрируется с модулем Feeds. Про гибкий и мощный модуль Views можно говорить бесконечно. В этот раз предлагаем вашему вниманию подробную инструкцию как настроить хитрый фильтр по типу файла без единой строчки кода.Если из админки задачу решить не получается, на помощь приходит Views API. В статье от Appnovation пример кастомизации встроенного поля с помощью кода. «Drupal в активном поиске» — так хотелось озаглавить этот дайджест! :)Отличное введение в фасетный поиск (с видео). Серия статей «Apache Solr and Drupal». Уже вышли первая и вторая части. Ещё один мануал по установке Apache Solr, вариант для разработки. Интеграция Search API с подходом RESTful. Изучаете модный AngularJS или только планируете это сделать? Не знаете, как прикрутить его к Drupal’у? Ознакомьтесь с статьей AngularJS in Drupal Apps, где создается блок со списком нод и поиском по ним, работающий абсолютно асинхронно. Вопросы безопасности на сайтах всегда будут актуальными, тем более, что количество утилит, собирающих уязвимые сайты в полу-автоматическом режиме, постоянно растёт. Статья Drupal Security Tips for Developers помогает двигаться в правильном направлении. В статье How to improve security on Drupal sites приводится ряд способов скрыть факт использования Drupal, чтобы не привлекать внимание автоматических утилит для сканирования на уязвимости. Если вы не слышли о концепции Offline-first, то рекомендуем ознакомиться с презентацией Let’s Take Drupal Offline! Идея, как минимум, любопытная, хоть и мало применимая на данный момент, из коробки. Иногда смотришь на стандартные формы редактирования контента в Drupal и понимаешь: «что-то не то». У Юрия Герасимова есть несколько идей, как можно значительно улучшить UX Drupal. А знаете ли вы про user_multiple_role_edit ()? Короткая заметка о том, как программно задать пользователю роли, к вашим услугам. Продолжаем кодерскую тему двумя любопытными библиотеками-хелперами для тех, кто пишет много кода: Wrappers Delight и Distill. Где Drupal, там и Drush. Автор статьи Advanced Drupal User Management With Drush показал пару примеров работы с пользователями прямо из консоли. Для полного комплекта не хватает только команды user-login. Практически всегда, работая с разными окружениями, например: локальным, стейджинг-сервером, продакшеном, — приходится сталкиваться с тем, что каждое из них использует или свои собственные реквизиты для подключения к базе данных, а также самые разнообразные настройки, что в итоге ведет к надобности иметь один гигантский settings.php-файл или множество различных, например settings-prod.php. Всё бы хорошо, но проблема ещё в том, что локальное окружение у каждого разработчика может быть своё —, а это значит, что даже имея локальный файл настроек, допустим settings-local.php, — у каждого будет своя его версия, что приведет к лишним изменениям в git status. У этой проблемы есть решение, и оно рассматривается в статье Include a local Drupal settings file for environment configuration and overrides. Если вы задавались вопросом, как в панелях (Panels) сделать свой собственный «виджет», то рекомендуем прочитать статью How to Create Ctools Content Types in Drupal 7 про создание типов содержимого CTools. Вообще, Panels та ещё штучка. Юрий Герасимов рассказывает в своём блоге, как можно управлять последовательностью рендеринга панелей из админки и из кода. Век живи, век учись! Интересуетесь, как работать с мультимедиа в Drupal? У нас для вас интересная серия статей про модуль Scald: уже вышли часть 1 (обзор решений) и часть 2 (введение в Scald). Подробный мануал, как подружить модуль Media и YouTube, написали луллаботы. Также мы очень рекомендуем ознакомиться с материалом Resource Guide: Managing Media in Drupal. В нём представлена компиляция самых известных модулей и практик по этой тематике. Бизнес и сообщество Drupal вне кода: Итоги Drupal-года, очень кратко, но очень ёмко: Six Things We Learned About Drupal in 2014 Для ускорения работ над Drupal 8 недавно создали фонд Drupal Accelerate Fund в размере 125000$. Теперь любой человек или организация может обратиться за грантом, в случае если они будут готовы организовать спринт по поддержке ядра системы. Также Dries и Drupal Association обращаются за помощью к организациям, которые готовы спонсировать в дальнейшем этот фонд. Поставлена амбициозная цель набрать дополнительно 65000$. Команда Drupal.org активно работает над тем, чтобы сделать главный Drupal-сайт удобным для всех его пользователей. Для этого Drupal-ассоциация провела серию интервью с разработчиками разного уровня от новичка до мастера. Российское сообщество представляла Катя Маршалкина aka kalabro: Meeting Personas: The Drupal Expert. Существует и другое деление Drupal-разработчиков: Site Builder, Themer и Module Develper. В чем разница, читайте в статье What is a Drupal developer? Хотите покодить для Drupal 8, но нет ни наставника, ни подходящего проекта? Подключайтесь к инициативам по переводу сайтов локальных сообществ на Drupal 8: drupal.ru и drupal.ua соответственно. Drupal 8 Новости с фронтов разработки следующей версии Drupal: Вышла beta4. Шпаргалка по конфигурационным yaml-файлам, в которых теперь хранятся все настройки сайта. Портируем модуль с семёрки на восьмёрку с помощью модуля Drupal Module Upgrader. Как известно, Drupal 8 включает в себя некоторое количество PHP компонентов, наверняка знакомых веб-разработчикам из других фреймворков, например Symfony. Kris Vanderwater представляет обзор основных из них: Серия будет продолжена. С разработкой Drupal 8 не всё так просто, возможно из-за того, что всё-таки основной фокус системы сместился на движение к enterprise-миру, что естественно повлекло за собой усложнение системы и подняло планку для контрибьюшена. Интересно, в этом плане, смотрится форк от Drupal 7 — Backdrop CMS. Впрочем, большинство опрошенных настроены оптимистично на 2015 год. Интересные модули И напоследок несколько модулей, на которые стоит обратить внимание: Taxonomy Term Status позволяет устанавливать статус «опубликовано»/«неопубликовано» для терминов таксономии, совсем как у нод. Default file settings для удобного управления дефолтными настройками файловых полей. Classy Panel Styles для расширенного управления стилями панелей (видео и слайды). Views EVI (Exposed Value Injector) — это новый модуль, который позволяет прокидывать аргументы в фильтры. Reroute Email нужен для перенаправления всей почты на dev-серверах (статья). Расширение Drush Registry Rebuild поможет переместить модуль (даже не выключая его) в другую папку и не увидеть при этом фатальных ошибок PHP. Если вы являетесь активным пользователем модуля Panels, то наверняка сталкивались с модулем Fieldable Panels Panes, который позволяет прямо при редактировании панели создавать энтити с произвольным набором полей, причем они являются в прямом смысле многоразовыми. Недавно появился модуль Fieldable Panel Panes Bundles, которые позволяет создавать бандлы, по аналогии с типами содержимого. В видео-обзоре на CodeKarate подробно разобран модуль Smart Paging, который используется для постраничного разбиения содержимого ноды по количеству символом, слов или по специальному плейсхолдеру. Над выпуском работали Олег Кот и Катя Маршалкина. Пишите нам с любыми вопросами и предложениями!

6dfa331b84524de6a03a4783db01de4b.jpg

Всего наилучшего! До встречи в новом году!

© Habrahabr.ru