has( $post_id, $meta_key ) ) { return $definitions[ $meta_key ]['default']; } return get_post_meta( $post_id, $meta_key, true ); } public function has( int $post_id, string $meta_key ): bool { return metadata_exists( 'post', $post_id, $meta_key ); } public function update( int $post_id, string $meta_key, mixed $value ): bool { if ( ! isset( MetaFields::definitions()[ $meta_key ] ) ) { return false; } return (bool) update_post_meta( $post_id, $meta_key, $value ); } public function delete( int $post_id, string $meta_key ): bool { return delete_post_meta( $post_id, $meta_key ); } }