class SchemaAnswerBase in Schema.org Metatag 7
Schema.org Answer items should extend this class.
Hierarchy
- class \DrupalDefaultMetaTag implements DrupalMetaTagInterface
- class \DrupalTextMetaTag
- class \SchemaNameBase implements SchemaMetatagTestTagInterface
- class \SchemaAnswerBase uses SchemaAnswerTrait
- class \SchemaNameBase implements SchemaMetatagTestTagInterface
- class \DrupalTextMetaTag
Expanded class hierarchy of SchemaAnswerBase
1 string reference to 'SchemaAnswerBase'
- schema_metatag_test_metatag_info in tests/
schema_metatag_test.metatag.inc - Implements hook_metatag_info().
File
- src/
SchemaAnswerBase.php, line 6
View source
class SchemaAnswerBase extends SchemaNameBase {
use SchemaAnswerTrait;
/**
* {@inheritdoc}
*/
public function getForm(array $options = []) {
$value = $this
->schemaMetatagManager()
->unserialize($this
->value());
$input_values = [
'title' => $this
->label(),
'description' => $this
->description(),
'value' => $value,
'#required' => isset($options['#required']) ? $options['#required'] : FALSE,
'visibility_selector' => $this
->visibilitySelector(),
];
$form['value'] = $this
->answerForm($input_values);
if (empty($this
->multiple())) {
unset($form['value']['pivot']);
}
// Validation from parent::getForm() got wiped out, so add callback.
$form['value']['#element_validate'][] = 'schema_metatag_element_validate';
return $form;
}
/**
* {@inheritdoc}
*/
public static function testValue() {
$items = [];
$keys = [
'@type',
'text',
'url',
'upvoteCount',
'dateCreated',
'author',
];
foreach ($keys as $key) {
switch ($key) {
case '@type':
$items[$key] = 'Answer';
break;
case 'author':
$items[$key] = SchemaPersonOrgBase::testValue();
break;
default:
$items[$key] = parent::testDefaultValue(1, '');
break;
}
}
return $items;
}
/**
* {@inheritdoc}
*/
public static function processedTestValue($items) {
foreach ($items as $key => $value) {
switch ($key) {
case 'author':
$items[$key] = SchemaPersonOrgBase::processedTestValue($items[$key]);
break;
}
}
return $items;
}
}
Members
Name | Modifiers | Type | Description | Overrides |
---|---|---|---|---|
DrupalDefaultMetaTag:: |
protected | property | The values submitted for this tag. | |
DrupalDefaultMetaTag:: |
protected | property | All of the basic information about this tag. | |
DrupalDefaultMetaTag:: |
protected | property | This item's weight; used for sorting the output. | |
DrupalDefaultMetaTag:: |
protected | function | Make sure a given URL is absolute. | |
DrupalDefaultMetaTag:: |
public | function |
Calculate the weight of this meta tag. Overrides DrupalMetaTagInterface:: |
|
DrupalDefaultMetaTag:: |
protected | function | Identify the maximum length of which strings will be allowed. | |
DrupalDefaultMetaTag:: |
public static | function |
Copied from text.module with the following changes:. Overrides DrupalMetaTagInterface:: |
|
DrupalDefaultMetaTag:: |
protected | function | Remove unwanted formatting from a meta tag. | |
DrupalDefaultMetaTag:: |
protected | function | Shorten a string to a certain length using ::textSummary(). | |
DrupalTextMetaTag:: |
public | function |
Get the string value of this meta tag. Overrides DrupalDefaultMetaTag:: |
1 |
SchemaAnswerBase:: |
public | function |
Build the form for this meta tag. Overrides SchemaNameBase:: |
|
SchemaAnswerBase:: |
public static | function |
Provide a test output value for the input value. Overrides SchemaNameBase:: |
|
SchemaAnswerBase:: |
public static | function |
Provide a test input value for the property that will validate. Overrides SchemaNameBase:: |
|
SchemaAnswerTrait:: |
public | function | The form element. | |
SchemaAnswerTrait:: |
abstract protected | function |
Return the SchemaMetatagManager. Overrides SchemaPersonOrgTrait:: |
1 |
SchemaImageTrait:: |
public | function | The form element. | |
SchemaNameBase:: |
protected | property | The schemaMetatagManager service. | |
SchemaNameBase:: |
public | function | ||
SchemaNameBase:: |
public | function |
Get the HTML tag for this meta tag. Overrides DrupalDefaultMetaTag:: |
1 |
SchemaNameBase:: |
public | function | ||
SchemaNameBase:: |
public | function | ||
SchemaNameBase:: |
public | function | ||
SchemaNameBase:: |
public static | function | Nested elements that cannot be exploded. | |
SchemaNameBase:: |
public static | function |
Transform input value to its display output. Overrides SchemaMetatagTestTagInterface:: |
2 |
SchemaNameBase:: |
public static | function | ||
SchemaNameBase:: |
protected | function | Process an individual item. | |
SchemaNameBase:: |
public static | function |
Explode a test value. Overrides SchemaMetatagTestTagInterface:: |
|
SchemaNameBase:: |
public static | function |
Random absolute url for testing. Overrides SchemaMetatagTestTagInterface:: |
|
SchemaNameBase:: |
public | function | ||
SchemaNameBase:: |
public static | function |
Provide a random test value. Overrides SchemaMetatagTestTagInterface:: |
|
SchemaNameBase:: |
public | function | ||
SchemaNameBase:: |
protected | function | The #states visibility selector for this element. | |
SchemaNameBase:: |
function |
Constructor. Overrides DrupalDefaultMetaTag:: |
1 | |
SchemaPersonOrgTrait:: |
public | function | The form element. |