You are here

class Offer in Schema.org Metatag 8.2

Provides a plugin for the 'Offer' Schema.org property type.

Plugin annotation


@SchemaPropertyType(
  id = "offer",
  label = @Translation("Offer"),
  tree_parent = {
    "Offer",
  },
  tree_depth = -1,
  property_type = "Offer",
  sub_properties = {
    "@type" = {
      "id" = "type",
      "label" = @Translation("@type"),
      "description" = "",
    },
    "@id" = {
      "id" = "text",
      "label" = @Translation("@id"),
      "description" = @Translation("Globally unique ID of the item in the form of a URL. It does not have to be a working link."),
    },
    "price" = {
      "id" = "number",
      "label" = @Translation("price"),
      "description" = @Translation("REQUIRED BY GOOGLE for Offer. The numeric price of the offer. Do not include dollar sign."),
    },
    "offerCount" = {
      "id" = "number",
      "label" = @Translation("offerCount"),
      "description" = @Translation("RECOMMEND BY GOOGLE for AggregateOffer. The number of offers."),
    },
    "lowPrice" = {
      "id" = "number",
      "label" = @Translation("lowPrice"),
      "description" = @Translation("REQUIRED BY GOOGLE for AggregateOffer. The lowest price. Do not include dollar sign."),
    },
    "highPrice" = {
      "id" = "number",
      "label" = @Translation("highPrice"),
      "description" = @Translation("REQUIRED BY GOOGLE for AggregateOffer. The highest price. Do not include dollar sign."),
    },
    "priceCurrency" = {
      "id" = "number",
      "label" = @Translation("priceCurrency"),
      "description" = @Translation("REQUIRED BY GOOGLE. The three-letter currency code (i.e. USD) in which the price is displayed."),
    },
    "url" = {
      "id" = "url",
      "label" = @Translation("url"),
      "description" = @Translation("The URL where the offer can be acquired."),
    },
    "itemCondition" = {
      "id" = "text",
      "label" = @Translation("itemCondition"),
      "description" = @Translation("RECOMMENDED BY GOOGLE for Product Offer. The condition of this item. Valid options are https://schema.org/DamagedCondition, https://schema.org/NewCondition, https://schema.org/RefurbishedCondition, https://schema.org/UsedCondition."),
    },
    "availability" = {
      "id" = "text",
      "label" = @Translation("availability"),
      "description" = @Translation("REQUIRED BY GOOGLE for Product Offer. The availability of this item. Valid options are https://schema.org/Discontinued, https://schema.org/InStock, https://schema.org/InStoreOnly, https://schema.org/LimitedAvailability, https://schema.org/OnlineOnly, https://schema.org/OutOfStock, https://schema.org/PreOrder, https://schema.org/PreSale, https://schema.org/SoldOut."),
    },
    "availabilityStarts" = {
      "id" = "date",
      "label" = @Translation("availabilityStarts"),
      "description" = @Translation("The end of the availability of the product or service included in the offer."),
    },
    "availabilityEnds" = {
      "id" = "date",
      "label" = @Translation("availabilityEnds"),
      "description" = @Translation("Date after which the item is no longer available."),
    },
    "validFrom" = {
      "id" = "date",
      "label" = @Translation("validFrom"),
      "description" = @Translation("The date when the item becomes valid."),
    },
    "priceValidUntil" = {
      "id" = "date",
      "label" = @Translation("priceValidUntil"),
      "description" = @Translation("The date after which the price will no longer be available."),
    },
    "category" = {
      "id" = "text",
      "label" = @Translation("category"),
      "description" = @Translation("Values like: 'rental', 'purchase', 'subscription', 'externalSubscription', 'free'."),
    },
    "eligibleRegion" = {
      "id" = "country",
      "label" = @Translation("eligibleRegion"),
      "description" = @Translation("The region where the offer is valid."),
      "tree_parent" = {
        "Country",
      },
      "tree_depth" = 0,
    },
    "ineligibleRegion" = {
      "id" = "country",
      "label" = @Translation("ineligibleRegion"),
      "description" = @Translation("The region where the offer is not valid."),
      "tree_parent" = {
        "Country",
      },
      "tree_depth" = 0,
    },
  },
)

Hierarchy

Expanded class hierarchy of Offer

File

src/Plugin/schema_metatag/PropertyType/Offer.php, line 115

Namespace

Drupal\schema_metatag\Plugin\schema_metatag\PropertyType
View source
class Offer extends PropertyTypeBase {

}

Members

Namesort descending Modifiers Type Description Overrides
PluginBase::$configuration protected property Configuration information passed into the plugin. 1
PluginBase::$pluginDefinition protected property The plugin implementation definition. 1
PluginBase::$pluginId protected property The plugin_id.
PluginBase::DERIVATIVE_SEPARATOR constant A string which is used to separate base plugin IDs from the derivative ID.
PluginBase::getBaseId public function Gets the base_plugin_id of the plugin instance. Overrides DerivativeInspectionInterface::getBaseId
PluginBase::getDerivativeId public function Gets the derivative_id of the plugin instance. Overrides DerivativeInspectionInterface::getDerivativeId
PluginBase::getPluginDefinition public function Gets the definition of the plugin implementation. Overrides PluginInspectionInterface::getPluginDefinition 3
PluginBase::getPluginId public function Gets the plugin_id of the plugin instance. Overrides PluginInspectionInterface::getPluginId
PluginBase::isConfigurable public function Determines if the plugin is configurable.
PluginBase::__construct public function Constructs a \Drupal\Component\Plugin\PluginBase object. 92
PropertyTypeBase::$propertyTypeManager protected property The propertyTypeManager service.
PropertyTypeBase::$schemaMetatagClient protected property The SchemaMetatagClient service.
PropertyTypeBase::$schemaMetatagManager protected property The schemaMetatagManager service.
PropertyTypeBase::create public static function Creates an instance of the plugin. Overrides ContainerFactoryPluginInterface::create
PropertyTypeBase::form public function Create a complete form element for this property type. Overrides PropertyTypeInterface::form 1
PropertyTypeBase::formElement public function A property form element. Overrides PropertyTypeInterface::formElement 5
PropertyTypeBase::getChildPropertyType public function Get an instance of a child property type. Overrides PropertyTypeInterface::getChildPropertyType
PropertyTypeBase::getOptionList public function Create an option list for a given tree section. Overrides PropertyTypeInterface::getOptionList
PropertyTypeBase::getPropertyType public function The property type. Overrides PropertyTypeInterface::getPropertyType
PropertyTypeBase::getSubProperties public function The sub-properties. Overrides PropertyTypeInterface::getSubProperties
PropertyTypeBase::getTree public function Get some or all of the object tree as options for @type. Overrides PropertyTypeInterface::getTree
PropertyTypeBase::getTreeDepth public function The depth of the class tree to use for @type options. Overrides PropertyTypeInterface::getTreeDepth
PropertyTypeBase::getTreeParent public function The classes to use for the @type options of this property. Overrides PropertyTypeInterface::getTreeParent
PropertyTypeBase::getVisibility public function Construct the visibility selector for a set of values. Overrides PropertyTypeInterface::getVisibility
PropertyTypeBase::outputValue public function Transform input value to its display output. Overrides PropertyTypeInterface::outputValue 2
PropertyTypeBase::pivotForm public function Pivot form element. Overrides PropertyTypeInterface::pivotForm
PropertyTypeBase::processedTestValue public function Provide a test output value for the input value. Overrides SchemaMetatagTestTagInterface::processedTestValue
PropertyTypeBase::processTestExplodeValue public function Explode a test value. Overrides SchemaMetatagTestTagInterface::processTestExplodeValue
PropertyTypeBase::propertyInfo public function Get all the properties of a property type. Overrides PropertyTypeInterface::propertyInfo
PropertyTypeBase::schemaMetatagClient public function The Schema Metatag Client service. Overrides PropertyTypeInterface::schemaMetatagClient
PropertyTypeBase::schemaMetatagManager public function The Schema Metatag Manager service. Overrides PropertyTypeInterface::schemaMetatagManager
PropertyTypeBase::setPropertyTypeManager public function Sets PropertyTypeManager service.
PropertyTypeBase::setSchemaMetatagClient public function Sets SchemaMetatagClient service.
PropertyTypeBase::setSchemaMetatagManager public function Sets schemaMetatagManager service.
PropertyTypeBase::testDefaultValue public function Provide a random test value. Overrides SchemaMetatagTestTagInterface::testDefaultValue
PropertyTypeBase::testValue public function Provide a test input value for the property that will validate. Overrides SchemaMetatagTestTagInterface::testValue 3
PropertyTypeBase::validateProperty public static function Validates the property form when submitted. Overrides PropertyTypeInterface::validateProperty
StringTranslationTrait::$stringTranslation protected property The string translation service. 1
StringTranslationTrait::formatPlural protected function Formats a string containing a count of items.
StringTranslationTrait::getNumberOfPlurals protected function Returns the number of plurals supported by a given language.
StringTranslationTrait::getStringTranslation protected function Gets the string translation service.
StringTranslationTrait::setStringTranslation public function Sets the string translation service to use. 2
StringTranslationTrait::t protected function Translates a string to the current language or to a given language.