PathSetTranslated
class PathSetTranslated extends ProcessPluginBase (View source)
A process plugin to update the path of a translated node.
Available configuration keys:
- source: An array of two values, the first being the original path, and the
second being an array of the format [nid, langcode] if a translated node
exists (likely from a migration lookup). Paths not of the format
'/node/
' will pass through unchanged, as will any inputs with invalid or missing translated nodes.
This plugin will return the correct path for the translated node if the above conditions are met, and will return the original path otherwise.
Example: node_translation:
plugin: explode
source: source
delimiter: /
-
If the source path has no slashes return a dummy default value.
plugin: extract
default: 'INVALID_NID'
index:
- 1
- plugin: migration_lookup migration: d7_node_translation _path: plugin: concat source:
- constants/slash
- source path: plugin: path_set_translated source:
- '@_path'
- '@node_translation'
In the example above, if the node_translation lookup succeeds and the
original path is of the format '/node/
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 |
Methods
Constructs a \Drupal\Component\Plugin\PluginBase 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.
Performs the associated process.
Indicates whether the returned value requires multiple handling.
Details
__construct(array $configuration, string $plugin_id, mixed $plugin_definition)
Constructs a \Drupal\Component\Plugin\PluginBase 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.
string|array
transform(mixed $value, MigrateExecutableInterface $migrate_executable, Row $row, string $destination_property)
Performs the associated process.
bool
multiple()
Indicates whether the returned value requires multiple handling.