Event_Meta::get_post_meta( int|WP_Post $post )
Returns an event post meta related to Zoom Meetings.
Contents
Parameters
- $post
-
(int|WP_Post) (Required) The event post ID or object.
Return
(array) The Zoom Meeting post meta or an empty array if not found or not an event.
Source
File: src/Tribe/Meetings/Zoom/Event_Meta.php
public static function get_post_meta( $post ) {
$event = tribe_get_event( $post );
if ( ! $event instanceof \WP_Post ) {
return [];
}
$all_meta = get_post_meta( $event->ID );
$prefix = Virtual_Event_Meta::$prefix . 'zoom_';
$flattened_array = Arr::flatten(
array_filter(
$all_meta,
static function ( $meta_key ) use ( $prefix ) {
return 0 === strpos( $meta_key, $prefix );
},
ARRAY_FILTER_USE_KEY
)
);
// Decrypt the encrypted meta fields.
$encrypted_fields = self::$encrypted_fields;
$encryption = tribe( Encryption::class );
foreach ( $flattened_array as $meta_key => $meta_value ) {
$encrypted_field_key = str_replace( $prefix, '', $meta_key );
if ( ! array_key_exists( $encrypted_field_key, $encrypted_fields ) ) {
continue;
}
$flattened_array[ $meta_key ] = $encryption->decrypt( $meta_value, $encrypted_fields[ $encrypted_field_key ] );
}
return $flattened_array;
}
Changelog
| Version | Description |
|---|---|
| 1.4.0 | - Add decryption for encrytped fields. |
| 1.0.0 | Introduced. |