display_site_states
Дозволяє змінити рядок статусу сайту, який відображається в таблиці списку сайтів в адмінці мультисайту.
За промовчанням WordPress містить наступний список статусів:
// для головного сайту мережі $site_states['main'] = __( 'Main' ); // для підсайтів мережі array( 'archived' => array( 'site-archived', __( 'Archived' ) ), 'spam' => array( 'site-spammed', _x( 'Spam', 'site' ) ), 'deleted' => array( 'site-deleted', __( 'Deleted' ) ), 'mature' => array( 'site-mature', __( 'Mature' ) ), );
Цей фільтр дозволяє додати свої статуси або просто інформацію про сайт, який ви хотіли б бачити поруч із назвою сайту в таблиці сайтів в адмінці мультисайту.
Використання
add_filter( 'display_site_states', 'wp_kama_display_site_states_filter', 10, 2); /** * Function for `display_site_states` filter-hook. * * @param string[] $site_states На array of site states. * @param WP_Site $site The current site object. * * @return string[] */ function wp_kama_display_site_states_filter( $site_states, $site ){ // Filter... return $site_states; }
-
$site_states
(масив) -
Масив рядків (статусів сайту).
За замовчуванням: ‘Main’, ‘Archived’, ‘Mature’, ‘Spam’, ‘Deleted’ -
$site
(WP_Site) - Об’єкт поточного сайту
Приклади
#1 Додамо свою інформацію про сайт
Це нестандартне використання хука, тому що теоретично на цьому місці мають виводиться статуси сайту, які потрібно додавати та обробляти окремо.
Ми як приклад додамо туди просто корисну інформацію для адмінів. Допустимо нам часто потрібно знати ID сайту мережі та яка тема у нього використовується.
add_filter( 'display_site_states', 'add_sites_status_string', 10, 2); // Додамо назву тем в інформаційний рядок статусу теми. function add_sites_status_string( $site_states, $site ){ switch_to_blog($site->blog_id); $site_states['them'] = get_stylesheet(); // Назва теми $site_states['id'] = $site->blog_id; // ID сайту restore_current_blog(); return $site_states; }
Отримаємо:
список змін
З версії 5.3.0 | Введено. |
Де викликається хук
display_site_states
wp-admin/includes/class-wp-ms-sites-list-table.php 642
$site_states = apply_filters( 'display_site_states', $site_states, $_site);
Де використовується хук у WordPress
Використання не знайдено.