PluginProbe
QuadMenu – Mega Menu / 1.9.6
QuadMenu – Mega Menu v1.9.6
3.3.7 3.3.6 trunk 1.8.4 1.8.5 1.8.7 1.8.8 1.8.9 1.9.0 1.9.2 1.9.3 1.9.4 1.9.5 1.9.6 1.9.7 1.9.8 1.9.9 2.0.0 2.0.1 2.0.2 2.0.3 2.0.4 2.0.5 2.0.6 2.0.7 All 87 releases
quadmenu / includes / locations.php

locations.php in QuadMenu – Mega Menu 1.9.6, at includes/locations.php

74 lines 1.5 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 <?php
2
3 if (!defined('ABSPATH')) {
4 die('-1');
5 }
6
7 class Quadmenu_Locations {
8
9 public function __construct() {
10
11 $this->locations();
12
13 $this->dev();
14
15 add_action('init', array($this, 'active'), -10);
16
17 add_action('admin_init', array($this, 'save'), 999);
18 }
19
20 function dev() {
21
22 register_nav_menus(array(
23 'quadmenu_dev' => 'QuadMenu Dev',
24 ));
25
26 unset($GLOBALS['quadmenu_locations']['quadmenu_dev']);
27 }
28
29 function locations() {
30
31 global $quadmenu_locations;
32
33 $quadmenu_locations = get_option(QUADMENU_LOCATIONS, array());
34 }
35
36 function active() {
37
38 global $quadmenu, $quadmenu_locations, $quadmenu_active_locations;
39
40 $quadmenu_active_locations = array('quadmenu_dev' => true);
41
42 if (!empty($quadmenu) && is_array($quadmenu_locations) && count($quadmenu_locations)) {
43
44 foreach ($quadmenu_locations as $id => $location) {
45 if (!empty($quadmenu[$id . '_integration']) && !empty($quadmenu[$id . '_theme'])) {
46 $quadmenu_active_locations[$id] = $quadmenu[$id . '_theme'];
47 }
48 }
49 }
50 }
51
52 public function save() {
53
54 global $_wp_registered_nav_menus, $quadmenu, $quadmenu_locations;
55
56 if (!empty($quadmenu) && is_array($_wp_registered_nav_menus) && count($_wp_registered_nav_menus)) {
57
58 $quadmenu_locations = array();
59
60 foreach ($_wp_registered_nav_menus as $location => $name) {
61
62 $quadmenu_locations[$location] = array(
63 'name' => $name
64 );
65 }
66
67 update_option(QUADMENU_LOCATIONS, $quadmenu_locations);
68 }
69 }
70
71 }
72
73 new Quadmenu_Locations();
74