PluginProbe
Site Reviews / trunk
Site Reviews vtrunk
8.3.1 8.3.0 8.2.2 8.2.1 8.2.0 8.1.0 8.0.13 8.0.12 8.0.11 trunk 1.2.2 2.17.1 3.5.4 4.7.0 5.25.1 6.11.8 7.0.10 7.0.11 7.0.12 7.0.13 7.0.14 7.0.15 7.0.16 7.0.17 7.0.18 All 54 releases
site-reviews / plugin / Controllers / NetworkController.php

NetworkController.php in Site Reviews trunk, at plugin/Controllers/NetworkController.php

37 lines 1.2 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 <?php
2
3 namespace GeminiLabs\SiteReviews\Controllers;
4
5 class NetworkController extends AbstractController
6 {
7 /**
8 * @action admin_bar_menu:30
9 */
10 public function extendAdminBar(\WP_Admin_Bar $wp_admin_bar): void
11 {
12 if (!is_user_logged_in() || !is_multisite()) {
13 return;
14 }
15 if (count($wp_admin_bar->user->blogs) < 1 && !current_user_can('manage_network')) {
16 return;
17 }
18 foreach ((array) $wp_admin_bar->user->blogs as $blog) {
19 switch_to_blog($blog->userblog_id);
20 if (glsr()->can('edit_posts')) {
21 $menuId = "blog-{$blog->userblog_id}";
22 $wp_admin_bar->add_node([
23 'href' => glsr_admin_url(),
24 'id' => "{$menuId}-site-reviews",
25 'parent' => $menuId,
26 'title' => _x('Manage Reviews', 'admin-text', 'site-reviews'),
27 ]);
28 if ($visitSiteNode = $wp_admin_bar->get_node("{$menuId}-v")) {
29 $wp_admin_bar->remove_node("{$menuId}-v");
30 $wp_admin_bar->add_node((array) $visitSiteNode);
31 }
32 }
33 restore_current_blog();
34 }
35 }
36 }
37