public function offsetGet($offset)
{
if ('item_meta_array' === $offset) {
$return = array();
foreach ($this->meta_data as $meta) {
$return[$meta->id] = $meta;
}
return $return;
}
$meta_values = wp_list_pluck($this->meta_data, 'value', 'key');
if ('item_meta' === $offset) {
return $meta_values;
} elseif (array_key_exists($offset, $this->data)) {
return $this->data[$offset];
} elseif (array_key_exists('_' . $offset, $meta_values)) {
// Item meta was expanded in previous versions, with prefixes removed. This maintains support.
return $meta_values['_' . $offset];
}
return null;
}