PluginProbe
WC Builder – WooCommerce Page Builder for WPBakery / 1.0.19
WC Builder – WooCommerce Page Builder for WPBakery v1.0.19
1.2.3 trunk 1.0.17 1.0.18 1.0.19 1.0.5 1.0.7 1.2.0 1.2.1 1.2.2
wc-builder / wc-builder.php

wc-builder.php in WC Builder – WooCommerce Page Builder for WPBakery 1.0.19, at wc-builder.php

126 lines 4.6 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 <?php
2 /**
3 * Plugin Name: WC Builder - WooCommerce Page Builder for WPBakery
4 * Description: The WooCommerce elements library for WPBakery page builder plugin for WordPress.
5 * Plugin URI: http://hasthemes.com
6 * Version: 1.0.19
7 * Author: HasThemes
8 * Author URI: http://hasthemes.com
9 * License: GPL-2.0+
10 * License URI: http://www.gnu.org/licenses/gpl-2.0.txt
11 * Text Domain: wpbforwpbakery
12 * Domain Path: /languages
13 */
14
15 if ( ! defined( 'ABSPATH' ) ) exit; // Exit if accessed directly
16
17 define( 'WPBFORWPBAKERY_VERSION', '1.0.19' );
18 define( 'WPBFORWPBAKERY_ADDONS_PL_URL', plugins_url( '/', __FILE__ ) );
19 define( 'WPBFORWPBAKERY_ADDONS_PL_PATH', plugin_dir_path( __FILE__ ) );
20 define( 'WPBFORWPBAKERY_ADDONS_PL_ROOT', __FILE__ );
21
22 // Deactivate the pro plugin
23 register_activation_hook( WPBFORWPBAKERY_ADDONS_PL_ROOT, 'wpbforwpbakery_activation_hook' );
24 function wpbforwpbakery_activation_hook(){
25 if ( ! function_exists('is_plugin_active') ){
26 include_once( ABSPATH . 'wp-admin/includes/plugin.php' );
27 }
28
29 if( is_plugin_active('wc-builder-pro/wc-builder-pro.php') ){
30 add_action('update_option_active_plugins', function(){
31 deactivate_plugins('wc-builder-pro/wc-builder-pro.php');
32 });
33 }
34 }
35
36 // Required File
37 require_once WPBFORWPBAKERY_ADDONS_PL_PATH.'includes/helper-functions.php';
38 require_once WPBFORWPBAKERY_ADDONS_PL_PATH.'includes/activation-notice.php';
39 require_once WPBFORWPBAKERY_ADDONS_PL_PATH.'includes/custom-posts.php';
40 require_once WPBFORWPBAKERY_ADDONS_PL_PATH.'includes/admin/admin-init.php';
41 require_once WPBFORWPBAKERY_ADDONS_PL_PATH.'includes/metaboxes.php';
42
43 if(is_admin()){
44 require_once WPBFORWPBAKERY_ADDONS_PL_PATH.'includes/admin/recommended-plugins/class.recommended-plugins.php';
45 require_once WPBFORWPBAKERY_ADDONS_PL_PATH.'includes/admin/recommended-plugins/recommendations.php';
46 }
47
48 if( wpbforwpbakery_get_option('ajaxcart_singleproduct', 'wpbforwpbakery_other_tabs') === 'on' ){
49 require_once WPBFORWPBAKERY_ADDONS_PL_PATH . 'includes/single-add-to-cart-ajax.php';
50 }
51
52 add_action('plugins_loaded', 'wpbforwpbakery_initialize_plugin');
53 function wpbforwpbakery_initialize_plugin(){
54 require_once WPBFORWPBAKERY_ADDONS_PL_PATH.'init.php';
55 }
56
57 // enqueue scripts
58 add_action( 'wp_enqueue_scripts','wpbforwpbakery_enqueue_scripts');
59 function wpbforwpbakery_enqueue_scripts(){
60 // enqueue styles
61 wp_enqueue_style( 'wpbforwpbakery-main', WPBFORWPBAKERY_ADDONS_PL_URL.'/assets/css/main.css');
62
63 // dynamic style
64 $site_width = wpbforwpbakery_get_option( 'content_width', 'wpbforwpbakery_woo_template_tabs', '1170' );
65 $data = '';
66 if($site_width){
67 $data = "
68 .wpbforwpbakery_archive .vc_row.wpb_row.vc_row-fluid,
69 .wpbforwpbakery-single-product .vc_row.wpb_row.vc_row-fluid,
70 .wpbforwpbakery-page-template .vc_row.wpb_row.vc_row-fluid{
71 max-width: $site_width;
72 margin: 0 auto;
73 }
74 .wpbforwpbakery_archive .vc_row.wpb_row.vc_row-fluid[data-vc-full-width='true'],
75 .wpbforwpbakery-single-product .vc_row.wpb_row.vc_row-fluid[data-vc-full-width='true'],
76 .wpbforwpbakery-page-template .vc_row.wpb_row.vc_row-fluid[data-vc-full-width='true']{
77 max-width:100%;
78 }
79 ";
80 }
81 wp_add_inline_style( 'wpbforwpbakery-main', $data );
82 }
83
84
85 //Register a custom menu page.
86 add_action( 'admin_menu', 'wpbforwpbakery_register_menu_page' );
87 function wpbforwpbakery_register_menu_page() {
88 add_menu_page(
89 __( 'WC Page Builder', 'wpbforwpbakery' ),
90 'WC Page Builder',
91 'manage_options',
92 'wpbforwpbakery_options',
93 '',
94 WPBFORWPBAKERY_ADDONS_PL_URL.'includes/admin/assets/images/menu-icon.png'
95 );
96 }
97
98 // set vc editor to post type
99 add_action('plugins_loaded', 'wpbforwpbakery_fire_vc_before_init');
100 function wpbforwpbakery_fire_vc_before_init(){
101 add_action('vc_before_init', 'wpbforwpbakery_set_post_type_to_vc_editor');
102 }
103
104 function wpbforwpbakery_set_post_type_to_vc_editor(){
105 if (function_exists('vc_set_default_editor_post_types')) {
106 vc_set_default_editor_post_types(array('page', 'post', 'wpbfwpb_template'));
107 }
108 }
109
110 // Bind admin page link to the plugin action link.
111 add_filter( 'plugin_action_links_wc-builder/wc-builder.php', 'wpbforwpbakery_action_links_add', 10, 4 );
112 function wpbforwpbakery_action_links_add( $actions, $plugin_file, $plugin_data, $context ){
113 $settings_page_link = sprintf(
114 /*
115 * translators:
116 * 1: Settings label
117 */
118 '<a href="'. esc_url( get_admin_url() . 'edit.php?post_type=wpbfwpb_template' ) .'">%1$s</a>',
119 esc_html__( 'Settings', 'wpbforwpbakery' )
120 );
121
122 array_unshift( $actions, $settings_page_link );
123
124 return $actions;
125 }
126