Обновляю в Drupal 9 модуль Metatag на версию 1.25.
Применяю обновление базы. Должен выполниться скрипт "Remove 'noydir', 'noodp' ROBOTS options from meta tag entity fields."
Подучаю ошибку.
Возникла AJAX HTTP ошибка.
Полученный код HTTP: 200
Следует отладочная информация.
Путь: /update.php/start?id=270&op=do_nojs&op=do
Текст Состояния: OK
Текст Ответа: Error: Call to undefined method Drupal\Core\Entity\ContentEntityNullStorage::getTableMapping() in metatag_post_update_remove_robots_noydir_noodp() (line 259 of C:\drupal\example.com\docs\modules\metatag\metatag.post_update.php).
Косяк в функции metatag_post_update_remove_robots_noydir_noodp(). Вычитал на форуме, что похожую ошибку поправили в версии 1.26, пробую обновиться на неё.
Warning: Undefined array key 1 in Drupal\system\Controller\DbUpdateController->results() (line 423 of core\modules\system\src\Controller\DbUpdateController.php).
Drupal\system\Controller\DbUpdateController->results(Object) (Line: 179)
Drupal\system\Controller\DbUpdateController->handle('results', Object)
call_user_func_array(Array, Array) (Line: 115)
Drupal\Core\Update\UpdateKernel->handleRaw(Object) (Line: 76)
Drupal\Core\Update\UpdateKernel->handle(Object) (Line: 27)
Ошибка немного другая.
Возникла AJAX HTTP ошибка.
Полученный код HTTP: 200
Следует отладочная информация.
Путь: /update.php/start?id=273&op=do_nojs&op=do
Текст Состояния: OK
Текст Ответа: Error: Call to undefined method Drupal\Core\Entity\ContentEntityNullStorage::getTableMapping() in _metatag_list_entity_field_tables() (line 65 of C:\drupal\example.com\docs\modules\metatag\metatag.post_update.php).
Теперь ошибка в функции _metatag_list_entity_field_tables(). Залез в код и понял, что кусок кода один и тот же, просто перемещён.
Не стал делать патч, просто поправил ручками (версия 1.26) файл metatag.post_update.php. Сделал проверку на ContentEntityNullStorage.
Функция _metatag_list_entity_field_tables()
Обновляю.
Источник:
Если вам понравилась статья, то ставьте 👍🏻 каналу. Пишите комментарии, задавайте вопросы, подписывайтесь.