PluginProbe
Insert Html Snippet / 1.4.3
Insert Html Snippet v1.4.3
1.4.6 trunk 1.0 1.0.1 1.1 1.1.1 1.2 1.2.1 1.2.2 1.2.3 1.2.4 1.2.5 1.3 1.3.1 1.3.2 1.3.3 1.3.4 1.3.5 1.3.6 1.3.7 1.3.8 1.4 1.4.1 1.4.2 1.4.3 All 27 releases
insert-html-snippet / shortcode-handler.php

shortcode-handler.php in Insert Html Snippet 1.4.3, at shortcode-handler.php

138 lines 3.4 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 <?php
2 if ( ! defined( 'ABSPATH' ) )
3 exit;
4
5 global $wpdb;
6
7 include_once 'admin/constants.php';
8 add_shortcode('xyz-ihs','xyz_ihs_display_content');
9 $table_name = $wpdb->prefix . 'xyz_ihs_short_code';
10 $snippets = $wpdb->get_results("SELECT * FROM $table_name WHERE insertionMethod = 1 AND status = 1");
11
12
13 foreach ($snippets as $snippet) {
14
15 switch ($snippet->insertionLocation) {
16
17
18 case XYZ_IHS_INSERTION_LOCATION['ADMIN_RUN_ON_HEADER']:
19 if (is_admin()) {
20 add_action('admin_head', function() use ($snippet) {
21 echo xyz_execute_ihs_snippet($snippet);
22 }, 10);
23 }
24
25 break;
26 case XYZ_IHS_INSERTION_LOCATION['ADMIN_RUN_ON_FOOTER']:
27 if (is_admin()) {
28
29
30 add_action('admin_footer', function() use ($snippet) {
31 echo xyz_execute_ihs_snippet($snippet);
32 }, 10);
33 }
34
35 break;
36
37
38
39 case XYZ_IHS_INSERTION_LOCATION['FRONTEND_RUN_ON_HEADER']:
40 if (!is_admin()) {
41 add_action('wp_head', function() use ($snippet) {
42 echo xyz_execute_ihs_snippet($snippet);
43 }, 10);
44 }
45
46 break;
47
48 case XYZ_IHS_INSERTION_LOCATION['FRONTEND_RUN_ON_FOOTER']:
49 if (!is_admin()) {
50
51
52 add_action('wp_footer', function() use ($snippet) {
53
54 echo xyz_execute_ihs_snippet($snippet);
55
56 }, 10);
57 }
58
59 break;
60
61
62
63
64
65
66 }
67 }
68
69 function xyz_execute_ihs_snippet($sippetdetails)
70 {
71
72 if($sippetdetails->status==1){
73 $xyz_ihs_content=$sippetdetails->content;
74 if (!empty($xyz_ihs_content)) {
75 return $xyz_ihs_content;
76 } else {
77 return '';
78 }
79
80 }
81 else{
82 return '';
83 }
84
85
86 }
87 /* customization ends */
88
89 function xyz_ihs_display_content($xyz_snippet_name){
90 global $wpdb;
91 $xyz_ihs_exec_in_editor = get_option('xyz_ihs_exec_in_editor');
92 if ( $xyz_ihs_exec_in_editor ) {
93 // Page Builder checks (Elementor, WPBakery, Divi, Beaver Builder)
94 if ( wp_doing_ajax() ) {
95 $builder_actions = ['elementor_preview', 'wpb_pb_preview', 'et_pb_preview'];
96 // Check for Elementor, WPBakery, Divi actions
97 if ( isset( $_REQUEST['action'] ) && in_array( $_REQUEST['action'], $builder_actions, true ) ) {
98 // Allow shortcode execution in page builder previews
99 }
100 // Beaver Builder detection using URL parameters
101 if ( isset( $_REQUEST['fl_builder'] ) && isset( $_REQUEST['fl_builder'] ) ) {
102 // Allow execution for Beaver Builder preview
103 }
104 }
105 // Classic Editor or Gutenberg Editor check (editing posts)
106 if ( is_admin() && isset( $_GET['post'] ) && 'edit' === $_GET['action'] ) {
107 // Allow shortcode execution in Classic Editor or Gutenberg (when editing posts)
108 }
109 } elseif ( is_admin() || ( defined( 'REST_REQUEST' ) && REST_REQUEST ) ) {
110 return ''; // Do not execute shortcode in other admin areas or REST API requests
111 }
112 if(is_array($xyz_snippet_name)&& isset($xyz_snippet_name['snippet'])){
113
114 $snippet_name = $xyz_snippet_name['snippet'];
115
116 $query = $wpdb->get_results($wpdb->prepare( "SELECT * FROM ".$wpdb->prefix."xyz_ihs_short_code WHERE title=%s" ,$snippet_name));
117
118 if(!empty($query))//if(count($query)>0)
119 {
120 foreach ($query as $sippetdetails){
121 if($sippetdetails->status==1)
122 return do_shortcode($sippetdetails->content) ;
123 else
124 return '';
125 break;
126 }
127
128 }else{
129
130 return '';
131 }
132
133 }
134 }
135
136
137 add_filter('widget_text', 'do_shortcode'); // to run shortcodes in text widgets
138