/** * Replaces all site names with the individual site's alternative language title, if not empty. * * @since 3.0.0 * @wp-hook admin_bar_menu * * @param WP_Admin_Bar $wp_admin_bar The WordPress admin bar object. * * @return WP_Admin_Bar The manipulated WordPress admin bar object. */ public function replace_site_nodes(WP_Admin_Bar $wp_admin_bar) { if (empty($wp_admin_bar->user->blogs)) { return $wp_admin_bar; } foreach ((array) $wp_admin_bar->user->blogs as $site) { if (empty($site->userblog_id)) { continue; } $title = $this->titles->get($site->userblog_id); if (!$title) { continue; } $wp_admin_bar->user->blogs[$site->userblog_id]->blogname = $title; } return $wp_admin_bar; }