Программирование

Разработка модулей, сниппеты и др. вопросы программирования под Drupal, а также создание собственных шаблонов. Присылайте свои разработки. Вопросы по установке и настройке готовых модулей задавайте в Установка и настройка.
Все по темам: примеры кода, патчи и утилиты, темы оформления.

icon:

Как добавить JS и узнать nid при этом?

Аватар пользователя AlekseyArh

Нужно добавить js файл и добавить json с номером ноды, что бы js мог с ним работать на странице редактирования новости.
В Drupal 7 это был hook_node_prepare, а в нём функция drupal_add_js.
Как это сделать в Drupal 8 ?

Делаю hook_form_alter, получаю нужную мне форму и возможность добавить js скрипт через $form['#attached'], но не могу получить node id.
Делаю hook_node_prepare получаю node id, но нет $form что бы добавить js и вообще понять на какой я форме.

0 Спасибо

Кастомизация меню

Аватар пользователя Olegars

Всем привет
нужно модифцировать меню, отобразить 6 пунктов, оставшиеся 5 убрать в "еще".
какой функцией это сделать?

0 Спасибо

Иерархия

Аватар пользователя Marfey

Народ, помогите вывести иерархию терминов на страницах как отображено здесь
http://www.drupal.ru/files/untitled-2_copy.png

0 Спасибо

Настройки модуля и доступ к ним

Аватар пользователя dimoncraft

Всем привет!
Подскажите пожалуйста, как можно найти данные, которые мы указываем при конфигурации модуля, а точнее, как к ним обратиться в коде?
Ну например, установили мы модуль, задали ему в конфигурации настройки подключения к удалённой базе данных (адрес, имя, пароль, порт), сохранили конфигурацию. Как их найти в коде самого модуля (например, в файле mymodule.module)?
Заранее спасибо за помощь!
Извините за тупой вопрос!

0 Спасибо

100500 тема - как вынести JS с head, в отдельный файл

Аватар пользователя Kactus
Это сообщение находится в тёмной материи. Вы можете изменить настройки просмотра тёмной материи в личном кабинете.

Batch api, cache_clear_all

Аватар пользователя Olegars

Всем привет.
Пару вопросов, может кто сталкивался.
Batch отрабатывает нормально, но не может закончить, останавливается на 99.999% и так и висит, в чем может быть проблема?
И второй вопрос, cache_clear_all('field:node:1873','cache_field'); не чистит кеш, и ошибок не выдает. Пробовал на двух установках. Где копать?

0 Спасибо

Вывод логотипа сайта на custom(созданной мной) теме

Аватар пользователя Riaron

Как вывести логотип сайта на custom темой(директория где находится файл logo.png это корень темы)?
Пробовал
1) созать папку в папке темы config/install и в ней созать файл mytheme.settings.yml в котором прописать

0 Спасибо

Как вывести свой html вместо друпаловского?

Аватар пользователя AlekseyArh

Добрый день.
Как правильно выводить данные без шаблона друпала?
Допустим я хочу вывести ноль на странице, просто ноль, ни вёрстки, ни чего, ноль и всё.

Так конечно вариант, но нужно что бы друпал до конца отработал.

<?php
echo 0; exit;
?>
0 Спасибо

Как добавить в views поле-подзапрос ?

Аватар пользователя SYr

Приветствую!

Подскажите пожалуйста, как реализовать хитрый вьюсь?

Есть тип ноды, который может один раз создать юзер. Там есть поле (f1) с тремя значениями (1/2/3) и реверенсфилд на ноду (f2).

Представление выводить список юзеров. Цель – сортировка юзеров по схожести заполнения.
Т.е. функцией получаю три массива значений (f2) для каждого (f1) у активного юзера. Допустим : 1=23,47,15 / 2=5,41 / 3=32,12

0 Спасибо

Манипуляция установкой модуля

Аватар пользователя dimoncraft

Всем доброго времени суток, господа!
Возникла острая необходимость манипулировать процессом установки модуля.
Смысл таков, что на этапе установки модуля я должен запросить у админа Drupal некий ключ, который он должен ввести и в зависимости от правильности этого ключа я должен либо продолжить процесс установки модуля, либо его прервать и не устанавливать этот модуль вообще.
Подскажите пожалуйста как это реализовать?
И второе:

0 Спасибо

Prepopulate значений множественных коллекций полей в entity form

Аватар пользователя OldWarrior

Есть:

1. Форма entity form
2. В этой форме множественное поле типа "Коллекция полей" с двумя дочерними полями: тест (число) и список выбора (select).

Требуется:

Сделать в hook_form_alter добавление и предзаполнение коллекций полей множественными значениями по умолчанию при создании новой сущности. То есть автоматически добавить несколько рядов произвольных данных, не прибегая к ручному добавлению с помощью кнопки "Add more". И даже вообще скрыть кнопки "Add more" и "Remove", поскольку в рамках именно этой задачи они не нужны.

3 Спасибо

Глобальная переменная

Аватар пользователя dimoncraft

Всем привет!
Ребят, подскажите пожалуйста, как сделать такие же удобные глобальные переменные в модуле, как глобалы в Друпале 7(типа $user и т.д.).
По началу я подумал, что это ограничивается только спецификацией языка php. Я в файле mymodule.install в хуке mymodule_install() объявил глобальную переменную и задал ей значение:
global $my_variable;
$my_variable = 'abc';
Затем в файле mymodule.module в хуке mymodule_menu() я написал, чтобы это выводилась это переменная на странице моего модуля.

0 Спасибо

Paragraphs, field collection

Аватар пользователя Olegars

Всем привет
подскажите, имеют ли преимущество такие поля как Paragraphs, field collection перед просто набором полей в типе материала в плане производительности?

0 Спасибо

Запрос к БД по конкретному типу материала

Аватар пользователя southjuniper

Друзья!
Пишем скрипт для выгрузки XML.
В друпале я новичок. Посмотрев в БД друпала обнаружил что поля сущностей в разных таблицах mysql.
Подскажите, как сделать SQL запрос к БД к конкретному типу материала. Есть тип материала - недвижимость. Нужно сформировать массив объектов(квартиры, дома, участки) этого типа материала. И все поля относящиеся к объекту(, адрес, площадь , фотки и тд. ). Все объекты распределены терминами таксономии(квартиры, дома, участки)

Как это сделать одним запросом?

Спасибо...

0 Спасибо

Добавление JS файла при редактировании определённого типа материала

Аватар пользователя AlekseyArh

Добрый вечер.
Подскажите как добить JS файл не через роутинг к маршруту, а на страницах редактирования/добавления материала определённого типа?
То есть я не знаю адрес страницы, это может быть /node/10, а может быть /node/add/my_type, при этом /node/11 может быть с другим типом и там не надо подключать.

0 Спасибо

Добавление подарочного товара из корзины commerce

Аватар пользователя oklidog

Добрый день! Пытаюсь разобраться со следущей задачей. Есть сайт пиццерии на drupal 7 commerce. Необходимо во время оформления заказа, добавить возможность выбора бесплатного напитка, при покупке двух пицц. Так же при покупке трех пицц - четвертая бесплатно, с возможностью выбора.

Если есть идеи, буду благодарен!

0 Спасибо

Как в стиле изображения в формате обрезка изменить цвет заднего фона?

Аватар пользователя Кришпер

Как в стиле изображения в формате обрезка изменить цвет заднего фона? Там просто с чёрным картинка получается, а я бы хотел белый.

0 Спасибо

drupal_goto после Flag

Аватар пользователя SYr

Всем привет!

0 Спасибо

Два импорта через Feeds - не обновляются поля

Аватар пользователя AlexeyBorisenko

Всем привет!

Создал два импорта через Feeds UI

1. Импортирует из XML: http://liquimoly.ru/catalogue_files/products_export.xml
2. Импортирует из CSV, поля: guid, Заголовок, Стоимость, Старая цена

Проблема: При импорте CSV - создается новая Нода, не обновляется существующая.
Настройки Node Proccesser для CSV: http://joxi.ru/MAjJxl4HWNVLAe

0 Спасибо