Для целей тестирования вы можете использовать систему журналов (php_error.log):
error_log('Plugin activated', 0);
// Check for DB table existance
if(!$this->hasDBTable()){
error_log('Database not present', 0);
if($this->createCELabelsDBTables()){
error_log('Database was created.', 0);
} else {
error_log('Error creating the CE Labels Plugin db tables!', 0);
}
} else {
error_log('Database OK', 0);
}
Чтобы вывести ошибку пользователю без ошибки «Заголовки уже отправлены», вы можете использовать функцию php trigger_error:
trigger_error('PLUGIN OK',E_USER_ERROR);
В Wordpress всегда должно быть E_USER_ERROR, иначе сообщение не будет отображаться.
Я знаю, что error_log работает отлично, так как я использую его, но trigger_error отображает необходимую информацию. Попробуйте и убедитесь сами :)