Repository navigation
Expand file tree
/
Copy pathdbpcloudwp.php
More file actions
94 lines (83 loc) · 4.11 KB
/
Copy pathdbpcloudwp.php
File metadata and controls
94 lines (83 loc) · 4.11 KB
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
<?php
/**
* Plugin Name: DBP Cloud WP Plugin
* Plugin URI: https://dbpcloudwp.com/
* Description: Our SaaS makes it easy to edit WordPress in a spreadsheet-style. The features are bulk editing, sorting by menu order, automatic calculation field, print design with HTML & CSS and export to PDF file, etc. This plugin acts as an interface to the external service.
* Version: 0.1.5
* Requires at least: 4.8
* Requires PHP: 5.4.0
* Author: Caronima Inc.
* Author URI: https://caronima.com/
* License: GPL v2 or later
* License URI: https://www.gnu.org/licenses/gpl-2.0.html
* Text Domain: dbpcloudwp
*/
if ( ! defined( 'ABSPATH' ) ) {
exit; // Exit if accessed directly.
}
$this_plugin_info = get_file_data( __FILE__, array(
'name' => 'Plugin Name',
'version' => 'Version',
'text_domain' => 'Text Domain',
'minimum_php' => 'Requires PHP',
));
define( 'DBPCLOUDWP_PLUGIN_PATH', rtrim( plugin_dir_path( __FILE__ ), '/') );
define( 'DBPCLOUDWP_PLUGIN_SLUG', trim( dirname( plugin_basename( __FILE__ ) ), '/' ) );
define( 'DBPCLOUDWP_PLUGIN_NAME', $this_plugin_info['name'] );
define( 'DBPCLOUDWP_PLUGIN_VERSION', $this_plugin_info['version'] );
define( 'DBPCLOUDWP_TEXT_DOMAIN', $this_plugin_info['text_domain'] );
load_plugin_textdomain( DBPCLOUDWP_TEXT_DOMAIN, false, basename( dirname( __FILE__ ) ) . '/languages' );
/*** Require PHP Version Check ***/
if ( version_compare(phpversion(), $this_plugin_info['minimum_php'], '<') ) {
$plugin_notice = sprintf( __('Oops, this plugin will soon require PHP %s or higher.', DBPCLOUDWP_TEXT_DOMAIN), $this_plugin_info['minimum_php'] );
register_activation_hook(__FILE__, create_function('', "deactivate_plugins('".plugin_basename( __FILE__ )."'); wp_die('{$plugin_notice}');"));
}
if( ! class_exists( 'DBPCloudWP' ) ) {
/*** Common Define ***/
require_once( DBPCLOUDWP_PLUGIN_PATH .'/includes/common-define.php' );
Class DBPCloudWP {
function __construct($dbp) {
/*** DBPCloudWP Class ***/
require_once( DBPCLOUDWP_PLUGIN_PATH .'/includes/class.dbpcloudwp-core.php' );
require_once( DBPCLOUDWP_PLUGIN_PATH .'/includes/class.dbpcloudwp-index.php' );
require_once( DBPCLOUDWP_PLUGIN_PATH .'/includes/class.dbpcloudwp-users.php' );
require_once( DBPCLOUDWP_PLUGIN_PATH .'/includes/class.dbpcloudwp-interface.php' );
/*** Creating New Class Instance ***/
$dbpcloudwp_core = new DBPCloudWP_Core();
/*** Only WP Admin Pages ***/
if( is_admin() ) {
/*** Creating New Class Instance ***/
$dbpcloudwp_index = new DBPCloudWP_Index();
$dbpcloudwp_users = new DBPCloudWP_Users();
$dbpcloudwp_interface_spreadsheet = new DBPCloudWP_Interface( $dbp['wp']['spreadsheet']['slug'], __('Spreadsheet', DBPCLOUDWP_TEXT_DOMAIN) );
$dbpcloudwp_interface_table_view = new DBPCloudWP_Interface( $dbp['wp']['table_view']['slug'], __('Table View', DBPCLOUDWP_TEXT_DOMAIN) );
$dbpcloudwp_interface_css_typesetting = new DBPCloudWP_Interface( $dbp['wp']['css_typesetting']['slug'], __('Print Design', DBPCLOUDWP_TEXT_DOMAIN) );
$dbpcloudwp_interface_importer = new DBPCloudWP_Interface( $dbp['wp']['importer']['slug'], __('CSV/JSON Import', DBPCLOUDWP_TEXT_DOMAIN) );
}
/*** Shortcode of Getting to Postmeta Value ***/
/*
* [dbpcloudwp_get_postmeta key="keyname"]
* [dbpcloudwp_get_postmeta key="keyname" post_id="xxx"]
*/
require_once( DBPCLOUDWP_PLUGIN_PATH .'/includes/class.dbpcloudwp-shortcode.php' );
}
}
/****** DBPCloudWP Initialize ******/
function dbpcloudwp_initialize() {
global $dbpcloudwp;
/* Instantiate only once. */
if( ! isset($dbpcloudwp) ) {
$dbp = json_decode( DBPCLOUDWP_PUBLIC_DEFINE, true );
$dbpcloudwp = new DBPCloudWP($dbp);
}
return $dbpcloudwp;
}
/*** Instantiate ****/
dbpcloudwp_initialize();
/****** Uninstall ******/
require_once( DBPCLOUDWP_PLUGIN_PATH .'/includes/class.dbpcloudwp-uninstall.php' );
register_uninstall_hook( __FILE__, array('DBPCloudWP_Uninstall', 'delete_usermeta_func') );
} else {
$plugin_notice = __('Oops, PHP Class Name Conflict.', DBPCLOUDWP_TEXT_DOMAIN);
wp_die($plugin_notice);
}