Эх сурвалжийг харах

cleanup code in startup plugin (add comments, security issue)

Dalibor Votruba 1 жил өмнө
parent
commit
5c672fb590

+ 27 - 14
studiou-wc-ord-print-statuses/studiou-wc-ord-print-statuses.php

@@ -2,16 +2,22 @@
 /**
  * Plugin Name: QDR - Studiou WC Order Print Statuses
  * Plugin URI: https://www.quadarax.com/plugins/studiou-wc-ord-print-statuses
- * Description: Adds custom order statuses (to-print,in-print), bulk actions, and status change timestamps to WooCommerce for print orders to third party provider
- * Version: 1.0
+ * Description: Adds custom order statuses (to-print, in-print), bulk actions, and status change timestamps to WooCommerce for print orders to third party providers
+ * Version: 1.1
+ * Requires at least: 5.8
+ * Requires PHP: 7.2
  * Author: Dalibor Votruba
  * Author URI: https://www.quadarax.com
- * License: GPL2
+ * License: GPL v2 or later
+ * License URI: https://www.gnu.org/licenses/gpl-2.0.html
  * Text Domain: studiou-wc-ord-print-statuses
  * Domain Path: /languages
+ *
+ * WC requires at least: 5.0
+ * WC tested up to: 8.0
  */
 
-defined('ABSPATH') or die('Direct access not allowed!');
+defined('ABSPATH') || exit;
 
 // Load the DB_Assets_Manager class
 require_once plugin_dir_path(__FILE__) . 'includes/class-db-assets-manager.php';
@@ -44,12 +50,18 @@ class Studiou_WC_Ord_Print_Statuses {
     }
 
     private function load_dependencies() {
-        require_once plugin_dir_path(__FILE__) . 'includes/class-order-status-manager.php';
-        require_once plugin_dir_path(__FILE__) . 'includes/class-order-fields-manager.php';
-        require_once plugin_dir_path(__FILE__) . 'includes/class-order-search-manager.php';
-        require_once plugin_dir_path(__FILE__) . 'includes/class-bulk-actions-manager.php';
-        require_once plugin_dir_path(__FILE__) . 'includes/class-custom-columns-manager.php';
-        require_once plugin_dir_path(__FILE__) . 'includes/class-import-manager.php';
+        $files = array(
+            'class-order-status-manager.php',
+            'class-order-fields-manager.php',
+            'class-order-search-manager.php',
+            'class-bulk-actions-manager.php',
+            'class-custom-columns-manager.php',
+            'class-import-manager.php'
+        );
+
+        foreach ($files as $file) {
+            require_once plugin_dir_path(__FILE__) . 'includes/' . $file;
+        }
     }
 
     private function initialize_managers() {
@@ -64,7 +76,7 @@ class Studiou_WC_Ord_Print_Statuses {
     public function woocommerce_missing_notice() {
         ?>
         <div class="error">
-            <p><?php _e('Studiou WC Order Print Statuses requires WooCommerce to be installed and active.', 'studiou-wc-ord-print-statuses'); ?></p>
+            <p><?php esc_html_e('Studiou WC Order Print Statuses requires WooCommerce to be installed and active.', 'studiou-wc-ord-print-statuses'); ?></p>
         </div>
         <?php
     }
@@ -74,9 +86,10 @@ class Studiou_WC_Ord_Print_Statuses {
 function studiou_wc_ord_print_statuses_load_textdomain() {
     load_plugin_textdomain('studiou-wc-ord-print-statuses', false, dirname(plugin_basename(__FILE__)) . '/languages');
 }
-// register the load_plugin_textdomain function
 add_action('plugins_loaded', 'studiou_wc_ord_print_statuses_load_textdomain');
 
-
 // Initialize the plugin
-new Studiou_WC_Ord_Print_Statuses();
+function studiou_wc_ord_print_statuses_init() {
+    new Studiou_WC_Ord_Print_Statuses();
+}
+add_action('plugins_loaded', 'studiou_wc_ord_print_statuses_init', 10);