MediaEmbed
class MediaEmbed extends FilterBase implements ContainerFactoryPluginInterface, TrustedCallbackInterface (View source)
| internal |
Provides a filter to embed media items using a custom tag.
Traits
Wrapper methods for \Drupal\Core\StringTranslation\TranslationInterface.
Provides dependency injection friendly methods for serialization.
Provides a trait for the messenger service.
Constants
| DERIVATIVE_SEPARATOR |
A string which is used to separate base plugin IDs from the derivative ID. |
Properties
| protected string | $pluginId | The plugin_id. |
from PluginBase |
| protected array | $pluginDefinition | The plugin implementation definition. |
from PluginBase |
| protected array | $configuration | Configuration information passed into the plugin. |
from PluginBase |
| protected TranslationInterface | $stringTranslation | The string translation service. |
from StringTranslationTrait |
| protected array | $_serviceIds | An array of service IDs keyed by property name used for serialization. |
from DependencySerializationTrait |
| protected array | $_entityStorages | An array of entity type IDs keyed by the property name of their storages. |
from DependencySerializationTrait |
| protected MessengerInterface | $messenger | The messenger. |
from MessengerTrait |
| string | $provider | The name of the provider that owns this filter. |
from FilterBase |
| bool | $status | A Boolean indicating whether this filter is enabled. |
from FilterBase |
| int | $weight | The weight of this filter compared to others in a filter collection. |
from FilterBase |
| array | $settings | An associative array containing the configured settings of this filter. |
from FilterBase |
| protected EntityRepositoryInterface | $entityRepository | The entity repository. |
|
| protected EntityTypeManagerInterface | $entityTypeManager | The entity type manager. |
|
| protected EntityDisplayRepositoryInterface | $entityDisplayRepository | The entity display repository. |
|
| protected EntityTypeBundleInfoInterface | $entityTypeBundleInfo | The entity type bundle info service. |
|
| protected RendererInterface | $renderer | The renderer. |
|
| protected LoggerChannelFactoryInterface | $loggerFactory | The logger factory. |
|
| static protected array | $recursiveRenderDepth | An array of counters for the recursive rendering protection. |
Methods
Constructs a MediaEmbed object.
Translates a string to the current language or to a given language.
Formats a string containing a count of items.
Returns the number of plurals supported by a given language.
Gets the string translation service.
Sets the configuration for this plugin instance.
Calculates dependencies for the configured plugin.
Returns the administrative description for this filter plugin.
Returns HTML allowed by this filter's configuration.
Generates a filter's tip.
Creates an instance of the plugin.
Builds the render array for the given media entity in the given langcode.
Builds the render array for the indicator when media cannot be loaded.
Performs the filter processing.
Renders the given render array into the given DOM node.
Disables Contextual Links for the embedded media by removing its property.
Applies attribute-based per-media embed overrides of media information.
Lists the trusted callbacks provided by the implementing class.
Details
__construct(array $configuration, string $plugin_id, mixed $plugin_definition, EntityRepositoryInterface $entity_repository, EntityTypeManagerInterface $entity_type_manager, EntityDisplayRepositoryInterface $entity_display_repository, EntityTypeBundleInfoInterface $bundle_info, RendererInterface $renderer, LoggerChannelFactoryInterface $logger_factory)
Constructs a MediaEmbed object.
string
getPluginId()
Gets the plugin_id of the plugin instance.
string
getBaseId()
Gets the base_plugin_id of the plugin instance.
string|null
getDerivativeId()
Gets the derivative_id of the plugin instance.
array
getPluginDefinition()
Gets the definition of the plugin implementation.
bool
isConfigurable()
Determines if the plugin is configurable.
protected TranslatableMarkup
t(string $string, array $args = [], array $options = [])
Translates a string to the current language or to a given language.
See \Drupal\Core\StringTranslation\TranslatableMarkup::__construct() for important security information and usage guidelines.
In order for strings to be localized, make them available in one of the ways supported by the
protected
formatPlural($count, $singular, $plural, array $args = [], array $options = [])
Formats a string containing a count of items.
protected
getNumberOfPlurals($langcode = NULL)
Returns the number of plurals supported by a given language.
protected TranslationInterface
getStringTranslation()
Gets the string translation service.
$this
setStringTranslation(TranslationInterface $translation)
Sets the string translation service to use.
__sleep()
{@inheritdoc}
__wakeup()
{@inheritdoc}
setMessenger(MessengerInterface $messenger)
Sets the messenger.
MessengerInterface
messenger()
Gets the messenger.
setConfiguration(array $configuration)
Sets the configuration for this plugin instance.
array
getConfiguration()
Gets this plugin's configuration.
array
defaultConfiguration()
Gets default configuration for this plugin.
array
calculateDependencies()
Calculates dependencies for the configured plugin.
Dependencies are saved in the plugin's configuration entity and are used to determine configuration synchronization order. For example, if the plugin integrates with specific user roles, this method should return an array of dependencies listing the specified roles.
int
getType()
Returns the processing type of this filter plugin.
string
getLabel()
Returns the administrative label for this filter plugin.
string
getDescription()
Returns the administrative description for this filter plugin.
array
settingsForm(array $form, FormStateInterface $form_state)
Generates a filter's settings form.
string
prepare(string $text, string $langcode)
Prepares the text for processing.
Filters should not use the prepare method for anything other than escaping, because that would short-circuit the control the user has over the order in which filters are applied.
array|false
getHTMLRestrictions()
Returns HTML allowed by this filter's configuration.
May be implemented by filters of the FilterInterface::TYPE_HTML_RESTRICTOR type, this won't be used for filters of other types; they should just return FALSE.
This callback function is only necessary for filters that strip away HTML tags (and possibly attributes) and allows other modules to gain insight in a generic manner into which HTML tags and attributes are allowed by a format.
string|null
tips(bool $long = FALSE)
Generates a filter's tip.
A filter's tips should be informative and to the point. Short tips are preferably one-liners.
static ContainerFactoryPluginInterface
create(ContainerInterface $container, array $configuration, string $plugin_id, mixed $plugin_definition)
Creates an instance of the plugin.
static
validateOptions(array $element, FormStateInterface $form_state)
Form element validation handler.
protected array
renderMedia(MediaInterface $media, string $view_mode, string $langcode)
Builds the render array for the given media entity in the given langcode.
protected array
renderMissingMediaIndicator()
Builds the render array for the indicator when media cannot be loaded.
FilterProcessResult
process(string $text, string $langcode)
Performs the filter processing.
protected
renderIntoDomNode(array $build, DOMNode $node, FilterProcessResult $result)
Renders the given render array into the given DOM node.
static protected
replaceNodeContent(DOMNode $node, string $content)
Replaces the contents of a DOMNode.
static array
disableContextualLinks(array $build)
Disables Contextual Links for the embedded media by removing its property.
protected
applyPerEmbedMediaOverrides(DOMElement $node, MediaInterface $media)
Applies attribute-based per-media embed overrides of media information.
Currently, this only supports overriding an image media source's alt and
title. Support for more overrides may be added in the future.
protected string|null
getMediaImageSourceField(MediaInterface $media)
Get image field from source config.
static string[]
trustedCallbacks()
Lists the trusted callbacks provided by the implementing class.
Trusted callbacks are public methods on the implementing class and can be invoked via \Drupal\Core\Security\DoTrustedCallbackTrait::doTrustedCallback().