PluginProbe ʕ •ᴥ•ʔ
Cookiebot by Usercentrics – Automatic Cookie Banner for GDPR/CCPA & Google Consent Mode / 4.0.1
Cookiebot by Usercentrics – Automatic Cookie Banner for GDPR/CCPA & Google Consent Mode v4.0.1
4.7.2 4.7.1 trunk 2.3.0 2.4.0 2.4.1 2.4.2 2.5.0 3.0.0 3.0.1 3.1.0 3.10.0 3.10.1 3.11.1 3.11.2 3.11.3 3.2.0 3.3.0 3.3.1 3.4.0 3.4.1 3.4.2 3.5.0 3.6.0 3.6.1 3.6.2 3.6.5 3.6.6 3.7.0 3.7.1 3.8.0 3.9.0 4.0.0 4.0.1 4.0.2 4.0.3 4.1.0 4.1.1 4.2.0 4.2.1 4.2.10 4.2.11 4.2.12 4.2.13 4.2.14 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.3.10 4.3.11 4.3.12 4.3.2 4.3.3 4.3.4 4.3.5 4.3.6 4.3.7 4.3.7.1 4.3.8 4.3.9 4.3.9.1 4.4.0 4.4.1 4.4.2 4.5.0 4.5.1 4.5.10 4.5.11 4.5.2 4.5.3 4.5.4 4.5.5 4.5.6 4.5.7 4.5.8 4.5.9 4.6.0 4.6.1 4.6.2 4.6.3 4.6.4 4.6.5 4.6.6 4.6.7 4.7.0
cookiebot / addons / lib / buffer / buffer-output.php
cookiebot / addons / lib / buffer Last commit date
buffer-output-interface.php 7 years ago buffer-output-tag-interface.php 7 years ago buffer-output-tag.php 4 years ago buffer-output.php 4 years ago
buffer-output.php
66 lines
1 <?php
2
3 namespace cookiebot_addons\lib\buffer;
4
5 class Buffer_Output implements Buffer_Output_Interface {
6
7 /**
8 * Hook tag names
9 *
10 * @var array
11 *
12 * @since 1.2.0
13 */
14 private $tags = array();
15
16 /**
17 * @param $tag_name string Hook name
18 * @param $priority integer Hook priority
19 * @param array $keywords array List of words to search for in the script
20 * @param boolean $use_cache Use Cache
21 *
22 * @since 1.2.0
23 */
24 public function add_tag( $tag_name, $priority, $keywords = array(), $use_cache = true ) {
25 $tag = new Buffer_Output_Tag( $tag_name, $priority, $keywords, $use_cache );
26 $unique_id = $tag->tag . '_' . $tag->priority;
27
28 /**
29 * If tag_name and priority exists
30 * Then merge the keywords
31 */
32 if ( isset( $this->tags[ $unique_id ] ) ) {
33 $this->tags[ $unique_id ]->merge_keywords( $keywords );
34
35 if ( ! $use_cache ) {
36 $this->tags[ $unique_id ]->set_use_cache( false );
37 }
38 } else {
39 $this->tags[ $unique_id ] = $tag;
40 }
41 }
42
43 /**
44 * Process every tag
45 *
46 * @since 1.2.0
47 */
48 public function run_actions() {
49 foreach ( $this->tags as $tag ) {
50 add_action( $tag->tag, array( $tag, 'cookiebot_start_buffer' ), $tag->priority - 1 );
51 add_action( $tag->tag, array( $tag, 'cookiebot_stop_buffer' ), $tag->priority + 1 );
52 }
53 }
54
55 /**
56 * Returns true if tags has more than 0 item
57 *
58 * @return bool
59 *
60 * @since 1.2.0
61 */
62 public function has_action() {
63 return ( count( $this->tags ) > 0 ) ? true : false;
64 }
65 }
66