Cybo Advanced Field EngineCyboweb Technologies · Documentation · v1.0.2

cafe()

Purpose

Returns the CAFE plugin object, giving advanced developers access to CAFE's services.

Syntax

cafe(): Cybo\AdvancedFieldEngine\Core\Plugin

Parameters

None.

Return value

The Cybo\AdvancedFieldEngine\Core\Plugin instance.

Example

Save with detailed errors:

$result = cafe()->fields()->update( 'hero_title', $title, $post_id );

if ( is_wp_error( $result ) ) {
	echo esc_html( $result->get_error_message() );
}

Create schema in code:

$group = cafe()->schema_manager()->create_group( [ 'key' => 'hero', 'title' => 'Hero' ] );

Notes

Available services:

Method Returns Use it to
fields() Cybo\AdvancedFieldEngine\API\FieldService Read/write values; update()/delete() return WP_Error on failure
schema_manager() Cybo\AdvancedFieldEngine\Fields\SchemaManager Create, update and delete field groups and fields
schema() Cybo\AdvancedFieldEngine\Fields\SchemaRegistry Read the compiled (cached) schema
field_types() Cybo\AdvancedFieldEngine\Fields\FieldTypeRegistry List field types
object_types() Cybo\AdvancedFieldEngine\Values\ObjectTypeRegistry List object types and their permission checks
capabilities() Cybo\AdvancedFieldEngine\Core\Capabilities Server-side permission checks for your own entry points
settings() Cybo\AdvancedFieldEngine\Core\Settings Read/update CAFE settings
migrator() Cybo\AdvancedFieldEngine\Database\Migrator Inspect or run database migrations
flush_runtime_cache() - Clear request caches in long-running scripts

cafe() throws a LogicException if called before CAFE has loaded: use it inside hooks such as cafe_loaded, cafe_init, init or later.