class SchemaItemListElementBase in Schema.org Metatag 8
All Schema.org itemListElement tags should extend this class.
Hierarchy
- class \Drupal\Component\Plugin\PluginBase implements DerivativeInspectionInterface, PluginInspectionInterface
- class \Drupal\metatag\Plugin\metatag\Tag\MetaNameBase uses StringTranslationTrait
- class \Drupal\schema_metatag\Plugin\metatag\Tag\SchemaNameBase implements ContainerFactoryPluginInterface, SchemaMetatagTestTagInterface
- class \Drupal\schema_metatag\Plugin\metatag\Tag\SchemaItemListElementBase
- class \Drupal\schema_metatag\Plugin\metatag\Tag\SchemaNameBase implements ContainerFactoryPluginInterface, SchemaMetatagTestTagInterface
- class \Drupal\metatag\Plugin\metatag\Tag\MetaNameBase uses StringTranslationTrait
Expanded class hierarchy of SchemaItemListElementBase
1 file declares its use of SchemaItemListElementBase
- SchemaMetatagTestItemListElement.php in tests/
modules/ schema_metatag_test/ src/ Plugin/ metatag/ Tag/ SchemaMetatagTestItemListElement.php
File
- src/
Plugin/ metatag/ Tag/ SchemaItemListElementBase.php, line 10
Namespace
Drupal\schema_metatag\Plugin\metatag\TagView source
class SchemaItemListElementBase extends SchemaNameBase {
/**
* {@inheritdoc}
*/
public function form(array $element = []) {
$form = parent::form($element);
$form['#description'] = $this
->t('To create a list, provide a token for a multiple value field, or a comma-separated list of values.');
return $form;
}
/**
* {@inheritdoc}
*/
public static function outputValue($input_value) {
$items = [];
$values = static::getItems($input_value);
if (!empty($values) && is_array($values)) {
foreach ($values as $key => $value) {
if (is_array($value)) {
// Maps to Google all-in-one page view.
if (array_key_exists('@type', $value)) {
$items[] = [
'@type' => 'ListItem',
'position' => $key,
'item' => $value,
];
}
elseif (array_key_exists('url', $value)) {
$items[] = [
'@type' => 'ListItem',
'position' => $key,
'url' => $value['url'],
];
}
elseif (array_key_exists('name', $value) && array_key_exists('item', $value)) {
$items[] = [
'@type' => 'ListItem',
'position' => $key,
'name' => $value['name'],
'item' => $value['item'],
];
}
}
else {
$items[] = $value;
}
}
}
return $items;
}
/**
* Process the input value into an array of items.
*
* Each type of ItemList can extend this to process the input value into a
* list of items. The default behavior will be a simple array from a
* comma-separated list.
*/
public static function getItems($input_value) {
if (!is_array($input_value)) {
$input_value = SchemaMetatagManager::explode($input_value);
}
return $input_value;
}
/**
* {@inheritdoc}
*/
public static function testValue() {
return static::testDefaultValue(3, ',');
}
}
Members
Name | Modifiers | Type | Description | Overrides |
---|---|---|---|---|
MetaNameBase:: |
protected | property | True if the URL value(s) must be absolute. | |
MetaNameBase:: |
protected | property | A longer explanation of what the field is for. | |
MetaNameBase:: |
protected | property | The category this meta tag fits in. | |
MetaNameBase:: |
protected | property | Machine name of the meta tag plugin. | |
MetaNameBase:: |
protected | property | The title of the plugin. | |
MetaNameBase:: |
protected | property | True if the tag should use a text area. | |
MetaNameBase:: |
protected | property | True if more than one is allowed. | |
MetaNameBase:: |
protected | property | Official metatag name. | 1 |
MetaNameBase:: |
protected | property | The attribute this tag uses for the name. | 3 |
MetaNameBase:: |
protected | property | Retrieves the currently active request object. | |
MetaNameBase:: |
protected | property | True if URL must use HTTPS. | |
MetaNameBase:: |
protected | property | Type of the value being stored. | |
MetaNameBase:: |
protected | property | The value of the metatag in this instance. | |
MetaNameBase:: |
public | function | The meta tag's description. | |
MetaNameBase:: |
public | function | The meta tag group this meta tag belongs to. | |
MetaNameBase:: |
public | function | Obtain the meta tag's internal ID. | |
MetaNameBase:: |
public | function | Whether or not this meta tag is active. | |
MetaNameBase:: |
public | function | Whether or not this meta tag should use a text area. | |
MetaNameBase:: |
public | function | This meta tag's label. | |
MetaNameBase:: |
public | function | Whether or not this meta tag supports multiple values. | |
MetaNameBase:: |
public | function | The meta tag's machine name. | 1 |
MetaNameBase:: |
protected | function | Extract any image URLs that might be found in a meta tag. | |
MetaNameBase:: |
public | function | Whether or not this meta tag must output required absolute URLs. | |
MetaNameBase:: |
public | function | Whether or not this meta tag must output secure (HTTPS) URLs. | |
MetaNameBase:: |
private | function | Make the string presentable. | |
MetaNameBase:: |
public | function | Obtain this meta tag's type. | |
MetaNameBase:: |
public static | function | Validates the metatag data. | |
MetaNameBase:: |
public | function | This meta tag's form field's weight. | |
MetaNameBase:: |
public | function |
Constructs a \Drupal\Component\Plugin\PluginBase object. Overrides PluginBase:: |
|
PluginBase:: |
protected | property | Configuration information passed into the plugin. | 1 |
PluginBase:: |
protected | property | The plugin implementation definition. | 1 |
PluginBase:: |
protected | property | The plugin_id. | |
PluginBase:: |
constant | A string which is used to separate base plugin IDs from the derivative ID. | ||
PluginBase:: |
public | function |
Gets the base_plugin_id of the plugin instance. Overrides DerivativeInspectionInterface:: |
|
PluginBase:: |
public | function |
Gets the derivative_id of the plugin instance. Overrides DerivativeInspectionInterface:: |
|
PluginBase:: |
public | function |
Gets the definition of the plugin implementation. Overrides PluginInspectionInterface:: |
3 |
PluginBase:: |
public | function |
Gets the plugin_id of the plugin instance. Overrides PluginInspectionInterface:: |
|
PluginBase:: |
public | function | Determines if the plugin is configurable. | |
SchemaItemListElementBase:: |
public | function |
Generate a form element for this meta tag. Overrides MetaNameBase:: |
2 |
SchemaItemListElementBase:: |
public static | function | Process the input value into an array of items. | 2 |
SchemaItemListElementBase:: |
public static | function |
Transform input value to its display output. Overrides SchemaNameBase:: |
1 |
SchemaItemListElementBase:: |
public static | function |
Provide a test input value for the property that will validate. Overrides SchemaNameBase:: |
2 |
SchemaNameBase:: |
protected | property | The schemaMetatagManager service. | |
SchemaNameBase:: |
public static | function |
Creates an instance of the plugin. Overrides ContainerFactoryPluginInterface:: |
|
SchemaNameBase:: |
protected | function | Nested elements that cannot be exploded. | |
SchemaNameBase:: |
public | function |
Generate the HTML tag output for a meta tag. Overrides MetaNameBase:: |
1 |
SchemaNameBase:: |
protected | function | Parse the image url out of image markup. | |
SchemaNameBase:: |
public static | function | ||
SchemaNameBase:: |
public static | function |
Provide a test output value for the input value. Overrides SchemaMetatagTestTagInterface:: |
17 |
SchemaNameBase:: |
protected | function | ||
SchemaNameBase:: |
public static | function |
Explode a test value. Overrides SchemaMetatagTestTagInterface:: |
|
SchemaNameBase:: |
protected | function | Return the SchemaMetatagManager. | |
SchemaNameBase:: |
public | function | Sets schemaMetatagManager service. | |
SchemaNameBase:: |
public | function |
Metatag expects a string value, so serialize any array of values. Overrides MetaNameBase:: |
|
SchemaNameBase:: |
public static | function |
Provide a random test value. Overrides SchemaMetatagTestTagInterface:: |
|
SchemaNameBase:: |
public | function |
The serialized value for the metatag. Overrides MetaNameBase:: |
|
SchemaNameBase:: |
protected | function | The #states base visibility selector for this element. | |
StringTranslationTrait:: |
protected | property | The string translation service. | 1 |
StringTranslationTrait:: |
protected | function | Formats a string containing a count of items. | |
StringTranslationTrait:: |
protected | function | Returns the number of plurals supported by a given language. | |
StringTranslationTrait:: |
protected | function | Gets the string translation service. | |
StringTranslationTrait:: |
public | function | Sets the string translation service to use. | 2 |
StringTranslationTrait:: |
protected | function | Translates a string to the current language or to a given language. |