public function Internal::getConfig in Drupal 9
Same name and namespace in other branches
- 8 core/modules/ckeditor/src/Plugin/CKEditorPlugin/Internal.php \Drupal\ckeditor\Plugin\CKEditorPlugin\Internal::getConfig()
Returns the additions to CKEDITOR.config for a specific CKEditor instance.
The editor's settings can be retrieved via $editor->getSettings(), but be aware that it may not yet contain plugin-specific settings, because the user may not yet have configured the form. If there are plugin-specific settings (verify with isset()), they can be found at
$settings = $editor
->getSettings();
$plugin_specific_settings = $settings['plugins'][$plugin_id];
Parameters
\Drupal\editor\Entity\Editor $editor: A configured text editor object.
Return value
array A keyed array, whose keys will end up as keys under CKEDITOR.config.
Overrides CKEditorPluginInterface::getConfig
File
- core/
modules/ ckeditor/ src/ Plugin/ CKEditorPlugin/ Internal.php, line 101
Class
- Internal
- Defines the "internal" plugin (i.e. core plugins part of our CKEditor build).
Namespace
Drupal\ckeditor\Plugin\CKEditorPluginCode
public function getConfig(Editor $editor) {
// Reasonable defaults that provide expected basic behavior.
$config = [
// Don't load CKEditor's config.js file.
'customConfig' => '',
'pasteFromWordPromptCleanup' => TRUE,
'resize_dir' => 'vertical',
'justifyClasses' => [
'text-align-left',
'text-align-center',
'text-align-right',
'text-align-justify',
],
'entities' => FALSE,
'disableNativeSpellChecker' => FALSE,
];
// Add the allowedContent setting, which ensures CKEditor only allows tags
// and attributes that are allowed by the text format for this text editor.
list($config['allowedContent'], $config['disallowedContent']) = $this
->generateACFSettings($editor);
// Add the format_tags setting, if its button is enabled.
$toolbar_buttons = CKEditorPluginManager::getEnabledButtons($editor);
if (in_array('Format', $toolbar_buttons)) {
$config['format_tags'] = $this
->generateFormatTagsSetting($editor);
}
return $config;
}