_constants();
$this->_hooks();
}
protected function _constants()
{
// Plugin Version
define('APT_PLUGIN_VER', '1.5.0');
// Plugin Text Domain
define('APT_TXTDM', 'abc-pricing-table');
// Plugin Name
define('APT_PLUGIN_NAME', __('Pricing', 'abc-pricing-table'));
// Plugin Slug
define('APT_PLUGIN_SLUG', 'abc-pricing');
// Plugin Directory Path
define('APT_PLUGIN_DIR', plugin_dir_path(__FILE__));
// Plugin Directory URL
define('APT_PLUGIN_URL', plugin_dir_url(__FILE__));
define('APT_SECURE_KEY', md5(NONCE_KEY));
} // end of constructor function
protected function _hooks()
{
// Load text domain
add_action('plugins_loaded', array($this, 'load_textdomain'));
// add testimonial menu item, change menu filter for multisite
add_action('admin_menu', array($this, 'pricing_menu'), 101);
// Create pricing table Custom Post
add_action('init', array($this, 'Pricing'));
// Add meta box to custom post
add_action('add_meta_boxes', array($this, 'admin_add_meta_box'));
// loaded during admin init
add_action('admin_init', array($this, 'admin_add_meta_box'));
add_action('save_post', array(&$this, '_apt_save_settings'));
// Shortcode Compatibility in Text Widgets
add_action('widget_text', 'do_shortcode');
// add pfg cpt shortcode column - manage_{$post_type}_posts_columns
add_filter('manage_abc-pricing_posts_columns', array(&$this, 'set_abc_pricing_shortcode_column_name'));
// add pfg cpt shortcode column data - manage_{$post_type}_posts_custom_column
add_action('manage_abc-pricing_posts_custom_column', array(&$this, 'custom_abc_pricing_shodrcode_data'), 10, 2);
} // end of hook function
// end of hook function
// Pricing table cpt shortcode column before date columns
public function set_abc_pricing_shortcode_column_name($defaults)
{
$new = array();
$shortcode = $columns['abc_pricing_shortcode']; // save the tags column
unset($defaults['tags']); // remove it from the columns list
foreach ($defaults as $key => $value) {
if ($key == 'date') { // when we find the date column
$new['abc_pricing_shortcode'] = __('Shortcode', 'abc-pricing-table'); // put the tags column before it
}
$new[$key] = $value;
}
return $new;
}
// abc cpt shortcode column data
public function custom_abc_pricing_shodrcode_data($column, $post_id)
{
switch ($column) {
case 'abc_pricing_shortcode':
echo "";
echo "";
echo "";
echo '
";
break;
}
}
public function load_textdomain()
{
load_plugin_textdomain('abc-pricing-table', false, dirname(plugin_basename(__FILE__)) . '/languages');
}
public function pricing_menu()
{
$plugins_help_menu = add_submenu_page('edit.php?post_type=' . APT_PLUGIN_SLUG, __('Our Plugins', 'abc-pricing-table'), __('Our Plugins', 'abc-pricing-table'), 'administrator', 'pricing-featured-plugins-page', array($this, '_abcpt_featured_plugins'));
}
public function Pricing()
{
$labels = array(
'name' => __('Pricing Table', 'abc-pricing-table'),
'singular_name' => __('Pricing Table', 'abc-pricing-table'),
'menu_name' => __('Pricing Table', 'abc-pricing-table'),
'name_admin_bar' => __('Pricing Table', 'abc-pricing-table'),
'add_new' => __('Add Pricing Table', 'abc-pricing-table'),
'add_new_item' => __('Add Pricing Table', 'abc-pricing-table'),
'new_item' => __('New Pricing Table', 'abc-pricing-table'),
'edit_item' => __('Edit Pricing Table', 'abc-pricing-table'),
'view_item' => __('View Pricing Table', 'abc-pricing-table'),
'all_items' => __('All Pricing Table', 'abc-pricing-table'),
'search_items' => __('Search Pricing Table', 'abc-pricing-table'),
'parent_item_colon' => __('Parent Pricing Table', 'abc-pricing-table'),
'not_found' => __('No Pricing Table', 'abc-pricing-table'),
'not_found_in_trash' => __('No Pricing Table found in Trash', 'abc-pricing-table'),
);
$args = array(
'labels' => __('Pricing Table', 'abc-pricing-table'),
'description' => __('Description', 'abc-pricing-table'),
'labels' => $labels,
'public' => true,
'publicly_queryable' => true,
'show_ui' => true,
'show_in_menu' => true,
'query_var' => true,
// 'rewrite' => array( 'slug' => 'pricing' ),
'capability_type' => 'page',
'has_archive' => true,
'hierarchical' => false,
'menu_icon' => 'dashicons-cart',
'menu_position' => null,
'supports' => array('title'),
);
register_post_type('abc-pricing', $args);
}
public function admin_add_meta_box()
{
add_meta_box(__('Add Pricing Table', 'abc-pricing-table'), __('Add Pricing Table', 'abc-pricing-table'), array(&$this, 'apt_pricing_upload'), 'abc-pricing', 'normal', 'default');
add_meta_box(__('Upgrade Pricing Table Pro', 'abc-pricing-table'), __('Upgrade Pricing Table Pro', 'abc-pricing-table'), array(&$this, 'apt_upgrade_pro'), 'abc-pricing', 'side', 'default');
add_meta_box(__('Rate Our Plugin', 'abc-pricing-table'), __('Rate Our Plugin', 'abc-pricing-table'), array(&$this, 'apt_rate_plugin'), 'abc-pricing', 'side', 'default');
}
/** meta upgrade pro **/
public function apt_upgrade_pro()
{ ?>
Live Demo
Upgrade Pro
If you like our plugin then please Rate us on WordPress