Сайт-визитка

от 14 000 рублей

Каталог

от 19 000 рублей

Магазин

от 30 000 рублей

Полезности

Немного динамического раутинга в Drupal 7

В Друпале, как известно, адреса основных сущностей, таких как пользователи и материалы, имеют вид user/123 и node/123 соответственно (где 123 — это id сущности). Если мы хотим, например, сделать страницу со всеми фотографиями для каждого пользователя, то скорее всего мы сделаем ее с адресом вроде user/123/photos. Ну потому что надо же откуда-то id пользователя взять и загрузить все его фотографии. И этот адрес будет хорош всем кроме одного — пользователю непонятно, почему он, Василий Петрович Пупкин, называется «123».

Front-end тестирование с помощью CapserJS

Сегодня мы немного поразбираемся в библиотеке CasperJS. Что такое CasperJS? Аннотация на сайте говорит нам, что это navigation scripting & testing utility, то есть инструмент для написания сценариев навигации и для тестирования. Работает CasperJS с помощью безбашенного headless-браузера PhantomJS (Webkit), либо с помощью почти-headless-браузера SlimerJS (Gecko).

Продолжительность видео с помощью getid3

Как известно, для показа видеороликов, загруженных на сайт, неплохо подходит модуль Video. В статьях и мануалах на модуль, в основном, речь идет о настройке модуля так, чтобы загруженные файлы были автоматически перекодированы в нужный формат (ffmpeg-ом). Однако обязательным условием это не является: загрузив на сайт видео в подходящем формате, его можно показывать без всякого перекодирования.

Своя карта для OpenLayers

Иногда нужно добавить на сайт карту, а стандартные варианты  Яндекса и Google по каким-то причинам не подходят. Может быть нужно выполнить ее в фирменных цветах или вывести данные о населенности и о среднегодовой температуре. 

Подготавливаем карту

Создаем карту в редакторе TileMiill. В новом проекте у нас есть чистая карта мира с границами государств, добавляем данные и оформляем их. Не будем останавливаться на этом, масса подробной информации об этом есть на сайте проекта.

Про CKE Fake Objects

Что такое WYSIWYG-редактор? Это редактор, позволяющий пользователю видеть (в форме редактора) то, что он получит, нажав «Сохранить». Одним из популярных редакторов этого толка безусловно является CKEditor (далее, CKE). Принцип его работы, если очень грубо, в том, что пользователю в форму выводится, так сказать, отрендеренный HTML, а подспудно хранится исходный HTML-код, который отправится в значение textarea при сохранении. То есть пользователь видит жирный текст, а редактор хранит <strong>жирный текст</strong>.

Создадим ленту активности с помощью Message

На сайтах с социальным уклоном нередко возникает необходимость создать ленту событий, состоящую из сообщений о том, что пользователь что-то прокомментировал, лайкнул, создал и т.д. Назовем эту ленту — лентой активности.

Создать ее достаточно нетрудно с помощью модуля Message и сейчас мы покажем, как.

Установим модуль message, пройдем в его настройки (admin/structure/messages). Нажмем Add message type.

Адаптивная сетка на Views только с помощью CSS

Часто на сайте требуется вывести данные в виде сетки — это могут быть товары в магазине, каталоги товаров и услуг или просто фотографии в альбоме. Обычное решение — использовать сетку (grid), но на самом деле это таблица и ни о какой адаптивности не может быть и речи. Можно использовать бесполезный, на наш взгляд, модуль Views Responsive Grid или переопределять шаблоны, но это не самые быстрые варианты.

Как быстро вытащить координаты с Гугла

Предположим, есть у нас на сайте словарь таксономии «Города», и мы хотим иногда показывать эти города на карте. Для карты у нас есть gmap, а для хранения координат — location. Настроить эти два модуля, чтобы отображать сущности как маркеры на карте — довольно нетрудно. Единственное, чего не хватает — координат каждого города.

Разные Views для отдельных терминов таксономии

При разработке сайтов мы часто выводим термины таксономии через единое представление Views, эмулирующее страницу taxonomy/term/%. Это здорово, это удобно, но проблема единого решения очевидна: единое решение может подойти не всегда. Иногда нам нужно вывести немного (а то и много) другое представление для отдельного термина или двух.

Если задача именно такая — заменить стандартную вьюшку для пары терминов — не торопитесь тащить в проект Panels. Есть небольшой модуль Taxonomy Views Integrator и он как раз поможет.

Про hook_library_alter на примере Яндекс.Карт

Есть в Drupal 7 такая замечательная возможность — упаковать набор CSS и JS в библиотеку, и подключать потом одним разом. Достигается эта радость объявлением библиотеки через hook_library() и подключением — через drupal_add_library().

Страницы