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

    Всем привет!

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



    По-русски


    Начнём с материалов на русском языке:


    Всё для 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 в активном поиске» — так хотелось озаглавить этот дайджест! :)
      1. Отличное введение в фасетный поиск (с видео).
      2. Серия статей «Apache Solr and Drupal». Уже вышли первая и вторая части.
      3. Ещё один мануал по установке Apache Solr, вариант для разработки.
      4. Интеграция 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, который используется для постраничного разбиения содержимого ноды по количеству символом, слов или по специальному плейсхолдеру.


    Над выпуском работали Олег Кот и Катя Маршалкина. Пишите нам с любыми вопросами и предложениями!



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

    Similar posts

    AdBlock has stolen the banner, but banners are not teeth — they will be back

    More
    Ads

    Comments 10

      +5
      С разработкой Drupal 8 не всё так просто, возможно из-за того, что всё-таки основной фокус системы сместился на движение к enterprise-миру, что естественно повлекло за собой усложнение системы и подняло планку для контрибьюшена.


      Да есть паника по этому поводу в наших рядах. Уровень вхождения в Друпал 7 был тоже достаточно высок. Не смотря что Друпал это CMS, но используется он больше как CMF и при этом понимании новички уходят, даже не пробуя эту фичу, а те кто попробовал уже в рядах друпалеров и с этой иглы уже не слезут!

      Когда был переход с Друпал 6 на Друпал 7 — тоже была паника. Было много криков — «теперь переучиваться надо».
      Помню каждый второй паникер обязательно делал тесты производительности, при это включал оба сайта из под коробки, но не учитывая те факты что:
      — Д6 обкатан годами, а Д7 в полусыром виде и работы над производительностью только начались
      — Д6 в коробке очень примитивен, в то время как Д7 уже в коробке умеет создавать поля, пресеты для фотографий и много другого.

      Со временем паника прошла и все благополучно пересели на Д7, вспоминая какой убогий этот Д6!
      Думаю сейчас ситуация аналогичная. Д8 сложнее, но количество плюшек там заложено побольше и есть много потенциала для ускорения.

      Спасибо за подборку! Продолжайте и дальше, очень интересно.
        +1
        Спасибо, хорошая подборка.

        Нашел пару своих модулей в статье Связка из модулей Panels, Views и Bootstrap Framework :)
          0
          Спасибо за подборку и за то, что отыскали и упомянули мой новоиспеченный модуль — Fieldable Panel Panes Bundles. Буду рад фидбеку!

          Рад что Хабр понемногу Друпализируется!
          • UFO just landed and posted this here
              0
              Еще как выгружаются. Вы что, никогда не работали с модулем Features?

              Воркфлоу приблизительно такой:

              1. Создание бандла.
              2. Наполнение полями.
              3. Создание фичи, в которой должен присутствовать сам бандл, поля и зависимости.

              П.С. Завтра опубликую 7.x-1.2 версию, в которой любая структура (поля, группы полей, модули виджетов etc.) бандла будет подтягиватся автоматически.
              • UFO just landed and posted this here
                  0
                  Любые. У Друпала все поля одинаковы (те, которые аттачатся к сущностям, не путать с Form API) и экспортируются тоже одинаково.
                  • UFO just landed and posted this here
              0
              del

                Only users with full accounts can post comments. Log in, please.