Проявляется как не прогружающиеся wysiwyg редактор (ckeditor, например) или элементы поля, обрабатываемые модулем media, при добавлении параграфа (entity модуля parapraphs). Это по-крайней мере два примера с которыми я лично сам сталкивался.
Характерно, что при сворачивании параграфа и загрузке его вновь, либо добавления параграфа того же типа, поля прогружаются правильно.
Проблема связана с оптимизацией скриптов, а не с модулем параграфов, как может показаться в начале. При использовании опции preprocess_js в настройках оптимизации сайта, очередность загрузки скриптов может нарушаться, и из-за этого нарушается работа указанных выше плагинов.
Скверность бага заключается еще в том, что обычно на этапе разработки, т.е. на dev-сервере, preprocess_js отключен. А на продакшине, соответственно, вклочен. Потому узнаешь о наличии бага уже после выхода кода в свет. Хотя баг и не критичный, но всё равно не приятно.
Можно попробовать применить фиксы к конкретным формам, дополнительно инициализируя нужные модулям скрипты, как описано вот тут https://www.drupal.org/project/paragraphs/issues/2480575.
Так можно решить проблему с каждым модулем по отдельности. А можно отключить препроцессинг скриптов для бек-енд друпал.
1 2 3 4 5 6 7 8 9 10 11 |
/* Implementation hook init */ function MODULENAME_init() { if (path_is_admin(current_path()) || arg(2) == 'edit' || in_array(current_path(), ['system/ajax', 'paragraphs/edit/ajax'])) { if (current_path() != 'admin/config/development/performance') { $GLOBALS['conf']['preprocess_js'] = 0; } } } |
Последнее условие отключает наш фикс для страницы настроек быстродействия, иначе администратор сайта не будет видеть актуального значения флага для сайта.