Тут одно из двух, либо на продакшене не та кодировка базы, либо туда залили дамп не в той кодировке. Такое бывает, что обе базы в utf8mv4, но при экспорте выбирают обычную кодировку и потом всё ломается
drupalSettings - это просто объект в javascript. Имя модуля добавляют только с той целью, чтобы ключи сеттингов не пересекались, а то ведь случайно можно написать такой ключ, который перепишет настройки другого модуля и что-нибудь сломается. То есть имя модуля желательно конечно добавить, но
это не является обязательным.
Проблема в том, то в этом огромном диффе никто не будет разбираться. Поэтому если в композере что-то пошло не так, например, не применился патч, этого никто не увидит. В итоге версии в composer.json и composer.lock не будут соответствовать реально установленным.
Если же работать по нормальному - без вендоров, ядра и контриба в гите, то в случае непредвиденности на проде всё теми же стандартными средствами гита можно откатить composer.json и composer.lock на другую версию и выполнить composer install.
Даже во времена первого композера команда composer install проходила без проблем даже на самых захудалых хостингах. А сейчас и подавно. А кроме composer install на проде больше ничего не надо запускать.
Контриб и ядро в гите - это удобно до тех пор, пока на проекте не появляется код ревью.
Хорошая статья! Лично для меня, пожалуй, ничего нового, но многим будет полезно. Единственный вопрос, который остался за кадром - это хранить ли скомпилированные стили и скрипты темы. Лично на мой взгляд, если над проектом работает сразу несколько разработчиков, то лучше не хранить, т.к. замучаешься мерджить изменения в этих файлах. А если на проекте всего один разработчик, либо всего один разработчик работает с темой, то удобнее и проще будет всё же хранить стили и скрипты в репе.
Если блок с чекбоксами неудобен, надо сначала определиться, что будет удобно. Кроме того, в фасетах по умолчанию есть настройка, чтобы изначально показывать часть опций, а остальные скрыть под кнопкой "показать ещё". Плюс есть сортировка опций. Можно отсортировать их по количеству результатов, тогда под "показать ещё" уйдут самые редкие опции.
CKeditor подрезает код
А вот это уже какая-то странная настройка преобразовывать i в em. Наверное b в strong тоже переделывает. В разрешённых тэгах есть?
CKeditor подрезает код
Проблема в том, что вы вставляете пустой тэг, а CKEditor пустые тэги удаляет, независимо от никаких настроек. Но выход довольно прост:
А как в Search API Автоматически включать в индекс новые элементы?
Можно написать свой процессор, который повырезает все эти штуки перед индексом.
А как в Search API Автоматически включать в индекс новые элементы?
А после сохранения получилось переиндексировать?
А как в Search API Автоматически включать в индекс новые элементы?
а если эту ноду открыть на редактирование и сохранить, ошибка есть?
Как снять с публикации материал с помощью списка.
Заменить галочку на список + Rules? Что-то не похоже на упрощение
Как вывести поле ID node в поля типа материала?
Проще всего через шаблон:
А как в Search API Автоматически включать в индекс новые элементы?
Тут одно из двух, либо на продакшене не та кодировка базы, либо туда залили дамп не в той кодировке. Такое бывает, что обе базы в utf8mv4, но при экспорте выбирают обычную кодировку и потом всё ломается
А как в Search API Автоматически включать в индекс новые элементы?
В журнале нет ошибок, что что-то не удалось проиндексировать?
Drupal behaviors.
Всё понятно, вы сеттинги аттачите к элементу формы, а возвращаете элемент без сеттингов.
Нужно
Drupal behaviors.
Не видя код, очень тяжело что-то посоветовать.
Метатеги Drupal 8.7.7
metatag_routes
Drupal behaviors.
Это потому что в Entity reference полях нет свойства value. Если нужно название сущности, на которую ссылаются, то обращаться нужно так:
Drupal behaviors.
drupalSettings - это просто объект в javascript. Имя модуля добавляют только с той целью, чтобы ключи сеттингов не пересекались, а то ведь случайно можно написать такой ключ, который перепишет настройки другого модуля и что-нибудь сломается. То есть имя модуля желательно конечно добавить, но
это не является обязательным.
Drupal behaviors.
<?php
$form['#attached']['drupalSettings']['lol'] = $kek;
?>
Drupal behaviors.
Через drupalSettings.
Например в php пишем
Метатег Description в зависимости от значения поля
Обращайтесь к ней на "вы" и по имени-отчеству
Например так:
Как хранить проекты на Drupal 9+ в git-репозитории
Проблема в том, то в этом огромном диффе никто не будет разбираться. Поэтому если в композере что-то пошло не так, например, не применился патч, этого никто не увидит. В итоге версии в composer.json и composer.lock не будут соответствовать реально установленным.
Если же работать по нормальному - без вендоров, ядра и контриба в гите, то в случае непредвиденности на проде всё теми же стандартными средствами гита можно откатить composer.json и composer.lock на другую версию и выполнить composer install.
Как хранить проекты на Drupal 9+ в git-репозитории
Очень часто вместе с апдейтом ядра или контрибов нужно адаптировать к новым версиям кастом, а иногда и тему.
Метатег Description в зависимости от значения поля
Там же по ссылке серым по белому написано, что в переменной контекст есть ключ entity, в котором находится сущность.
Как хранить проекты на Drupal 9+ в git-репозитории
Даже во времена первого композера команда composer install проходила без проблем даже на самых захудалых хостингах. А сейчас и подавно. А кроме composer install на проде больше ничего не надо запускать.
Контриб и ядро в гите - это удобно до тех пор, пока на проекте не появляется код ревью.
Как хранить проекты на Drupal 9+ в git-репозитории
Хорошая статья! Лично для меня, пожалуй, ничего нового, но многим будет полезно. Единственный вопрос, который остался за кадром - это хранить ли скомпилированные стили и скрипты темы. Лично на мой взгляд, если над проектом работает сразу несколько разработчиков, то лучше не хранить, т.к. замучаешься мерджить изменения в этих файлах. А если на проекте всего один разработчик, либо всего один разработчик работает с темой, то удобнее и проще будет всё же хранить стили и скрипты в репе.
Метатег Description в зависимости от значения поля
Во-первых, почему бы просто не удалить токен [node:summary], если он не нужен?
Во-вторых, почему бы не использовать hook_metatags_alter?
facets - что делать с фильтром, у которого множество вариантов? Возможно chosen или select2...
Если блок с чекбоксами неудобен, надо сначала определиться, что будет удобно. Кроме того, в фасетах по умолчанию есть настройка, чтобы изначально показывать часть опций, а остальные скрыть под кнопкой "показать ещё". Плюс есть сортировка опций. Можно отсортировать их по количеству результатов, тогда под "показать ещё" уйдут самые редкие опции.
search_api + facets как добавить строку поиска?
Да, именно так. Есть ещё модуль Search API Autocomplete, с ним вообще красиво)