The method will check for custom fields if given $criterion implements
CustomFieldInterface. With optional parameters $fieldTypeIdentifier and
$name specific field type and field from its Indexable implementation
can be targeted.
public getFieldTypes ( eZ\Publish\API\Repository\Values\Content\Query\Criterion $criterion, string $fieldDefinitionIdentifier, null | string $fieldTypeIdentifier = null, null | string $name = null ) : array |
||
$criterion | eZ\Publish\API\Repository\Values\Content\Query\Criterion | |
$fieldDefinitionIdentifier | string | |
$fieldTypeIdentifier | null | string | |
$name | null | string | |
return | array |
/** * Get array of search fields. * * @param \eZ\Publish\API\Repository\Values\Content\Query\Criterion $criterion * * @return \eZ\Publish\SPI\Search\FieldType[] Array of field types indexed by name. */ protected function getSearchFields(Criterion $criterion) { return $this->fieldNameResolver->getFieldTypes($criterion, $criterion->target); }
/** * Get array of search fields. * * @param \eZ\Publish\API\Repository\Values\Content\Query\Criterion $criterion * @param string $fieldDefinitionIdentifier * @param string $fieldTypeIdentifier * @param string $name * * @return array */ protected function getSearchFields(Criterion $criterion, $fieldDefinitionIdentifier, $fieldTypeIdentifier = null, $name = null) { return $this->fieldNameResolver->getFieldTypes($criterion, $fieldDefinitionIdentifier, $fieldTypeIdentifier, $name); }