0

In Drupal 8.4.4 the CKEditor is suddenly missing the Link and Unlink buttons for all content types, for the Basic Editor and the Full HTML Editor as well. My users and I can no longer add links to anything, and if I edit articles any link html disappears in the editor altogether (I noticed the issue after editing and saving an article and then noticing the links that were there moments before were suddenly gone).

I went to admin/config/content/formats to configure the editors to add the buttons back, but when I click the Configure button for Basic HTML I get the dreaded "The website encountered an unexpected error. Please try again later." message. Drupal error log shows the following:

TypeError: Argument 1 passed to Drupal\Core\Render\Element::children() must be of the type array, null given, called in /core/modules/ckeditor/src/Plugin/Editor/CKEditor.php on line 177 in Drupal\Core\Render\Element::children() (line 71 of core/lib/Drupal/Core/Render/Element.php).

Drupal\Core\Render\Element::children(NULL) (Line: 177) Drupal\ckeditor\Plugin\Editor\CKEditor->settingsForm(Array, Object, Object) (Line: 64) Drupal\editor\Plugin\EditorBase->buildConfigurationForm(Array, Object) (Line: 175) editor_form_filter_format_form_alter(Array, Object, 'filter_format_edit_form') (Line: 501) Drupal\Core\Extension\ModuleHandler->alter('form', Array, Object, 'filter_format_edit_form') (Line: 830) Drupal\Core\Form\FormBuilder->prepareForm('filter_format_edit_form', Array, Object) (Line: 272) Drupal\Core\Form\FormBuilder->buildForm('filter_format_edit_form', Object) (Line: 74) Drupal\Core\Controller\FormController->getContentResult(Object, Object) call_user_func_array(Array, Array) (Line: 123) Drupal\Core\EventSubscriber\EarlyRenderingControllerWrapperSubscriber->Drupal\Core\EventSubscriber{closure}() (Line: 582) Drupal\Core\Render\Renderer->executeInRenderContext(Object, Object) (Line: 124) Drupal\Core\EventSubscriber\EarlyRenderingControllerWrapperSubscriber->wrapControllerExecutionInRenderContext(Array, Array) (Line: 97) Drupal\Core\EventSubscriber\EarlyRenderingControllerWrapperSubscriber->Drupal\Core\EventSubscriber{closure}() call_user_func_array(Object, Array) (Line: 153) Symfony\Component\HttpKernel\HttpKernel->handleRaw(Object, 1) (Line: 68) Symfony\Component\HttpKernel\HttpKernel->handle(Object, 1, 1) (Line: 57) Drupal\Core\StackMiddleware\Session->handle(Object, 1, 1) (Line: 47) Drupal\Core\StackMiddleware\KernelPreHandle->handle(Object, 1, 1) (Line: 99) Drupal\page_cache\StackMiddleware\PageCache->pass(Object, 1, 1) (Line: 78) Drupal\page_cache\StackMiddleware\PageCache->handle(Object, 1, 1) (Line: 50) Drupal\ban\BanMiddleware->handle(Object, 1, 1) (Line: 47) Drupal\Core\StackMiddleware\ReverseProxyMiddleware->handle(Object, 1, 1) (Line: 50) Drupal\Core\StackMiddleware\NegotiationMiddleware->handle(Object, 1, 1) (Line: 23) Stack\StackedHttpKernel->handle(Object, 1, 1) (Line: 657) Drupal\Core\DrupalKernel->handle(Object) (Line: 19)

I don't know if this is related to recently updating Drupal to 8.4.4, but I was not encountering this issue before as I've made many articles in the past month with links that still work. I have no idea how to debug or fix this issue, or if it's a known bug, please any help is appreciated.

0

I figured out the issue. Apparently something changed in the Drupal 8.4.4 update that caused the scripts related to the link/unlink buttons to work longer than usual, which was causing a PHP timeout exception (when checking the browser console it gave an HTTP Result Code: 200 error, which apparently happens regularly with Drupal). So in my settings.php file I increased the timeout by adding the line:

ini_set('MAX_EXECUTION_TIME', 7200);

You can also configure this in your host settings.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.