PluginProbe
Hostinger Tools / 3.0.4
Hostinger Tools v3.0.4
3.0.77 3.0.76 3.0.75 3.0.74 3.0.73 3.0.72 3.0.71 3.0.70 3.0.69 3.0.68 3.0.67 3.0.66 1.8.1 1.8.2 1.8.3 1.9.1 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.4 All 108 releases
← All changes | hostinger.php +71 -13 2.0.43.0.4 View file →
@@ -1,12 +1,12 @@
1 1 <?php
2 2 /**
3 - * Plugin Name: Hostinger
3 + * Plugin Name: Hostinger Tools
4 4 * Plugin URI: https://hostinger.com
5 5 * Description: Hostinger WordPress plugin.
6 - * Version: 2.0.4
7 - * Requires at least: 5.9
8 - * Requires PHP: 7.4
6 + * Version: 3.0.4
7 + * Requires at least: 5.5
8 + * Requires PHP: 8.0
9 9 * Author: Hostinger
10 10 * License: GPL v3
11 11 * License URI: https://www.gnu.org/licenses/gpl-3.0.html
12 12 * Author URI: https://www.hostinger.com
@@ -15,12 +15,17 @@
15 15 *
16 16 * @package Hostinger
17 17 */
18 18
19 +use Hostinger\Hostinger;
20 +use Hostinger\Activator;
21 +use Hostinger\Deactivator;
22 +use Hostinger\WpMenuManager\Manager;
23 +
19 24 defined( 'ABSPATH' ) || exit;
20 25
21 26 if ( ! defined( 'HOSTINGER_VERSION' ) ) {
22 - define( 'HOSTINGER_VERSION', '2.0.4' );
27 + define( 'HOSTINGER_VERSION', '3.0.4' );
23 28 }
24 29
25 30 if ( ! defined( 'HOSTINGER_ABSPATH' ) ) {
26 31 define( 'HOSTINGER_ABSPATH', plugin_dir_path( __FILE__ ) );
@@ -34,11 +39,15 @@
34 39 define( 'HOSTINGER_PLUGIN_URL', plugin_dir_url( __FILE__ ) );
35 40 }
36 41
37 42 if ( ! defined( 'HOSTINGER_ASSETS_URL' ) ) {
38 - define( 'HOSTINGER_ASSETS_URL', plugin_dir_url( __FILE__ ) . 'assets' );
43 + define( 'HOSTINGER_ASSETS_URL', plugin_dir_url( __FILE__ ) . 'assets/' );
39 44 }
40 45
46 +if ( ! defined( 'HOSTINGER_VUE_ASSETS_URL' ) ) {
47 + define( 'HOSTINGER_VUE_ASSETS_URL', plugin_dir_url( __FILE__ ) . 'vue-frontend/dist' );
48 +}
49 +
41 50 if ( ! defined( 'HOSTINGER_WP_CONFIG_PATH' ) ) {
42 51 define( 'HOSTINGER_WP_CONFIG_PATH', ABSPATH . '.private/config.json' );
43 52 }
44 53
@@ -51,27 +60,76 @@
51 60 if ( ! defined( 'HOSTINGER_REST_URI' ) ) {
52 61 define( 'HOSTINGER_REST_URI', 'https://rest-hosting.hostinger.com' );
53 62 }
54 63
64 +if ( ! defined( 'HOSTINGER_PLUGIN_SETTINGS_OPTION' ) ) {
65 + define( 'HOSTINGER_PLUGIN_SETTINGS_OPTION', 'hostinger_tools' );
66 +}
67 +
68 +if ( ! defined( 'HOSTINGER_PLUGIN_REST_API_BASE' ) ) {
69 + define( 'HOSTINGER_PLUGIN_REST_API_BASE', 'hostinger-tools-plugin/v1' );
70 +}
71 +
72 +if ( ! defined( 'HOSTINGER_PLUGIN_MINIMUM_PHP_VERSION' ) ) {
73 + define( 'HOSTINGER_PLUGIN_MINIMUM_PHP_VERSION', '8.0' );
74 +}
75 +
76 +if ( ! version_compare( phpversion(), HOSTINGER_PLUGIN_MINIMUM_PHP_VERSION, '>=' ) ) {
77 + add_action(
78 + 'admin_notices',
79 + function () {
80 + ?>
81 + <div class="notice notice-error is-dismissible hts-theme-settings">
82 + <p>
83 + <?php /* translators: %s: PHP version */ ?>
84 + <strong><?php echo esc_html__( 'Attention:', 'hostinger' ); ?></strong> <?php printf( esc_html__( 'The Hostinger plugin requires minimum PHP version of <b>%s</b>.', 'hostinger' ), esc_html( HOSTINGER_PLUGIN_MINIMUM_PHP_VERSION ) ); ?>
85 + </p>
86 + <p>
87 + <?php /* translators: %s: PHP version */ ?>
88 + <?php printf( esc_html__( 'You are running <b>%s</b> PHP version.', 'hostinger' ), esc_html( phpversion() ) ); ?>
89 + </p>
90 + </div>
91 + <?php
92 + }
93 + );
94 +
95 + return;
96 +}
97 +
98 +$vendor_file = __DIR__ . DIRECTORY_SEPARATOR . 'vendor' . DIRECTORY_SEPARATOR . 'autoload.php';
99 +
100 +if ( file_exists( $vendor_file ) ) {
101 + require_once $vendor_file;
102 +} else {
103 + return;
104 +}
105 +
55 106 /**
56 - * @return void
107 + * Plugin activation hook.
57 108 */
58 109 function hostinger_activate(): void {
59 - require_once HOSTINGER_ABSPATH . 'includes/class-hostinger-activator.php';
60 - Hostinger_Activator::activate();
110 + Activator::activate();
61 111 }
62 112
63 113 /**
64 - * @return void
114 + * Plugin deactivation hook.
65 115 */
66 116 function hostinger_deactivate(): void {
67 - require_once HOSTINGER_ABSPATH . 'includes/class-hostinger-deactivator.php';
68 - Hostinger_Deactivator::deactivate();
117 + Deactivator::deactivate();
69 118 }
70 119
71 120 register_activation_hook( __FILE__, 'hostinger_activate' );
72 121 register_deactivation_hook( __FILE__, 'hostinger_deactivate' );
73 122
74 -require_once HOSTINGER_ABSPATH . 'includes/class-hostinger.php';
123 +if ( ! function_exists( 'hostinger_load_menus' ) ) {
124 + function hostinger_load_menus(): void {
125 + $manager = Manager::getInstance();
126 + $manager->boot();
127 + }
128 +}
129 +
130 +if ( ! has_action( 'plugins_loaded', 'hostinger_load_menus' ) ) {
131 + add_action( 'plugins_loaded', 'hostinger_load_menus' );
132 +}
75 133
76 134 $hostinger = new Hostinger();
77 135 $hostinger->run();