BP_Component::register_meta_tables( array $tables = array() )
Register component metadata tables.
Description
Metadata tables are registered in the $wpdb global, for compatibility with the WordPress metadata API.
Parameters
- $tables
-
(Optional) Table names to register.
Default value: array()
Source
File: bp-core/classes/class-bp-component.php
public function register_meta_tables( $tables = array() ) {
global $wpdb;
/**
* Filters the global meta_tables for the component.
*
* This is a dynamic hook that is based on the component string ID.
* It allows for component-specific filtering of table names. To filter
* *all* tables, use the 'bp_core_get_table_prefix' filter instead.
*
* @since BuddyPress 2.0.0
*/
$tables = apply_filters( 'bp_' . $this->id . '_meta_tables', $tables );
/**
* Add the name of each metadata table to WPDB to allow BuddyPress
* components to play nicely with the WordPress metadata API.
*/
if ( !empty( $tables ) && is_array( $tables ) ) {
foreach( $tables as $meta_prefix => $table_name ) {
$wpdb->{$meta_prefix . 'meta'} = $table_name;
}
// Keep a record of the metadata tables in the component.
$this->meta_tables = $tables;
}
/**
* Fires at the end of the register_meta_tables method inside BP_Component.
*
* This is a dynamic hook that is based on the component string ID.
*
* @since BuddyPress 2.0.0
*/
do_action( 'bp_' . $this->id . '_register_meta_tables' );
}
Changelog
| Version | Description |
|---|---|
| BuddyPress 2.0.0 | Introduced. |
Questions?
We're always happy to help with code or other questions you might have! Search our developer docs, contact support, or connect with our sales team.