PluginProbe ʕ •ᴥ•ʔ
EmbedPress – PDF Embedder, Embed PDF viewer, YouTube Videos, 3D FlipBook, Social feeds & more / 3.9.16
EmbedPress – PDF Embedder, Embed PDF viewer, YouTube Videos, 3D FlipBook, Social feeds & more v3.9.16
4.5.6 4.5.5 4.5.4 4.5.3 4.5.2 trunk 1.0.0 1.1.0 1.1.1 1.1.2 1.1.3 1.2.0 1.3.0 1.3.1 1.4.0 1.4.1 1.4.2 1.4.3 1.4.4 1.5.0 1.6.0 1.6.1 1.6.2 1.6.3 1.7.0 1.7.1 1.7.2 1.7.3 1.7.4 1.7.5 2.0.0 2.0.1 2.0.2 2.0.3 2.1.0 2.1.1 2.1.2 2.1.3 2.1.4 2.1.5 2.1.6 2.2.0 2.2.1 2.2.2 2.3.0 2.3.1 2.3.2 2.3.3 2.4.0 2.4.1 2.5.0 2.5.1 2.5.2 2.5.3 2.5.4 2.5.5 2.6.0 2.6.1 2.6.2 2.7.0 2.7.1 2.7.2 2.7.3 2.7.4 2.7.5 2.7.6 2.7.7 3.0.0 3.0.1 3.0.2 3.0.3 3.0.4 3.1.0 3.1.1 3.1.2 3.1.3 3.2.0 3.2.1 3.3.0 3.3.1 3.3.2 3.3.3 3.3.4 3.3.5 3.3.6 3.3.7 3.4.0 3.4.1 3.4.2 3.4.3 3.5.0 3.5.1 3.5.2 3.5.3 3.6.0 3.6.1 3.6.2 3.6.3 3.6.4 3.6.5 3.6.6 3.6.7 3.6.8 3.7.0 3.7.1 3.7.2 3.7.3 3.8.0 3.8.1 3.8.2 3.8.3 3.8.4 3.8.5 3.9.0 3.9.1 3.9.10 3.9.11 3.9.12 3.9.13 3.9.14 3.9.15 3.9.16 3.9.17 3.9.2 3.9.3 3.9.4 3.9.5 3.9.6 3.9.7 3.9.8 3.9.9 4.0.0 4.0.1 4.0.10 4.0.11 4.0.12 4.0.13 4.0.14 4.0.2 4.0.3 4.0.4 4.0.5 4.0.6 4.0.7 4.0.8 4.0.9 4.1.0 4.1.1 4.1.10 4.1.2 4.1.3 4.1.4 4.1.5 4.1.6 4.1.7 4.1.8 4.1.9 4.2.0 4.2.1 4.2.2 4.2.3 4.2.4 4.2.5 4.2.6 4.2.7 4.2.8 4.2.9 4.3.0 4.3.1 4.4.0 4.4.1 4.4.10 4.4.11 4.4.2 4.4.3 4.4.4 4.4.5 4.4.6 4.4.7 4.4.8 4.4.9 4.5.0 4.5.1
embedpress / embedpress.php
embedpress Last commit date
EmbedPress 2 years ago Gutenberg 2 years ago assets 2 years ago languages 2 years ago vendor 2 years ago CONTRIBUTING.md 7 years ago autoloader.php 2 years ago embedpress.php 2 years ago includes.php 2 years ago index.html 9 years ago providers.php 2 years ago readme.txt 2 years ago wpml-config.xml 4 years ago
embedpress.php
144 lines
1 <?php
2
3 /**
4 * Plugin Name: EmbedPress
5 * Plugin URI: https://embedpress.com/
6 * Description: EmbedPress lets you embed videos, images, posts, audio, maps and upload PDF, DOC, PPT & all other types of content into your WordPress site with one-click and showcase it beautifully for the visitors. 150+ sources supported.
7 * Author: WPDeveloper
8 * Author URI: https://wpdeveloper.com
9 * Version: 3.9.16
10 * Text Domain: embedpress
11 * Domain Path: /languages
12 *
13 * Copyright (c) 2023 WPDeveloper
14 *
15 * EmbedPress plugin bootstrap file.
16 *
17 * @package EmbedPress
18 * @author EmbedPress <help@embedpress.com>
19 * @copyright Copyright (C) 2023 WPDeveloper. All rights reserved.
20 * @license GPLv3 or later
21 * @since 1.0.0
22 */
23
24 use EmbedPress\Compatibility;
25 use EmbedPress\Core;
26 use EmbedPress\CoreLegacy;
27 use EmbedPress\Elementor\Embedpress_Elementor_Integration;
28 use EmbedPress\Includes\Classes\Feature_Enhancer;
29 use EmbedPress\Includes\Classes\Extend_Elementor_Controls;
30 use EmbedPress\Includes\Classes\Extend_CustomPlayer_Controls;
31 use EmbedPress\Includes\Classes\Helper;
32 use EmbedPress\Shortcode;
33
34
35 defined('ABSPATH') or die("No direct script access allowed.");
36
37 define('EMBEDPRESS_PLUGIN_BASENAME', plugin_basename(__FILE__));
38 define('EMBEDPRESS_FILE', __FILE__);
39
40 if (!defined('EMBEDPRESS_PLUGIN_VERSION')) {
41 define('EMBEDPRESS_PLUGIN_VERSION', '3.9.16');
42 }
43
44 define('EMBEDPRESS_PLUGIN_DIR_PATH', plugin_dir_path(__FILE__));
45 define('EMBEDPRESS_PLUGIN_DIR_URL', plugin_dir_url(__FILE__));
46 define('EMBEDPRESS_GUTENBERG_DIR_URL', EMBEDPRESS_PLUGIN_DIR_URL . 'Gutenberg/');
47 define('EMBEDPRESS_GUTENBERG_DIR_PATH', EMBEDPRESS_PLUGIN_DIR_PATH . 'Gutenberg/');
48 define('EMBEDPRESS_SETTINGS_ASSETS_URL', EMBEDPRESS_PLUGIN_DIR_URL . 'EmbedPress/Ends/Back/Settings/assets/');
49 define('EMBEDPRESS_SETTINGS_PATH', EMBEDPRESS_PLUGIN_DIR_PATH . 'EmbedPress/Ends/Back/Settings/');
50 define('EMBEDPRESS_PLUGIN_URL', plugins_url('/', __FILE__));
51
52 require_once EMBEDPRESS_PLUGIN_DIR_PATH . 'includes.php';
53
54 include_once ABSPATH . 'wp-admin/includes/plugin.php';
55
56 if (!defined('EMBEDPRESS_IS_LOADED')) {
57 return;
58 }
59
60 add_action('embedpress_cache_cleanup_action', 'embedpress_cache_cleanup');
61
62
63 if (!empty($_GET['hash'])) {
64 remove_action('wp_head', 'rel_canonical');
65 }
66
67 function onPluginActivationCallback()
68 {
69 Core::onPluginActivationCallback();
70 }
71
72 function onPluginDeactivationCallback()
73 {
74 Core::onPluginDeactivationCallback();
75 }
76
77 register_activation_hook(__FILE__, 'onPluginActivationCallback');
78 register_deactivation_hook(__FILE__, 'onPluginDeactivationCallback');
79
80
81 add_action('plugins_loaded', function () {
82 do_action('embedpress_before_init');
83 });
84 $editor_check = get_option('classic-editor-replace');
85 if ((Compatibility::isWordPress5() && !Compatibility::isClassicalEditorActive()) || (Compatibility::isClassicalEditorActive() && 'block' === $editor_check)) {
86 $embedPressPlugin = new Core();
87 } else {
88 $embedPressPlugin = new CoreLegacy();
89 }
90
91 $embedPressPlugin->initialize();
92 new Feature_Enhancer();
93 new Extend_Elementor_Controls();
94 new Extend_CustomPlayer_Controls();
95
96
97 if (is_plugin_active('elementor/elementor.php')) {
98 $embedPressElements = new Embedpress_Elementor_Integration();
99 $embedPressElements->init();
100 }
101
102 Shortcode::register();
103
104 if (!class_exists('\simple_html_dom')) {
105 include_once EMBEDPRESS_PATH_CORE . 'simple_html_dom.php';
106 }
107
108
109 /**
110 * Check is embedpress-pro active
111 */
112 $is_pro_active = false;
113 if (class_exists('EmbedPress_Licensing')) {
114 $is_pro_active = true;
115 }
116
117 function get_embed_type()
118 {
119 // Get the post content
120 $content = get_the_content();
121 // Use regular expressions to find the embed type used in the post
122 preg_match('/\[embedpress.*?type="(.*?)"/', $content, $matches);
123 // Return the embed type
124 if (!empty($matches[1])) {
125 return $matches[1];
126 } else {
127 return false;
128 }
129 }
130
131
132 function ep_track_embed_usage()
133 {
134 // Get the type of embed used (e.g. "youtube", "vimeo", "google_doc", etc.)
135 $embed_type = 'youtube';
136
137 // Log the embed type and user ID in a database
138 global $wpdb;
139 $wpdb->insert('embed_usage_log', array('embed_type' => $embed_type, 'user_id' => get_current_user_id()));
140 }
141 add_action('embed_content', 'ep_track_embed_usage');
142
143
144