Drupal

Q & A для разработчиков и администраторов Drupal

6
Как сделать поле доступным только для чтения с помощью hook_form_alter
Я пытаюсь сделать некоторые поля формы профиля Drupal доступными только для чтения в режиме редактирования. Я использую следующий код в hook_alter $form[field_organisation_company_name][und][0]['#after_build'][]='_build_element_readonly'; function _build_element_readonly($element, &$form_state) { $element['value']['#attributes']['readonly'] = 'readonly'; return $element; } В пользовательском интерфейсе поле отображается только для чтения, но, тем не менее, я могу изменить значение, используя firebug …
12 7  forms 

2
$ node всегда доступен в page.tpl.php
Я периодически получаю сообщение об ошибке $ node undefined в одном из моих файлов шаблонов. У меня есть простое условие if, которое проверяет отображаемый тип узла. Я предположил, что $ node всегда доступен, или я не прав?
12 7  theming 

3
Как загрузить сущность абзаца на объекте узла?
Я использую абзацы в моем типе контента. Я создал тип абзаца и добавил контент. Теперь я хочу загрузить абзацы в foreach. Но ничего не появляется. $parasпустой: $node = \Drupal\node\Entity\Node::load(1); $paras = $node->get('field_paragraph')->referencedEntities();
12 8  paragraphs 

3
Как получить значения полей абзаца?
Я хотел бы создать список продуктов в drupal и отправить его в веб-сервис. Для этого я создал тип сущности с абзацами для каждого продукта. Как я могу загрузить абзац и получить доступ к его полям? До сих пор я вижу только target_id и target_revision_id продукта. Благодарность! $nodestorage = \Drupal::entityManager()->getStorage('node'); $productslist …

2
Как сделать пользовательский набор полей свернутым по умолчанию в Drupal 8
В Drupal 7 была возможность иметь разборный набор полей или нет, и ограничить состояние по умолчанию для этого элемента формы (свернутый или не свернутый). Пример: $form['contact_data'] = array( '#title' => t("Contact data"), '#type' => 'fieldset', '#collapsible' => TRUE, '#collapsed' => FALSE, ); Теперь, в Drupal 8 я не могу найти …
12 forms  8 

2
Как перестроить форму после вызова AJAX
Я пытаюсь позволить пользователю динамически выбирать количество полей на основе раскрывающегося списка с помощью вызова ajax, но я не могу получить вызов ajax, чтобы впоследствии перестроить форму. <?php class AJAXexample extends BlockBase { public function blockForm($form, FormStateInterface $form_state) { if (empty($form_state->getValue('number'))) { $form_state->setValue('number', 3); } $form['columnNum'] = [ '#title' => …
12 forms  8  ajax 

4
Хранение данных / сеанс для анонимного пользователя
Я работаю в магазине, и для корзины мне нужно хранить товары до оплаты. $tempstore = \Drupal::service('user.private_tempstore')->get('boutique'); $tempstore->set('poids', $form_state->getValue('poids')); Я смотрю на пользовательский сервис для: pivate_tempstore и shared_tempstore Но это работает только для аутентификации пользователей. Что я могу использовать для хранения данных? $ _SESSION? или у Drupal 8 есть сервис для …
12 8  sessions  files 

4
Как удалить тип контента программно?
Я программно создал тип контента во время установки модуля (используя настройку хранилища на месте). Я хочу удалить этот тип контента при удалении модуля. Есть ли способ сделать это с Drupal 8?
12 nodes  8 

3
Почему сайт drupal.org не использует более свежую версию Drupal?
Сдается мне, что если drupal.org поощряет людей использовать Drupal 8, то они должны подавать пример и переносить свой сайт на Drupal 8. На drupal.org: <meta name="Generator" content="Drupal 7 (http://drupal.org)"> Есть ли причина, по которой они выпустили Drupal версии 8, но сами все еще используют Drupal версии 7 ? Должен ли …

4
Ищем пример вставки базы данных
Согласно db_insertстранице руководства, эта функция устарела, и для вставки лучше использовать соединение с базой данных Drupal 8. Устаревшее начиная с Drupal 8.0.x, будет удален в Drupal 9.0.0. Вместо этого получите соединение с базой данных, внедренное в ваш сервис из контейнера, и вызовите insert () для него. Например, $ injected_database-> insert …
12 database  8 

1
Программно получить форму в Drupal 8
В документации говорится: Аргумент, передаваемый методу getForm (), является именем класса, который определяет вашу форму, и является реализацией \ Drupal \ Core \ Form \ FormBuilderInterface. Как мне узнать имя класса, который определяет форму обратной связи веб-сайта, предоставляемую модулем основного контакта (идентификатор формы:) feedback_contact_message_form. Когда я dpm()в форме, я вижу, …
12 8 

4
Запуск Drush возвращает ошибку
Я использую Drush версии 6.2.0 и последнюю бета-версию Drupal 8 на Dreamhosters. При запуске drush cc allв каталоге сайтов сразу после выполнения команды я получаю следующую ошибку: Неустранимая ошибка: класс 'Drupal \ Core \ Session \ AccountInterface' не найден в /home/mywebsite/mywebsite.com/core/includes/bootstrap.inc в строке 63 Команда Drush прервана ненормально из-за неисправимой …
12 drush  8 

8
Изменить существующую форму
Мы только начинали с Drupal 8 и очень быстро столкнулись с нашей первой проблемой. Как мне изменить существующую форму в Drupal 8? Нам нужно изменить метод сохранения для формы узла, чтобы сделать перенаправление на другую страницу. Мы хотим изменить форму узла, чтобы она стала чем-то вроде многошаговой формы. После того, …
12 8  forms 

2
Как получить доступ к значениям из предыдущих шагов в многостраничной веб-форме?
Я использую Webform 4. Он использует токены Drupal, а не собственные токены%, как это было в версии 3, и почти все, что я нашел, было о webform 3. Скажем, я хочу сделать многостраничную форму подписки. На первой странице есть только поле электронной почты. На втором я хочу разметку, которая скажет …
12 webforms  tokens 

1
Использование Webform в качестве приложения для членства / пользовательских ролей
Я хотел бы реализовать следующее на сайте Drupal: Анонимный посетитель сайта (Joe) подает заявку на членство с различными пользовательскими полями Admin (Jane) рассматривает заявку на членство Джейн одобряет заявку Джо и создает новую учетную запись пользователя Джо получает уведомление об одобрении и информацию для входа Возможные решения: Webform (Но как …
12 webforms  users 

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.