maybe_add_column()
Adds column to a database table, if it doesn't already exist.
No Hooks.
Returns
true|false. True on success or if the column already exists. False on failure.
Usage
maybe_add_column( $table_name, $column_name, $create_ddl );
- $table_name(string) (required)
- Database table name.
- $column_name(string) (required)
- Table column name.
- $create_ddl(string) (required)
- SQL statement to add column.
Notes
- Global. wpdb.
$wpdbWordPress database abstraction object.
Changelog
| Since 1.3.0 | Introduced. |
maybe_add_column() maybe add column code WP 6.9.1
function maybe_add_column( $table_name, $column_name, $create_ddl ) {
global $wpdb;
foreach ( $wpdb->get_col( "DESC $table_name", 0 ) as $column ) {
if ( $column === $column_name ) {
return true;
}
}
// Didn't find it, so try to create it.
$wpdb->query( $create_ddl );
// We cannot directly tell that whether this succeeded!
foreach ( $wpdb->get_col( "DESC $table_name", 0 ) as $column ) {
if ( $column === $column_name ) {
return true;
}
}
return false;
}