forked from karannagupta/nds-admin-form-demo
-
Notifications
You must be signed in to change notification settings - Fork 0
/
nds-admin-form-demo.php
121 lines (95 loc) · 2.91 KB
/
nds-admin-form-demo.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
<?php
/**
* The plugin bootstrap file
*
* This file is read by WordPress to generate the plugin information in the plugin
* admin area. This file also includes all of the dependencies used by the plugin,
* registers the activation and deactivation functions, and defines a function
* that starts the plugin.
*
* @link https://www.nuancedesignstudio.in
* @since 1.0.0
* @package Nds_Admin_Form_Demo
*
* @wordpress-plugin
* Plugin Name: NDS Admin Form Demo
* Plugin URI: https://www.nuancedesignstudio.in/
* Description: A simple plugin to demo the use of forms in the Admin area of WordPress
* Version: 1.0.0
* Author: Karan NA Gupta
* Author URI: https://www.nuancedesignstudio.in/
* License: GPL-2.0+
* License URI: http://www.gnu.org/licenses/gpl-2.0.txt
* Text Domain: nds-admin-form-demo
* Domain Path: /languages
*/
namespace Nds_Admin_Form_Demo;
// If this file is called directly, abort.
if ( ! defined( 'WPINC' ) ) {
die;
}
/**
* Define Constants
*/
define( __NAMESPACE__ . '\NS', __NAMESPACE__ . '\\' );
define( NS . 'PLUGIN_NAME', 'nds-admin-form-demo' );
define( NS . 'PLUGIN_VERSION', '1.0.0' );
define( NS . 'PLUGIN_NAME_DIR', plugin_dir_path( __FILE__ ) );
define( NS . 'PLUGIN_NAME_URL', plugin_dir_url( __FILE__ ) );
define( NS . 'PLUGIN_BASENAME', plugin_basename( __FILE__ ) );
define( NS . 'PLUGIN_TEXT_DOMAIN', 'nds-admin-form-demo' );
/**
* Autoload Classes
*/
require_once( PLUGIN_NAME_DIR . 'inc/libraries/autoloader.php' );
/**
* Register Activation and Deactivation Hooks
* This action is documented in inc/core/class-activator.php
*/
register_activation_hook( __FILE__, array( NS . 'Inc\Core\Activator', 'activate' ) );
/**
* The code that runs during plugin deactivation.
* This action is documented inc/core/class-deactivator.php
*/
register_deactivation_hook( __FILE__, array( NS . 'Inc\Core\Deactivator', 'deactivate' ) );
/**
* Plugin Singleton Container
*
* Maintains a single copy of the plugin app object
*
* @since 1.0.0
*/
class Nds_Admin_Form_Demo {
static $init;
/**
* Loads the plugin
*
* @access public
*/
public static function init() {
if ( null == self::$init ) {
self::$init = new Inc\Core\Init();
self::$init->run();
}
return self::$init;
}
}
/*
* Begins execution of the plugin
*
* Since everything within the plugin is registered via hooks,
* then kicking off the plugin from this point in the file does
* not affect the page life cycle.
*
* Also returns copy of the app object so 3rd party developers
* can interact with the plugin's hooks contained within.
*
*/
function nds_admin_form_demo_init() {
return Nds_Admin_Form_Demo::init();
}
$min_php = '5.6.0';
// Check the minimum required PHP version and run the plugin.
if ( version_compare( PHP_VERSION, $min_php, '>=' ) ) {
nds_admin_form_demo_init();
}