Meta
Overview
The Meta module ties together field registration, meta translation, validation, and classic meta box registration. It is the bridge between fluent field builders such as CMB2 fields and the storage/retrieval layer used by object traits.
Types in this module
Lipe\Lib\Meta\Box(interface)Lipe\Lib\Meta\DataType(enum)Lipe\Lib\Meta\MetaType(enum)Lipe\Lib\Meta\Meta_BoxLipe\Lib\Meta\Mutator_TraitLipe\Lib\Meta\Register_MetaLipe\Lib\Meta\RepoLipe\Lib\Meta\Translate(trait)Lipe\Lib\Meta\Validation
Box
Contract for classic WordPress meta boxes.
Methods
public function get_title(): stringpublic function get_id(): stringpublic function get_priority(): stringpublic function get_context(): stringpublic function get_post_types(): arraypublic function is_classic_editor_fallback(): boolpublic function save(\WP_Post $post): voidpublic function render(\WP_Post $post): void
Meta_Box
Registers a classic meta box with WordPress and handles nonce rendering and saves.
Key public methods
public function __construct(protected Box $box,)public function render_nonce(\WP_Post $post): voidpublic function save(int $post_id, \WP_Post $post): voidpublic function register(\WP_Post $post): void
Register_Meta
Fluent wrapper around register_meta(), register_post_meta(), and register_term_meta().
Key public methods
public function show_in_rest(?string $name = null, ?Resource_Schema $schema = null, ?callable $prepare_callback = null): staticpublic function __construct(array $existing)public function merge(ArgsRules $overrides): voidpublic function get_args(): array
Repo
Central repository used to register fields and read/write values according to field data type.
Key public methods
public function register_field(Field $field): Registeredpublic function validate_fields(): voidpublic function pre_update_field(string $key): voidpublic function pre_get_field(string $key): voidpublic function get_value(int|string $object_id, string $field_id, MetaType $meta_type = MetaType::POST): mixedpublic function update_value(int|string $object_id, string $field_id, mixed $value, MetaType $meta_type = MetaType::POST): voidpublic function delete_value(int|string $object_id, string $field_id, MetaType $meta_type): void
Example
<?php
use Lipe\Lib\Meta\MetaType;
use Lipe\Lib\Meta\Repo;
$value = Repo::in()->get_value(42, 'isbn', MetaType::POST);
Registered
Readonly value object returned by Repo::register_field() representing a CMB2 field after it has been registered. Provides typed accessors for the field’s configuration without polluting the Field builder with read-only helpers.
Key public methods
public static function factory(Field $variation): staticpublic function are_revisions_enabled(): boolpublic function get_box(): \Lipe\Lib\CMB2\Boxpublic function get_cmb2_field(int|string $object_id = 0): ?\CMB2_Fieldpublic function get_config(): arraypublic function get_data_type(): DataTypepublic function get_default(null|int|string $object_id = null): mixedpublic function get_description(): ?stringpublic function get_escape_cb(): ?callablepublic function get_group(): ?\Lipe\Lib\CMB2\Grouppublic function get_id(): stringpublic function get_meta_sanitizer(): ?callablepublic function get_position(): intpublic function get_rest_short_name(): stringpublic function get_sanitization_cb(): ?callablepublic function get_show_in_rest(): string|boolpublic function get_text(string $key): ?stringpublic function get_type(): \Lipe\Lib\CMB2\Field\Typepublic function has_rest_short_name(): boolpublic function is_allowed_to_register_meta(): boolpublic function is_public_rest_data(): boolpublic function is_repeatable(): boolpublic function is_using_array_data(): boolpublic function is_using_object_data(): bool
Mutator_Trait
DataTypeandMetaTypeenumerate supported storage shapes and WordPress meta object types.Validationexposespublic function warn_for_repeatable_group_sub_fields(string $field_id, ?Registered $registered): voidandpublic function warn_for_conflicting_taxonomies(array $registered): void.Translatecontains the conversion logic that maps stored values back to the correct runtime shape.