Всем привет!
За месяц у нас накопилось много интересных ссылок для вас. Встречайте девятый выпуск!
Весна в русском Drupal-сообществе прошла плодотворно. Ловите десять ссылок на отличные статьи на русском:
Но, конечно, львиная доля информации формируется мировым сообществем. Всё, что ниже, — на английском. Но даже если вы не сильны в английском, не переживайте: друпалер друпалера всегда поймёт!
Drupal Lite это не форк друпала (по крайней мере пока), а наша рубрика для начинающих.
Над выпуском работали Олег Кот и Катя Маршалкина. Делитесь с нами полезными статьями, своими и чужими, в комментариях или почте, и подписывайтесь на нашу рассылку.
P.S. В Drupal Planet довольно популярен формат подкастов, но в дайджесте мы их пока обходим стороной. Кто-нибудь слушает? Стоит добавлять, как считаете?
За месяц у нас накопилось много интересных ссылок для вас. Встречайте девятый выпуск!
По-русски
Весна в русском Drupal-сообществе прошла плодотворно. Ловите десять ссылок на отличные статьи на русском:
- В блоге angarsky.ru вышла большая техническая статья «Создание ноды через кастомную форму с использованием модального окна CTools». И хотя этот материал далеко не для новичков, мы с честью открываем им дайджест! Всё очень подробно и грамотно рассказано и показано на реальном коде.
- Немного хардкора от того же автора: «Получить программно список обновлений для БД». Эта заметка демонстрирует преимущества открытого фреймфорка Drupal — при желании вы можете сделать всё, что угодно.
- Ещё одна практическая статья «Как добавить форму редактирования поля сущности к своей форме» вышла в блоге drupaler.by. Кстати, у Ctools и для полей есть удобные хелперы, чтобы не разбираться с подводными камнями Field API в одиночестве.
- Куда ж без андеда и его неповторимого краткого стиля изложения. Модуль Language Domains будем иметь ввиду.
- Хотите сделать свой rapidshare c таймером перед скачиванием? Павел Катаев поделился своим модулем Delay Download для этой цели, правда пока что модуль не доступен с drupal.org.
- И ещё код: «Как программно редактировать профиль пользователя».
- Пётр Лозовицкий рассказал, как переводил сайт с MySQL на PostgreSQL.
- Новенькое на сайтах сообщества. На drupal.ru читайте про настройку сервера на основе конфига nginx-джедая Perusio.
- На dru.io вышла заметка про любимые Drush-команды Василия Устинова.
- Ребята из DrupalSPB.org провели очередной митап (презентации смотрите на страницах докладов) и Global Training Day, за что им большое уважение!
Но, конечно, львиная доля информации формируется мировым сообществем. Всё, что ниже, — на английском. Но даже если вы не сильны в английском, не переживайте: друпалер друпалера всегда поймёт!
Drupal Lite
Drupal Lite это не форк друпала (по крайней мере пока), а наша рубрика для начинающих.
- Вышел Drupal 7.37. Среди изменений можно отметить появившуюся папку
sites/all/libraries
, а также возможность использовать нижнее подчеркивание в списке разрешенных тэгов ваших фильтров. - Подбор подходящего модуля не такая уж и простая вещь, особенно для новичков. Полезные советы по «как», “что”, “где” и “зачем” представлены в цикле статей Selecting Drupal Modules: What Do You Need?, (II, III). Кстати, kalabro писала об этом ещё два года назад, и тоже в трёх частях (I, II, III).
- Работа с регулярными процедурами (Cron) станет понятнее после прочтения статьи Creating custom cron tasks in Drupal 7.
- Гайд по использованию Dreditor — расширения для вашего браузера, которое улучшает работу с Drupal.org.
- Большой труд по многоязычности: How Drupal Does Multilingual. Лучше один раз потратить день и разобраться, поверьте нашему горькому опыту. На десерт заметка Drupal 7 Total Language Fallback, а также модуль Select translation, который используется для фильтрации материалов в Views по языку.
- Результаты работы модуля Views могут быть легко представлены в виде JSON при помощи модуля Services.
Всё для Drupal-разработчика
- Видео с DrupalCon Los Angeles 2015.
Вот несколько (1, 2) мнений, что стоит посмотреть. Подписчикам нашей рассылки отправили письмо с разбором речи Дриса, создателя Drupal. - Как поддерживать ваш
settings.php
в чистоте и порядке, читайте в статье “Site configuration strategy (or how to manage your settings.php files)”. - В заметке Learning To Debug: Stop Thinking and Look автор рассуждает на тему правильного дебага и призывает нас быть внимательнее, чтобы не тратить лишние часы, силы и время на лечение симптомов вместо болезни.
- Иногда для отладки нам необходимо выполнить целую последовательность PHP-операций, например, загрузить ноду с ID=1, дампнуть её, загрузить ноду с ID=2 и т.п. У нас есть Devel > Execute PHP Code, а также Drush-команда `drush php-eval`, но это недостаточно удобно по сравнению с нормальными REPL в других языках (напр. Python), где выводится результат выполнения каждой строки. В этом плане, вам может оказаться любопытным продукт Drush REPL, которому посвящена отдельная статья.
- И снова про поисковую оптимизацию после Mobilegeddon. На самом деле всё не так страшно. Несколько простых модулей помогут вам значительно улучшить ваше положение.
- Управляем Drupal’ом при помощи пульта для телевизора. No comment
- Оказывается, что прикрутить поиск от Google к вашему сайту на Drupal 7 совсем несложно.
- 600 SQL JOINS в одном запросе? Это вполне реальная ситуация для большого проекта, если начать вслепую хранить любые данные в полях. Данная проблема рассматривается в статье Drupal: Fields or Properties (or something else), где автор предлагает несколько решений.
- Наглядный пример того, насколько просто импортировать геоданные в Drupal 7, представлен в материале From spreadsheet to citizen government with Drupal — Volume 1 — Feeds.
- Highload-настройка MySQL имеет целый ряд нюансов (например, выбор IO scheduler’a операционной системы), часть которых достаточно подробно разобрана в материале MySQL — Setup.
- На некоторых проектах встречаются реально большие базы данных (для CMS; >2 GB), импорт которых для тестирования, ревью и прочих активностей может занимать изрядное время. В статье Importing huge databases faster вопрос разбирается досконально.
- Не самое красивое решение, но рабочее — для поворота картинок после их загрузки: Rotating original file for image field in Drupal 7 and dealing with browser cache.
- Правительства разных стран в последнее время становятся регулярным заказчиком сайтов на Drupal. Происходит это в силу разных причин: дешевизна, open source и т.п. Одной из причин также является поддержка доступности для людей с ограниченными возможностями (accessibility). Разобраться с этой темой поможет серия статей Web Accessibility Tips for Developers: части 1 и 2.
- Кажется, всё. Хотя нет, какой дайджест без фич? В статье Features Secret Rolemageddon рассказывается о подводных камнях при экспорте прав и ролей через Features.
Drupal 8
- Обучающий материал Using Ajax Forms in Drupal 8 рассказывает про создание AJAX-форм.
- В заметке Drupal 8: core javascript files for anonymous users рассказывается про правильный способ добавления своих JS-библиотек к рендер-массивам.
- И третья статья от того же автора: про новый способ добавления произвольных тегов в шапку страницу.
- К сервисам и ресурсам, сделанным на Drupal 8, достаточно легко добавить аутентификацию и авторизацию.
- В 8-ке наряду с PHPUnit для юнит-тестирования по-прежнему остается Simpletest. Особенности работы с ним раскрываются в материале Automated Testing of Drupal 8 Modules.
- Если вам интересно, как подключить CDN от Amazon к Drupal 8, то обязательно прочитайте статью Amazon CloudFront with Drupal 8.
- Реинкарнация модуля Features в Drupal 8 — с надеждой, что теперь модуль будет использоваться по назначению.
- В Drupal 8 целых 4 типа информации. В статье Creating Custom Config Entities in Drupal 8 представлено описание и пример создания одного из них.
Бизнес и сообщество
- Кто мы и куда идем? The Cultural Construction of Drupal — большой познавательный труд на тему друпал-сообщества. Читать и статью, и комментарии.
- В тему также можно прочитать комментарий Дриса к покупке WooMattic. В целом, можно констатировать больший крен Drupal в сторону large enterprises.
- В материале “Pantheon Acquires NodeSquirrel to Provide Free Drupal Cloud Backups for Everyone!” представлен краткий инсайт о покупке компанией Pantheon сервиса NodeSquirrel. Для широкой публики это может быть интересно тем, что у всех желающих появилась возможность делать бесплатные бекапы сайтов в клауд.
- Эдиссон Берри, новый Board Director Ассоциации, рассказывает каково это.
Интересные модули
- Theme Developer
Иногда бывает сложно определить, какой шаблон по факту был вызван для рендера того или иного элемента. Разобраться с этим помогает модуль Devel Themer, работе с которым посвящена отдельная статья. - Dynamic widget for commerce line item field
По-хорошему, в архивах заказов интернет-магазинов некорректно хранить лишь ссылки на существующие продукты. Свойства продуктов могут меняться со временем, поэтому лучше сохранять все данные продукта в позиции (line item) заказа. Модуль именно это и позволяет сделать. - Views exposed form layout
Модуль помогает темизировать exposed-формы модуля Views. - Views List Sort
Полезен для кастомной сортировки по списковому полю. - 403 to 404
В Drupal по умолчанию выдается ошибка 403 Access denied при обращении неавторизованных пользователей к каким-то страницам. С точки зрения безопасности иногда лучше выводить 404 Not Found. - Mobile sliding menu
Модуль позволяет использовать на вашем сайте удобное меню-слайдер, чтобы ваша навигация была дружелюбной к мобильным устройствам. Используется библиотека jQuery MMenu. Данному модулю посвящена отдельная статья. - REST/JSON
Ещё одна REST-имплементация, опять же в основном нацеленная на чтение данных. - Entity Panels
Лёгкая замена Panelizer от Максима Подорова. - Views String Select
Если вам не хватает встроенного во Views глоссария (а он там есть), стоит обратить внимание на этот модуль. - Page manager existing pages
Этот модуль позволяет перекрывать существующие страницы в Page Manager (статья). - Safeword
Machine name, только в виде поля. Можно использовать, например, для задания части алиаса пути, а доступ к стандартному полю Path закрыть, чтобы пользователи ничего не сломали.
Над выпуском работали Олег Кот и Катя Маршалкина. Делитесь с нами полезными статьями, своими и чужими, в комментариях или почте, и подписывайтесь на нашу рассылку.
P.S. В Drupal Planet довольно популярен формат подкастов, но в дайджесте мы их пока обходим стороной. Кто-нибудь слушает? Стоит добавлять, как считаете?
Комментарии (9)
CrazyRad
26.05.2015 13:09+1> Большой труд по многоязычности: How Drupal Does Multilingual.
Издревле пользуюсь публикацией www.lullabot.com/blog/article/localized-and-multi-lingual-content-drupal-7
Punk_UnDeaD
30.05.2015 18:28Entity Panels
Лёгкая замена Panelizer от Максима Подорова.
Годно!
До сих пор пользовался DS, а Panelizer вызывал некоторый дискомфорт, не туда нажал и уже не ясно, какую панель редактируешь.
Теперь же вся настройка отображений полностью через панели.
chegor
Подкасты были бы интересны — слушать в дороге.
kalabro Автор
английский не смущает?
chegor
Ну в принципе, конечно, немного смущает. Но учитывая что всё равно технический английский, а не «Песнь льда и пламени» — ничего критически страшного. Да и полезно в целом.
kalabro Автор
оок, we are hiring!
В Drupal Digest требуется обозреватель подкастов, ответственный и любящий друпал.
Здесь должен был быть смайл улыбки.