Admin
3 months ago
Builder
3 months ago
Helpers
3 months ago
Integrations
3 months ago
CFF_Autolink.php
3 months ago
CFF_Blocks.php
3 months ago
CFF_Cache.php
3 months ago
CFF_Education.php
3 months ago
CFF_Elementor_Base.php
3 months ago
CFF_Elementor_Widget.php
3 months ago
CFF_Error_Reporter.php
3 months ago
CFF_FB_Settings.php
3 months ago
CFF_Feed_Elementor_Control.php
3 months ago
CFF_Feed_Locator.php
3 months ago
CFF_Feed_Pro.php
3 months ago
CFF_GDPR_Integrations.php
3 months ago
CFF_Group_Posts.php
3 months ago
CFF_HTTP_Request.php
3 months ago
CFF_Oembed.php
3 months ago
CFF_Parse.php
3 months ago
CFF_Resizer.php
3 months ago
CFF_Response.php
3 months ago
CFF_Shortcode.php
3 months ago
CFF_Shortcode_Display.php
3 months ago
CFF_SiteHealth.php
3 months ago
CFF_Utils.php
3 months ago
CFF_View.php
3 months ago
Custom_Facebook_Feed.php
3 months ago
Email_Notification.php
3 months ago
Platform_Data.php
3 months ago
SB_Facebook_Data_Encryption.php
3 months ago
SB_Facebook_Data_Manager.php
3 months ago
index.php
3 months ago
CFF_Elementor_Base.php
97 lines
| 1 | <?php |
| 2 | |
| 3 | namespace CustomFacebookFeed; |
| 4 | |
| 5 | if (!defined('ABSPATH')) { |
| 6 | exit; // Exit if accessed directly |
| 7 | } |
| 8 | |
| 9 | |
| 10 | class CFF_Elementor_Base |
| 11 | { |
| 12 | const VERSION = CFFVER; |
| 13 | const MINIMUM_ELEMENTOR_VERSION = '2.0.0'; |
| 14 | const MINIMUM_PHP_VERSION = '5.6'; |
| 15 | private static $instance; |
| 16 | |
| 17 | |
| 18 | public static function instance() |
| 19 | { |
| 20 | if (!isset(self::$instance) && !self::$instance instanceof CFF_Elementor_Base) { |
| 21 | self::$instance = new CFF_Elementor_Base(); |
| 22 | self::$instance->apply_hooks(); |
| 23 | } |
| 24 | return self::$instance; |
| 25 | } |
| 26 | private function apply_hooks() |
| 27 | { |
| 28 | add_action('elementor/frontend/after_register_scripts', [$this, 'register_frontend_scripts']); |
| 29 | add_action('elementor/frontend/after_register_styles', [$this, 'register_frontend_styles'], 10); |
| 30 | add_action('elementor/frontend/after_enqueue_styles', [$this, 'enqueue_frontend_styles'], 10); |
| 31 | add_action('elementor/controls/controls_registered', [$this, 'register_controls']); |
| 32 | add_action('elementor/widgets/widgets_registered', [$this,'register_widgets']); |
| 33 | add_action('elementor/init', [$this, 'add_smashballon_categories']); |
| 34 | } |
| 35 | |
| 36 | public function register_controls() |
| 37 | { |
| 38 | $controls_manager = \Elementor\Plugin::$instance->controls_manager; |
| 39 | $controls_manager->register_control('cff_feed_control', new CFF_Feed_Elementor_Control()); |
| 40 | } |
| 41 | |
| 42 | |
| 43 | public function register_widgets() |
| 44 | { |
| 45 | $instance_manager = \Elementor\Plugin::instance()->widgets_manager; |
| 46 | $instance_manager->register_widget_type(new CFF_Elementor_Widget()); |
| 47 | } |
| 48 | |
| 49 | |
| 50 | public function register_frontend_scripts() |
| 51 | { |
| 52 | $data = array( |
| 53 | 'placeholder' => CFF_PLUGIN_URL . 'assets/img/placeholder.png', |
| 54 | ); |
| 55 | |
| 56 | wp_register_script( |
| 57 | 'cffscripts', |
| 58 | CFF_PLUGIN_URL . 'assets/js/cff-scripts.js', |
| 59 | array('jquery'), |
| 60 | CFFVER, |
| 61 | true |
| 62 | ); |
| 63 | wp_localize_script('cffscripts', 'cffOptions', $data); |
| 64 | |
| 65 | wp_register_script( |
| 66 | 'elementor-preview', |
| 67 | CFF_PLUGIN_URL . 'assets/js/elementor-preview.js', |
| 68 | array('jquery'), |
| 69 | CFFVER, |
| 70 | true |
| 71 | ); |
| 72 | } |
| 73 | |
| 74 | public function register_frontend_styles() |
| 75 | { |
| 76 | wp_register_style( |
| 77 | 'cffstyles', |
| 78 | CFF_PLUGIN_URL . 'assets/css/cff-style.min.css', |
| 79 | array(), |
| 80 | CFFVER |
| 81 | ); |
| 82 | } |
| 83 | |
| 84 | public function enqueue_frontend_styles() |
| 85 | { |
| 86 | wp_enqueue_style('cffstyles'); |
| 87 | } |
| 88 | |
| 89 | public function add_smashballon_categories() |
| 90 | { |
| 91 | \Elementor\Plugin::instance()->elements_manager->add_category('smash-balloon', [ |
| 92 | 'title' => __('Smash Balloon', 'custom-facebook-feed'), |
| 93 | 'icon' => 'fa fa-plug', |
| 94 | ]); |
| 95 | } |
| 96 | } |
| 97 |