PluginProbe
MainWP Dashboard: Self-hosted WordPress Management for Agencies / 4.1.8
MainWP Dashboard: Self-hosted WordPress Management for Agencies v4.1.8
6.1.8 6.1.7 6.1.6 6.1.5 6.1.4 6.1.3 6.1.2 6.1.1 6.1 6.0.12 6.0.11 4.6.0.1 5.0 5.0.1 5.0.2 5.0.3 5.0.3.1 5.0.3.2 5.1 5.1.1 5.2 5.2.1 5.2.2 5.3 5.3.1 All 152 releases
mainwp / mainwp.php

mainwp.php in MainWP Dashboard: Self-hosted WordPress Management for Agencies 4.1.8, at mainwp.php

114 lines 3.4 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 <?php
2 /**
3 * Plugin Name: MainWP Dashboard
4 *
5 * Description: Manage all of your WP sites, even those on different servers, from one central dashboard that runs off of your own self-hosted WordPress install.
6 *
7 * Author: MainWP
8 * Author URI: https://mainwp.com
9 * Plugin URI: https://mainwp.com/
10 * Text Domain: mainwp
11 * Version: 4.1.8
12 *
13 * @package MainWP/Dashboard
14 *
15 * @uses \MainWP\Dashboard\MainWP_System
16 */
17
18 if ( ! defined( 'MAINWP_PLUGIN_FILE' ) ) {
19
20 /**
21 * Define MainWP Dashboard Plugin absolute full path and filename of this file.
22 *
23 * @const ( string ) Defined MainWP dashboard file path.
24 * @source https://github.com/mainwp/mainwp/blob/master/mainwp.php
25 */
26 define( 'MAINWP_PLUGIN_FILE', __FILE__ );
27 }
28
29 if ( ! defined( 'MAINWP_PLUGIN_DIR' ) ) {
30 /**
31 * Define MainWP Dashboard Plugin Directory.
32 *
33 * @const ( string ) Defined MainWP Dashboard Plugin Directory.
34 * @source https://github.com/mainwp/mainwp/blob/master/mainwp.php
35 */
36 define( 'MAINWP_PLUGIN_DIR', plugin_dir_path( MAINWP_PLUGIN_FILE ) );
37 }
38
39 if ( ! defined( 'MAINWP_PLUGIN_URL' ) ) {
40 /**
41 * Define MainWP Child Dashboard URL.
42 *
43 * @const ( string ) Defined MainWP Dashboard Plugin URL.
44 * @source https://github.com/mainwp/mainwp/blob/master/mainwp.php
45 */
46 define( 'MAINWP_PLUGIN_URL', plugin_dir_url( MAINWP_PLUGIN_FILE ) );
47 }
48
49 if ( ! defined( 'MAINWP_UPDATE_CHECK_LOG_PRIORITY_NUMBER' ) ) {
50 /**
51 * Define MainWP daily disgest log priority number.
52 */
53 define( 'MAINWP_UPDATE_CHECK_LOG_PRIORITY_NUMBER', 10 );
54 }
55
56 // Version information from WordPress.
57 require_once ABSPATH . 'wp-includes' . DIRECTORY_SEPARATOR . 'version.php';
58
59 if ( ! function_exists( 'mainwp_autoload' ) ) {
60
61 /**
62 * Autoloader for all classes, pages & widgets
63 *
64 * @param string $class_name Folder name class|pages|widgets.
65 * @return require_once $autoload_path;
66 */
67 function mainwp_autoload( $class_name ) {
68
69 if ( 0 === strpos( $class_name, 'MainWP\Dashboard' ) ) {
70 // trip the namespace prefix: MainWP\Dashboard\ .
71 $class_name = substr( $class_name, 17 );
72 }
73
74 if ( 0 !== strpos( $class_name, 'MainWP_' ) ) {
75 return;
76 }
77
78 $autoload_types = array(
79 'class' => 'class',
80 'pages' => 'page',
81 'widgets' => 'widget',
82 );
83
84 foreach ( $autoload_types as $type => $prefix ) {
85 $autoload_dir = \trailingslashit( dirname( __FILE__ ) . DIRECTORY_SEPARATOR . $type );
86 $autoload_path = sprintf( '%s%s-%s.php', $autoload_dir, $prefix, strtolower( str_replace( '_', '-', $class_name ) ) );
87
88 if ( file_exists( $autoload_path ) ) {
89 require_once $autoload_path;
90 break;
91 }
92 }
93 }
94 }
95
96 spl_autoload_register( 'mainwp_autoload' );
97
98 require_once MAINWP_PLUGIN_DIR . 'includes' . DIRECTORY_SEPARATOR . 'functions.php';
99 require_once MAINWP_PLUGIN_DIR . 'includes' . DIRECTORY_SEPARATOR . 'compatible.php';
100
101 // Detect if secupress_scanner is running.
102 $mainwp_is_secupress_scanning = false;
103 if ( ! empty( $_GET ) && isset( $_GET['test'] ) && isset( $_GET['action'] ) && 'secupress_scanner' === $_GET['action'] ) {
104 $mainwp_is_secupress_scanning = true;
105 }
106
107 // Fix a conflict with SecuPress plugin.
108 if ( ! $mainwp_is_secupress_scanning ) {
109 $mainWP = new MainWP\Dashboard\MainWP_System( WP_PLUGIN_DIR . DIRECTORY_SEPARATOR . plugin_basename( __FILE__ ) );
110 register_activation_hook( __FILE__, array( $mainWP, 'activation' ) );
111 register_deactivation_hook( __FILE__, array( $mainWP, 'deactivation' ) );
112 add_action( 'plugins_loaded', array( $mainWP, 'update' ) );
113 }
114