Skip to content

IsFieldEmpty Criterion

The IsFieldEmpty Search Criterion searches for content based on whether a specified field is empty or not.

Arguments

  • fieldDefinitionIdentifier - string representing the identifier of the field
  • (optional) value - bool representing whether to search for empty (default true), or non-empty fields (false)

Limitations

The IsFieldEmpty Criterion isn't available in Repository filtering.

The Richtext field type (ibexa_richtext) isn't searchable in the Legacy search engine.

The IsFieldEmpty criterion doesn't work for Taxonomy entry assignment fields. For this use case, use TaxonomyNoEntries instead.

Example

PHP

1
2
3
4
5
use Ibexa\Contracts\Core\Repository\Values\Content\Query;
use Ibexa\Contracts\Core\Repository\Values\Content\Query\Criterion;

$query = new Query();
$query->query = new Criterion\IsFieldEmpty('title');

Use case

You can use the IsFieldEmpty Criterion to search for articles that don't have an image:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
use Ibexa\Contracts\Core\Repository\Values\Content\LocationQuery;
use Ibexa\Contracts\Core\Repository\Values\Content\Query\Criterion;

$query = new LocationQuery();
$query->query = new Criterion\LogicalAnd(
    [
        new Criterion\ContentTypeIdentifier('article'),
        new Criterion\IsFieldEmpty('image'),
    ]
);