Как использовать оператор "TRUNCATE TABLE" в MySQL?
Я пробовал использовать dbDelta и $wpdb->query, но они не работают. У кого-нибудь есть идеи?

Согласно этому сообщению на форуме, оператор TRUNCATE не работает. Я предполагаю, что поскольку это такой разрушительный запрос, он фильтруется классом. Также есть этот пост в Trac, который, если я правильно понимаю, запрещает DDL-операторы.

@goodseller Не уверен, что именно вы пытаетесь сделать, поэтому, возможно, это для вас не важно — но учтите, что DELETE не сбрасывает автоинкрементные колонки. Так что даже если ваша таблица будет пуста, следующий ID элемента продолжит с того места, где остановилось последнее автоинкрементное значение.

@MathSmath Да~ Это правда, действительно так. Но есть ли какой-то способ сделать это?

Я нашёл решение: $wpdb->query("ALTER TABLE tableName AUTO_INCREMENT=0") Спасибо @MathSmath :)

Я знаю, что есть похожие ответы выше, но в них используется таблица wp_post, и если кто-то по ошибке применит этот код, он потеряет все свои записи.
Поэтому делюсь правильным способом очистки таблицы.
global $wpdb;
$table_name = $wpdb->base_prefix.'name_of_table_without_prefix';
$wpdb->query("TRUNCATE TABLE $table_name");
