функция
since 1.0.0
maybe_add_column()
Проверено на WordPress 6.9, обновлено Источник: WordPress Developer Resources.
Сигнатура
maybe_add_column( string $table_name, string $column_name, string $create_ddl ): bool
Описание
Добавляет столбец в таблицу базы данных, если он ещё не существует.
Параметры
$table_name
string
обязательный
Имя таблицы базы данных.
$column_name
string
обязательный
Имя столбца таблицы.
$create_ddl
string
обязательный
SQL-запрос для добавления столбца.
Возвращаемое значение
bool
Исходный код
wp-admin/install-helper.php:91
function maybe_add_column( $table_name, $column_name, $create_ddl ) {
global $wpdb;
// phpcs:ignore WordPress.DB.PreparedSQL.InterpolatedNotPrepared -- Cannot be prepared. Fetches columns for table names.
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.
// phpcs:ignore WordPress.DB.PreparedSQL.NotPrepared -- No applicable variables for this query.
$wpdb->query( $create_ddl );
// We cannot directly tell whether this succeeded!
// phpcs:ignore WordPress.DB.PreparedSQL.InterpolatedNotPrepared -- Cannot be prepared. Fetches columns for table names.
foreach ( $wpdb->get_col( "DESC $table_name", 0 ) as $column ) {
if ( $column === $column_name ) {
return true;
}
}
return false;
}
История изменений
| Версия | Описание |
|---|---|
| 1.0.0 | Introduced. |

