WP_Metadata_Lazyloader::lazyload_meta_callback( mixed $check, int $object_id, string $meta_key, bool $single, string $meta_type )
Lazy-loads meta for queued objects.
Description
This method is public so that it can be used as a filter callback. As a rule, there is no need to invoke it directly.
Parameters
- $check
-
(Required) The
$check
param passed from the 'get_*_metadata' hook. - $object_id
-
(Required) ID of the object metadata is for.
- $meta_key
-
(Required) Unused.
- $single
-
(Required) Unused.
- $meta_type
-
(Required) Type of object metadata is for. Accepts 'post', 'comment', 'term', 'user', or any other object type with an associated meta table.
Return
(mixed) In order not to short-circuit get_metadata()
. Generally, this is null
, but it could be another value if filtered by a plugin.
Source
File: wp-includes/class-wp-metadata-lazyloader.php
public function lazyload_meta_callback( $check, $object_id, $meta_key, $single, $meta_type ) {
if ( empty( $this->pending_objects[ $meta_type ] ) ) {
return $check;
}
$object_ids = array_keys( $this->pending_objects[ $meta_type ] );
if ( $object_id && ! in_array( $object_id, $object_ids, true ) ) {
$object_ids[] = $object_id;
}
update_meta_cache( $meta_type, $object_ids );
// No need to run again for this set of objects.
$this->reset_queue( $meta_type );
return $check;
}
Changelog
Version | Description |
---|---|
6.3.0 | Introduced. |