This field type represents a relation to a content item.

NameInternal nameExpected input
Relationezobjectrelationmixed

Table of contents:

Description

This FieldType makes possible to store and retrieve the value of relation to a content item.

Input expectations

TypeExample
string
"150"
integer 150

Value object

Properties

The Value class of this field type contains the following properties:

PropertyTypeDescription
$destinationContentIdstring|int|nullThis property will be used to store the value provided, which will represent the related content.
$relation->destinationContentId = $contentInfo->id;

Constructor

The Relation\Value constructor will initialize a new Value object with the value provided. It expects a mixed value

// Instantiates a Relation Value object
$relationValue = new Relation\Value( $contentInfo->id );

Validation

This FieldType validates the provided relation exists, but before it does that it will check that the value is either string or int.

Settings

The field definition of this FieldType can be configured with two or three options:

NameTypeDefault valueDescription
selectionMethodintself::SELECTION_BROWSEThis setting defines the selection method. It expects an integer (0/1). 0 stands for self::SELECTION_BROWSE, 1 stands for self::SELECTION_DROPDOWN.
selectionRootstringnullThis setting defines the selection root.


selectionContentTypes

array[]An array of ContentType ids that are allowed for related Content
use eZ\Publish\Core\FieldType\Relation\Type;

$settings = array(
	"selectionMethod" => 1,
	"selectionRoot" => null
);

Note: These settings are meant for future use in user interface when allowing users to select relations.