Automattic\WooCommerce\Internal\DataStores
CustomMetaDataStore::get_metadata_by_key()
Retrieves metadata by meta key.
Метод класса: CustomMetaDataStore{}
Хуков нет.
Возвращает
\stdClass|true|false
. Metadata object or FALSE if not found.
Использование
$CustomMetaDataStore = new CustomMetaDataStore(); $CustomMetaDataStore->get_metadata_by_key( $object, $meta_key );
- $object(\WC_Abstract_Order) (обязательный) (передается по ссылке — &)
- Object ID.
- $meta_key(строка) (обязательный)
- Meta key.
Код CustomMetaDataStore::get_metadata_by_key() CustomMetaDataStore::get metadata by key WC 9.7.1
public function get_metadata_by_key( &$object, string $meta_key ) { global $wpdb; $db_info = $this->get_db_info(); // phpcs:disable WordPress.DB.PreparedSQL.InterpolatedNotPrepared $meta = $wpdb->get_results( $wpdb->prepare( "SELECT {$db_info['meta_id_field']}, meta_key, meta_value, {$db_info['object_id_field']} FROM {$db_info['table']} WHERE meta_key = %s AND {$db_info['object_id_field']} = %d", $meta_key, $object->get_id(), ) ); // phpcs:enable WordPress.DB.PreparedSQL.InterpolatedNotPrepared if ( empty( $meta ) ) { return false; } foreach ( $meta as $row ) { if ( isset( $row->meta_value ) ) { $row->meta_value = maybe_unserialize( $row->meta_value ); } } return $meta; }