Дайджест интересных материалов из мира Drupal #8
Всем привет!
Самое интересное и полезное из мира Drupal за прошедшие 3 недели в нашем восьмом выпуске.
По-русски
- Ускоряем Drupal-сайт для авторизованных пользователей [1] с помощью модулей Entity cache и Display Cache — новая статья на drup.by.
- Из золотого фонда дРУпала: Система кэширования Drupal 7 (часть 1 [2], часть 2 [3], часть 3 [4]) от Spleshka.
- Раскрытый фильтр «С фото» в виде одиночного чекбокса [5] — пошаговая настройка Views от xandeadx.
Drupal Lite
- Соскучились по длинным подборкам модулей? Mediacurrent обновили свой список: Top Drupal 7 Modules: Final Edition [6]. А самый непредвзятый список всегда можно найти здесь [7].
- Вышла Acquia Dev Desktop 2 [8], XAMP для друпалеров. Эта программа позволяет новичкам быстро начать работу над сайтами на Drupal, а также в пару кликов перенести свой локальный сайт на бесплатный хостинг [9]от Acquia.
- Давно мы не вспоминали Rules [10], а ведь с помощью этого модуля можно решать совершенно неожиданные задачи, например, задать заголовок ноды из поля термина таксономии [11].
- Простой сниппет [12] задания размера больше 10 для множественных полей.
Всё для Drupal-разработчика
- Вышел Drupal 7.36. Список изменений [13] и багфиксов значительный, но не затрагивает каких-либо новых проблем безопасности.
- Если вы когда-либо использовали Composer [14], то наверняка задумывались о том, что неплохо было бы, если бы и Drupal модули можно было как-то прописывать в composer.json и собирать проект на Drupal’е при помощи этого замечательного инструмента. Наконец-то появился Drupal Packagist [15], обзор возможностей которого представлен в материале Using Composer to build your Drupal 7 projects [16].
- Про NoSQL многие слышали. Про то, что Drupal 7 можно использовать с MongoDB, тоже. Но как насчёт того, чтобы хранить в некоторых Drupal-полях данные JSON? Если вам любопытно ознакомиться с результатами такого эксперимента, то прочитайте статью Adding native JSON storage support in Drupal 7 or how to mix RDBM with NoSQL [17].
- Предоставление своих данных для персонализации (модуль Personalize [18] и Acquia Lift [19]) не является чем-то уж очень сложным после прочтения статьи Adding custom contexts to UDFs in Acquia Lift [20].
- В материале Accessibility in Drupal Themes [21] автор рассказывает, как сделать ваши темы доступными как можно большему числу людей, включая тех, кто имеет проблемы со здоровьем.
- В статье Connecting Drupal to Salesforce in Three Easy Steps [22] рассказывается про интеграции Drupal с CRM Salesforce.
- Продолжается цикл статей Solr for Drupal Developers, Part 3: Testing Solr locally [23], посвященных установке, и настройке поискового двидка Apache Solr и интеграции его с Drupal.
- Теме генерации PDF из Drupal посвящен обзор Decent PDF generation in Drupal [24]. Автор в итоге останавливается на платном решении.
- Пара полезных сниппетов [25] при использовании Entity Metadata Wrapper [26].
- Если вы когда-нибудь отправляли патчи на Drupal.org, то наверняка обращали внимание, что сам процесс достаточно нетривиальный. В материале Drupal testbot command line tool [27] рассказывается про разработку нового инструментария для Drush, призванного облегчить вам жизнь в этом плане, хотя бы в части запуска автоматических тестов.
- Drupal 7, как известно, не является самой быстрой системой, особенно для сайтов с decoupled-фронтендом, множеством AJAX-запросов, сложными запросами и т.п., то есть такой, которая должна предоствлять сервисы. И довольно часто поступают следующим образом: кладут все данные в денормализованном виде в какой-нибудь шустрый поисковый движок, и пишут Backend-сервис на уже другом фреймворке. В этом плане может быть очень любопытной обучающая статья Integrate Elasticsearch with Silex [28], в которой рассказывается про интеграцию Silex’a [29]и Drupal’a с Elasticsearch [30].
- Acquia опубликовала статистику выдачи Drupal-сертификатов по странам [31]. Активнее всего сертифицируются разработчики из США и Индии.
- Дистрибутив дистрибутивов — звучит несколько странно, но именно это сейчас представляет ELMSLN [32], использующийся для создания и управления образовательными ресурсами. В плане сложности и масштаба кастомизации — на взгляд самого автора — настоящее произведение искусства. В статье Install ELMSLN on Digital Ocean in one line [33] рассказывается и показывается, как максимально быстро установить дистрибутив на практический произвольный CentOS 6.5 на примере Digital Ocean.
- Напоследок пофилософствуем о будущем под соответствующий аккомпанемент [34]: размышления о 2020 годе [35] (это меньше чем через 5 лет) и очередные эксперименты c Internet of Things [36].
Drupal 8
- Как вам может быть известно, Javascript-библиотеки Backbone.JS и Underscore входят в ядро 8-го Drupal’a. В публикации Backbone.js and Underscore.js in Drupal 8 [37] представлен неплохой обзор, сопровождающийся ссылками на соответствующую литературу, если вам интересно использование их на практике.
- Краткий обзор [38] основных достижений Drupal 8 — в плане производительности и применительно к кэшу render-массивов — завершается элегантным прототипом по визуализации дерева рендера при помощи библиотеки renderviz.
- Недавно появился оригинальный сервис http://d8upgrade.org/ [39], который на основе парсинга страницы со списком модулей с произвольного сайта на Drupal 7 пытается вам подсказать, когда можно начать портировать сайт Drupal 8.
- Очередная публикация [40] на тему темизации в Drupal 8, на этот раз интересна акцентом на использование брейкпоинтов.
Интересные модули
- MEFIBS — More exposed forms in blocks [41]. Достаточно интересный модуль для практикующих создателей каталогов. Модуль позволяет позволяет создавать несколько блоков вместо одного стандартного для помещения в них exposed-фильтров Views. По данному модулю есть подробная статья [42].
- Field lock multi values [43]. Модуль представляет несколько полезных возможностей: 1) вы можете запретить пользователю менять порядок элементов при использовании полей с множественными значениями 2) вы можете настроить так, чтобы при добавлении нового элемента в поле с множественными значениями, все предыдущие элементы блокировались для изменений.
- Drusible [44]. Ещё одна сборка окружения на основе Vagrant и, как вы уже догадались, Ansible.
- Third Party Wrappers [45]. Немного экзотический модуль Third Party Wrappers предоставляет URI для получения шапки и подвала произвольной страницы по конфигурируемому сепаратору. Это может пригодиться, если ваш конкент вставляется в разметку сторонних сайтов или сервисов. Модулю посвящена статья Using Third Party Wrappers [46].
- FAQ Field [47]. Для создания функционала FAQ модулей и подходов хватает, но не все из них имеют такой замечательный мануал [48].
- Quicktabs [49]. Создание табов через UI.
- Views List Sort [50]. Управляем сортировкой элементов в exposed-выпадающих фильтрах Views. Модулю посвящена достаточно наглядная статья [51].
Пишете статьи о Drupal на благо сообщества? Пожалуйста, свяжитесь с нами: Олег Кот [52], Катя Маршалкина [53].
P.S. Сегодня у Drupal-дайджеста маленький праздник — выходит первый выпуск нашей почтовой рассылки [54]. Её формат более краткий и ёмкий. Вместо того, чтобы копировать одно и тоже и сюда, и к вам в почту, мы работаем над эксклюзивными материалами только для подписчиков.
Присоединяйтесь! Будет интересно!
Автор: k0teg
Источник [55]
Сайт-источник PVSM.RU: https://www.pvsm.ru
Путь до страницы источника: https://www.pvsm.ru/cms/89336
Ссылки в тексте:
[1] Ускоряем Drupal-сайт для авторизованных пользователей: http://drup.by/articles/entity-cache-i-display-sache-kompleksnoe-keshirovanie-sushchnostey
[2] часть 1: http://drupalace.ru/lesson/sistema-keshirovaniya-drupal-7-chast-pervaya-segmenty-kesha
[3] часть 2: http://drupalace.ru/lesson/sistema-keshirovaniya-drupal-7-chast-vtoraya-programmnoe-upravlenie-keshem
[4] часть 3: http://drupalace.ru/lesson/sistema-keshirovaniya-drupal-7-chast-tretya-uskoryaemsya-za-schyot-izmeneniya-mesta-hraneniya
[5] Раскрытый фильтр «С фото» в виде одиночного чекбокса: http://xandeadx.ru/blog/drupal/834
[6] Top Drupal 7 Modules: Final Edition: http://www.mediacurrent.com/blog/top-drupal-7-modules-final-edition
[7] здесь: https://www.drupal.org/project/usage
[8] Acquia Dev Desktop 2: https://www.acquia.com/blog/streamline-your-local-drupal-workflow-acquia-dev-desktop-2
[9] бесплатный хостинг : https://www.acquia.com/free
[10] Rules: https://www.drupal.org/project/rules
[11] задать заголовок ноды из поля термина таксономии: https://www.darrylnorris.com/blog/how-replace-title-field-term-reference-taxonomies
[12] Простой сниппет: https://www.deeson.co.uk/labs/drupal-setting-higher-value-multi-value-field
[13] Список изменений: https://www.drupal.org/drupal-7.36-release-notes
[14] Composer: https://getcomposer.org/
[15] Drupal Packagist: http://packagist.drupal-composer.org
[16] Using Composer to build your Drupal 7 projects: http://cambrico.net/drupal/using-composer-to-build-your-drupal-7-projects
[17] Adding native JSON storage support in Drupal 7 or how to mix RDBM with NoSQL: http://www.drupalonwindows.com/en/blog/adding-native-json-storage-support-drupal-7-or-how-mix-rdbm-nosql
[18] Personalize: https://www.drupal.org/project/personalize
[19] Acquia Lift: https://www.acquia.com/products-services/acquia-lift
[20] Adding custom contexts to UDFs in Acquia Lift: http://yuriybabenko.com/blog/adding-custom-contexts-udf-acquia-lift
[21] Accessibility in Drupal Themes: https://www.zivtech.com/blog/accessibility-drupal-themes
[22] Connecting Drupal to Salesforce in Three Easy Steps: https://drupalwatchdog.com/volume-4/issue-2/connecting-drupal-salesforce-three-easy-steps
[23] Solr for Drupal Developers, Part 3: Testing Solr locally: http://www.midwesternmac.com/blogs/jeff-geerling/solr-drupal-developers-part-3
[24] Decent PDF generation in Drupal: http://www.drupalonwindows.com/en/blog/decent-pdf-generation-drupal
[25] Пара полезных сниппетов: http://chuva-inc.com/blog/advanced-metadata-wrappers
[26] Entity Metadata Wrapper: https://www.drupal.org/project/entity
[27] Drupal testbot command line tool: http://blog.boombatower.com/drupal-testbot-command-line-tool
[28] Integrate Elasticsearch with Silex: http://www.sitepoint.com/integrate-elasticsearch-silex/
[29] Silex’a : http://silex.sensiolabs.org/
[30] Elasticsearch: https://www.elastic.co/products/elasticsearch
[31] Drupal-сертификатов по странам: http://www.tanay.co.in/blog/some-quick-statistics-scraping-acquia-certification-registry.html
[32] ELMSLN: https://www.elmsln.org/
[33] Install ELMSLN on Digital Ocean in one line: https://drupal.psu.edu/blog/post/install-elmsln-digital-ocean-one-line
[34] под соответствующий аккомпанемент: https://www.youtube.com/watch?v=PWjcqE3QKBg
[35] размышления о 2020 годе: https://drupal.psu.edu/blog/post/year-2020
[36] эксперименты c Internet of Things: http://orkjern.com/drupal-internet-of-things
[37] Backbone.js and Underscore.js in Drupal 8: https://drupalize.me/blog/201504/backbonejs-and-underscorejs-drupal-8
[38] Краткий обзор: http://wimleers.com/blog/renderviz-prototype
[39] http://d8upgrade.org/: http://d8upgrade.org/
[40] публикация: http://x-team.com/2015/04/deep-dive-anatomy-drupal-8-theming/
[41] MEFIBS — More exposed forms in blocks: https://www.drupal.org/project/mefibs
[42] статья: http://www.wellnet.it/en/blog/weekly-module-review-4-mefibs-%E2%80%93-more-exposed-forms-blocks
[43] Field lock multi values: https://www.drupal.org/project/field_lock_multi_values
[44] Drusible: https://www.drupal.org/project/drusible/
[45] Third Party Wrappers: https://www.drupal.org/project/third_party_wrappers
[46] Using Third Party Wrappers: http://www.mediacurrent.com/blog/using-third-party-wrappers
[47] FAQ Field: https://www.drupal.org/project/faqfield
[48] мануал: http://www.webwash.net/tutorials/create-frequently-asked-questions-page-using-faq-field-drupal-7
[49] Quicktabs: http://www.wellnet.it/en/blog/weekly-module-review-6-quicktabs-create-tabs-easy-way
[50] Views List Sort: https://www.drupal.org/project/views_list_sort
[51] статья: http://steindom.com/articles/sorting-view-list-fields-allowed-values
[52] Олег Кот: mailto:Aleh_Kot@epam.com
[53] Катя Маршалкина: mailto:marshalkina@licel.ru
[54] почтовой рассылки: http://eepurl.com/bhCjRb
[55] Источник: http://habrahabr.ru/post/256123/
Нажмите здесь для печати.