wpfts_admin_notices_in_serie (Filter)

Фильтр wpfts_admin_notices_in_serie в WP Fast Total Search контролирует отображение уведомлений в административной панели WordPress. Он работает как “предохранитель”, предотвращая отображение менее важных уведомлений, если есть более важные, требующие внимания пользователя.

Когда используется

Этот фильтр вызывается в методе admin_notices() класса WPFTS_Core и используется для определения, нужно ли отображать уведомления, связанные с плагином.

Аргументы

  • $is_all_great (bool): Флаг, указывающий, все ли хорошо с плагином. true, если нет критических ошибок или важных уведомлений, false в противном случае.

Возвращаемое значение

  • $is_all_great (bool): Модифицированный флаг. Если вернуть false, то менее важные уведомления отображаться не будут. Если вернуть true, то менее важные уведомления будут отображены, если они есть.

Логика работы фильтра

Плагин WPFTS отображает уведомления в определенном порядке. Сначала отображаются самые важные уведомления, такие как сообщения об ошибках или необходимости обновления базы данных. Если такие уведомления есть, плагин устанавливает флаг $is_all_great в false. Затем вызывается фильтр wpfts_admin_notices_in_serie. Если обработчик фильтра вернет false, то менее важные уведомления, такие как напоминания о настройке плагина или информация о новых версиях, отображаться не будут. Это позволяет избежать перегрузки пользователя уведомлениями и сосредоточить его внимание на самых важных сообщениях. Другими словами, этот фильтр позволяет подавить стандартные уведомления, если в аддоне необходимо отобразить более важные уведомления.

Пример

/**
 *  Отключаем отображение уведомлений по умолчанию, если есть свои.
 */
 
add_filter('wpfts_admin_notices_in_serie', 'suppress_default_notices');
function suppress_default_notices($is_all_great) {
	//  Проверяем, есть ли свои уведомления для отображения.
	if (get_option('my_plugin_has_notices') == 1) {
		return false; //  Подавляем уведомления по умолчанию.
		//  Отображаем свои уведомления
		echo '<div class="notice notice-warning"><p>'.esc_html__('My plugin notice', 'my-plugin').'</p></div>';
	}
  
	return $is_all_great; //  В остальных случаях, не меняем стандартное поведение.
  }
 

Важные замечания

  • Фильтр wpfts_admin_notices_in_serie вызывается в методе admin_notices() класса WPFTS_Core.
  • Возвращаемое значение должно быть boolean (true или false).

Этот фильтр предоставляет разработчикам дополнительный контроль над отображением уведомлений WPFTS в административной панели WordPress.