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 / Loader.php
embedpress / EmbedPress Last commit date
AMP 2 years ago Elementor 2 years ago Ends 2 years ago Includes 2 years ago Plugins 2 years ago Providers 2 years ago ThirdParty 2 years ago AutoLoader.php 2 years ago Compatibility.php 2 years ago Core.php 2 years ago CoreLegacy.php 4 years ago DisablerLegacy.php 2 years ago Loader.php 2 years ago RestAPI.php 2 years ago Shortcode.php 2 years ago index.html 7 years ago simple_html_dom.php 4 years ago
Loader.php
141 lines
1 <?php
2
3 namespace EmbedPress;
4
5 (defined('ABSPATH') && defined('EMBEDPRESS_IS_LOADED')) or die("No direct script access allowed.");
6
7 /**
8 * Entity responsible for maintaining and registering all hooks that power the plugin.
9 *
10 * @package EmbedPress
11 * @author EmbedPress <help@embedpress.com>
12 * @copyright Copyright (C) 2023 WPDeveloper. All rights reserved.
13 * @license GPLv3 or later
14 * @since 1.0.0
15 */
16 class Loader
17 {
18 /**
19 * The array of actions registered with WordPress.
20 *
21 * @since 1.0.0
22 * @access protected
23 *
24 * @var array $actions The actions registered with WordPress to fire when the plugin loads.
25 */
26 protected $actions;
27
28 /**
29 * The array of filters registered with WordPress.
30 *
31 * @since 1.0.0
32 * @access protected
33 *
34 * @var array $filters The filters registered with WordPress to fire when the plugin loads.
35 */
36 protected $filters;
37
38 /**
39 * Initialize the collections used to maintain the actions and filters.
40 *
41 * @since 1.0.0
42 *
43 * @return void
44 */
45 public function __construct()
46 {
47 $this->actions = [];
48 $this->filters = [];
49 }
50
51 /**
52 * Add a new action to the collection to be registered with WordPress.
53 *
54 * @since 1.0.0
55 *
56 * @param string $hook The name of the WordPress action that is being registered.
57 * @param object $component A reference to the instance of the object on which the action is defined.
58 * @param string $callback The name of the function definition on the $component.
59 * @param int $priority Optional. he priority at which the function should be fired. Default is 10.
60 * @param int $accepted_args Optional. The number of arguments that should be passed to the $callback. Default
61 * is 1.
62 *
63 * @return void
64 */
65 public function add_action($hook, $component, $callback, $priority = 10, $accepted_args = 1)
66 {
67 $this->actions = $this->add($this->actions, $hook, $component, $callback, $priority, $accepted_args);
68 }
69
70 /**
71 * Add a new filter to the collection to be registered with WordPress.
72 *
73 * @since 1.0.0
74 *
75 * @param string $hook The name of the WordPress filter that is being registered.
76 * @param object $component A reference to the instance of the object on which the filter is defined.
77 * @param string $callback The name of the function definition on the $component.
78 * @param int $priority Optional. he priority at which the function should be fired. Default is 10.
79 * @param int $accepted_args Optional. The number of arguments that should be passed to the $callback. Default
80 * is 1.
81 *
82 * @return void
83 */
84 public function add_filter($hook, $component, $callback, $priority = 10, $accepted_args = 1)
85 {
86 $this->filters = $this->add($this->filters, $hook, $component, $callback, $priority, $accepted_args);
87 }
88
89 /**
90 * Method that is used to register the actions and hooks into a single collection.
91 *
92 * @since 1.0.0
93 * @access private
94 *
95 * @param array $hooks The collection of hooks that is being registered (that is, actions or filters).
96 * @param string $hook The name of the WordPress filter that is being registered.
97 * @param object $component A reference to the instance of the object on which the filter is defined.
98 * @param string $callback The name of the function definition on the $component.
99 * @param int $priority The priority at which the function should be fired.
100 * @param int $accepted_args The number of arguments that should be passed to the $callback.
101 *
102 * @return array The collection of actions and filters registered with WordPress.
103 */
104 private function add($hooks, $hook, $component, $callback, $priority, $accepted_args)
105 {
106 $hooks[] = [
107 'hook' => $hook,
108 'component' => $component,
109 'callback' => $callback,
110 'priority' => $priority,
111 'accepted_args' => $accepted_args,
112 ];
113
114 return $hooks;
115 }
116
117 /**
118 * Register all required filters and actions with WordPress.
119 *
120 * @since 1.0.0
121 *
122 * @return void
123 */
124 public function run()
125 {
126 foreach ($this->filters as $hook) {
127 add_filter($hook['hook'], [
128 $hook['component'],
129 $hook['callback'],
130 ], $hook['priority'], $hook['accepted_args']);
131 }
132
133 foreach ($this->actions as $hook) {
134 add_action($hook['hook'], [
135 $hook['component'],
136 $hook['callback'],
137 ], $hook['priority'], $hook['accepted_args']);
138 }
139 }
140 }
141