PluginProbe
Responsive Menu – Create Mobile-Friendly Menu / 3.0.9
Responsive Menu – Create Mobile-Friendly Menu v3.0.9
4.7.3 3.1.5 3.1.6 3.1.7 3.1.8 3.1.9 4.0.0 4.0.1 4.0.2 4.0.3 4.0.4 4.1.0 4.1.1 4.1.10 4.1.11 4.1.12 4.1.2 4.1.3 4.1.4 4.1.5 4.1.6 4.1.7 4.1.8 4.1.9 4.2.0 All 90 releases
← All changes | responsive-menu.php +72 -200 4.7.33.0.9 View file →
@@ -1,200 +1,72 @@
1 -<?php
2 -
3 -/*
4 -Plugin Name: Responsive Menu
5 -Plugin URI: https://expresstech.io
6 -Description: Highly Customisable Responsive Menu Plugin for WordPress
7 -Version: 4.7.3
8 -Author: ExpressTech
9 -Text Domain: responsive-menu
10 -Author URI: https://responsive.menu
11 -License: GPL2
12 -Tags: responsive, menu, responsive menu, mega menu, max mega menu, max menu
13 -*/
14 -
15 -/**
16 - * Constant as plugin version.
17 - */
18 -if ( ! defined( 'RMP_PLUGIN_VERSION' ) ) {
19 - define( 'RMP_PLUGIN_VERSION', '4.7.3' );
20 -}
21 -
22 -define( 'RESPONSIVE_MENU_URL', plugin_dir_url( __FILE__ ) );
23 -
24 -/**
25 - * Minimum PHP version. The bundled scssphp library uses nullable type
26 - * declarations (`?Type $arg = null`), which are a parse error before PHP 7.1.
27 - * Keep this in sync with `Requires PHP` in readme.txt.
28 - */
29 -if ( ! defined( 'RMP_MINIMUM_PHP_VERSION' ) ) {
30 - define( 'RMP_MINIMUM_PHP_VERSION', '7.1' );
31 -}
32 -
33 -add_action( 'admin_init', 'check_responsive_menu_php_version' );
34 -function check_responsive_menu_php_version() {
35 - if ( version_compare( PHP_VERSION, RMP_MINIMUM_PHP_VERSION, '<' ) ) :
36 - add_action( 'admin_notices', 'responsive_menu_deactivation_text' );
37 - deactivate_plugins( plugin_basename( __FILE__ ) );
38 - endif;
39 -}
40 -
41 -function responsive_menu_deactivation_text() {
42 - echo '<div class="' . esc_attr( 'error' ) . '"><p>' . sprintf(
43 - 'Responsive Menu requires PHP %1$s or higher to function and has therefore been automatically disabled.
44 - You are still on %2$s.%3$sPlease speak to your web host about upgrading your PHP version.',
45 - esc_html( RMP_MINIMUM_PHP_VERSION ),
46 - PHP_VERSION,
47 - '<br /><br />'
48 - ) . '</p></div>';
49 -}
50 -
51 -if ( version_compare( PHP_VERSION, RMP_MINIMUM_PHP_VERSION, '<' ) ) {
52 - return;
53 -}
54 -
55 -// If this file called directly then abort.
56 -if ( ! defined( 'WPINC' ) ) {
57 - die;
58 -}
59 -
60 -/**
61 - * Constant as plugin file.
62 - */
63 -if ( ! defined( 'RMP_PLUGIN_FILE' ) ) {
64 - define( 'RMP_PLUGIN_FILE', plugin_dir_path( __FILE__ ) . 'responsive-menu.php' );
65 -}
66 -
67 -/**
68 - * Constant as dir of plugin.
69 - */
70 -if ( ! defined( 'RMP_PLUGIN_DIR_NAME' ) ) {
71 - define( 'RMP_PLUGIN_DIR_NAME', untrailingslashit( dirname( plugin_basename( __FILE__ ) ) ) );
72 -}
73 -
74 -/**
75 - * Constant as plugin path.
76 - */
77 -if ( ! defined( 'RMP_PLUGIN_PATH' ) ) {
78 - define( 'RMP_PLUGIN_PATH', untrailingslashit( plugin_dir_path( __FILE__ ) ) );
79 -}
80 -
81 -/**
82 - * Constant as plugin URL.
83 - */
84 -if ( ! defined( 'RMP_PLUGIN_URL' ) ) {
85 - define( 'RMP_PLUGIN_URL', untrailingslashit( plugin_dir_url( __FILE__ ) ) );
86 -}
87 -
88 -/**
89 - * Constant as URI of assets build.
90 - */
91 -if ( ! defined( 'RMP_PLUGIN_BUILD_URI' ) ) {
92 - define( 'RMP_PLUGIN_BUILD_URI', untrailingslashit( plugin_dir_url( __FILE__ ) ) . '/assets/build' );
93 -}
94 -
95 -/**
96 - * Constant as dir of assets build.
97 - */
98 -if ( ! defined( 'RMP_PLUGIN_BUILD_DIR' ) ) {
99 - define( 'RMP_PLUGIN_BUILD_DIR', untrailingslashit( plugin_dir_path( __FILE__ ) ) . '/assets/build' );
100 -}
101 -
102 -/**
103 - * Constant as path of template file.
104 - */
105 -if ( ! defined( 'RMP_PLUGIN_TEMPLATE_PATH' ) ) {
106 - define( 'RMP_PLUGIN_TEMPLATE_PATH', untrailingslashit( plugin_dir_path( __FILE__ ) ) . '/templates/' );
107 -}
108 -
109 -if ( ! defined( 'RMP_PLUGIN_PATH_V4' ) ) {
110 - define( 'RMP_PLUGIN_PATH_V4', RMP_PLUGIN_PATH . '/v4.0.0' );
111 -}
112 -
113 -if ( ! defined( 'RMP_PLUGIN_URL_V4' ) ) {
114 - define( 'RMP_PLUGIN_URL_V4', RMP_PLUGIN_URL . '/v4.0.0' );
115 -}
116 -
117 -/** Include the required files only*/
118 -require_once RMP_PLUGIN_PATH_V4 . '/inc/helpers/autoloader.php';
119 -require_once RMP_PLUGIN_PATH_V4 . '/inc/helpers/custom-functions.php';
120 -require_once RMP_PLUGIN_PATH_V4 . '/inc/helpers/default-options.php';
121 -require_once RMP_PLUGIN_PATH_V4 . '/libs/scssphp/vendor/autoload.php';
122 -require_once RMP_PLUGIN_PATH_V4 . '/templates/rmp-roadmap.php';
123 -
124 -/**
125 - * To load plugin manifest class.
126 - *
127 - * @return void
128 - */
129 -function responsive_menu_features_plugin_loader() {
130 - \RMP\Features\Inc\Plugin::get_instance();
131 -}
132 -
133 -responsive_menu_features_plugin_loader();
134 -
135 -// Active and de-active plugin hook.
136 -register_activation_hook( __FILE__, 'responsive_menu_plugin_activation' );
137 -register_deactivation_hook( __FILE__, 'responsive_menu_plugin_deactivation' );
138 -
139 -/**
140 - * Activation of plugin.
141 - *
142 - * @return void
143 - */
144 -function responsive_menu_plugin_activation() {
145 - $plugin = 'responsive-menu-pro/responsive-menu-pro.php';
146 -
147 - // Check if responsive menu (paid version) is activate then deactivate it.
148 - if ( is_plugin_active( $plugin ) ) {
149 - deactivate_plugins( $plugin );
150 - set_transient( 'og-admin-notice-activation-pro', true, 5 );
151 - }
152 -
153 - // Keep the plugin's uploads directory from serving anything executable.
154 - \RMP\Features\Inc\Theme_Manager::get_instance()->protect_upload_dir();
155 -
156 - flush_rewrite_rules();
157 -}
158 -
159 -/**
160 - * Deactivation of plugin.
161 - *
162 - * @return void
163 - */
164 -function responsive_menu_plugin_deactivation() {
165 - flush_rewrite_rules();
166 -}
167 -
168 -/**
169 - * Function to include the menu themes templates.
170 - *
171 - * @since 4.0.5
172 - *
173 - * @return void
174 - */
175 -function rm_includes_menu_theme_template() {
176 - $theme_manager = \RMP\Features\Inc\Theme_Manager::get_instance();
177 -
178 - // Check class theme manager has this method or not.
179 - if ( ! method_exists( $theme_manager, 'get_menu_active_themes' ) ) {
180 - return;
181 - }
182 -
183 - $active_themes = $theme_manager->get_menu_active_themes();
184 - if ( empty( $active_themes ) ) {
185 - return;
186 - }
187 -
188 - // Include the file from each theme which has php template.
189 - foreach ( $active_themes as $key => $theme_name ) {
190 - $theme_index = $theme_manager->get_theme_index_file( $theme_name );
191 -
192 - if ( file_exists( $theme_index ) ) {
193 - require_once $theme_index;
194 - }
195 - }
196 -}
197 -
198 -rm_includes_menu_theme_template();
199 -
200 -require_once 'review-banner-class.php';
1 +<?php
2 +
3 +/*
4 +Plugin Name: Responsive Menu
5 +Plugin URI: https://responsive.menu
6 +Description: Highly Customisable Responsive Menu Plugin for WordPress
7 +Version: 3.0.9
8 +Author: Responsive Menu
9 +Text Domain: responsive-menu
10 +Author URI: https://responsive.menu
11 +License: GPL2
12 +Tags: responsive, menu, responsive menu
13 +*/
14 +
15 +/* Check correct PHP version first */
16 +add_action('admin_init', 'check_responsive_menu_php_version');
17 +function check_responsive_menu_php_version() {
18 + if(version_compare(PHP_VERSION, '5.4', '<')):
19 + add_action('admin_notices', 'responsive_menu_deactivation_text');
20 + deactivate_plugins(plugin_basename(__FILE__));
21 + endif;
22 +}
23 +
24 +function responsive_menu_deactivation_text() {
25 + echo '<div class="error"><p>' . sprintf(__('Responsive Menu requires PHP 5.4 or higher to function and has therefore been automatically disabled. You are still on %s.%sPlease speak to your webhost about upgrading your PHP version. For more information please visit %s', 'responsive-menu'), PHP_VERSION, '<br /><br />', '<a target="_blank" href="https://responsive.menu/why-php-5-4/">this page</a>.') . '</p></div>';
26 +}
27 +
28 +if(version_compare(PHP_VERSION, '5.4', '<'))
29 + return;
30 +
31 +/* Required includes for plugin to function */
32 +include dirname(__FILE__) . '/autoload.php';
33 +include dirname(__FILE__) . '/src/config/route_dependencies.php';
34 +
35 +/* Internationalise the plugin */
36 +add_action('plugins_loaded', function() {
37 + load_plugin_textdomain('responsive-menu', false, basename(dirname(__FILE__)) . '/translations/');
38 +});
39 +
40 +/* Route the plugin */
41 +$wp_router = new ResponsiveMenu\Routing\WpRouting($container);
42 +$wp_router->route();
43 +
44 +/*
45 +* Initial Migration and Version Check synchronisation */
46 +add_action('init', function() use($container) {
47 + $migration = $container['migration'];
48 + $migration->setup();
49 + $migration->synchronise();
50 +});
51 +
52 +if(is_admin()):
53 +
54 + /*
55 + Polylang Integration Section */
56 + add_action('plugins_loaded', function() use($container) {
57 + if(function_exists('pll_register_string')):
58 + $service = $container['option_service'];
59 + $options = $service->all();
60 +
61 + $menu_to_use = isset($options['menu_to_use']) ? $options['menu_to_use']->getValue() : '';
62 + $button_title = isset($options['button_title']) ? $options['button_title']->getValue() : '';
63 + $menu_title = isset($options['menu_title']) ? $options['menu_title']->getValue() : '';
64 + $menu_title_link = isset($options['menu_title_link']) ? $options['menu_title_link']->getValue() : '';
65 +
66 + pll_register_string('Menu Slug', $menu_to_use, 'Responsive Menu');
67 + pll_register_string('Button Title', $button_title, 'Responsive Menu');
68 + pll_register_string('Menu Title', $menu_title, 'Responsive Menu');
69 + pll_register_string('Menu Title Link', $menu_title_link, 'Responsive Menu');
70 + endif;
71 + });
72 +endif;