PluginProbe
Adminify – White Label, Admin Menu Editor, Login Customizer / 3.1.6
Adminify – White Label, Admin Menu Editor, Login Customizer v3.1.6
4.3.1 4.3.0 4.2.26 4.2.25 4.2.24 4.2.23 4.2.22 4.2.21 4.2.20 4.2.19 4.2.18 4.2.17 4.2.16 4.2.15 4.2.14 4.2.13 4.2.12 4.2.11 4.2.10 4.2.9 4.2.8 4.2.7 4.2.6 4.2.5 4.1.17 All 164 releases
adminify / Inc / Modules / CustomHeaderFooter / CustomHeaderFooter.php

CustomHeaderFooter.php in Adminify – White Label, Admin Menu Editor, Login Customizer 3.1.6, at Inc/Modules/CustomHeaderFooter/CustomHeaderFooter.php

153 lines 5.3 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 <?php
2
3 namespace WPAdminify\Inc\Modules\CustomHeaderFooter;
4
5 use WPAdminify\Inc\Utils ;
6 use WPAdminify\Inc\Modules\CustomHeaderFooter\CustomHeaderFooterModel ;
7 // no direct access allowed
8 if ( !defined( 'ABSPATH' ) ) {
9 exit;
10 }
11 /**
12 * WPAdminify
13 *
14 * @package Custom CSS/JS
15 *
16 * @author Jewel Theme <support@jeweltheme.com>
17 */
18 class CustomHeaderFooter extends CustomHeaderFooterModel
19 {
20 public $url ;
21 public function __construct()
22 {
23
24 if ( is_multisite() && is_network_admin() ) {
25 return;
26 // only display to network admin if multisite is enbaled
27 }
28
29 $this->url = WP_ADMINIFY_URL . 'Inc/Modules/CustomHeaderFooter';
30 $this->options = ( new CustomHeaderFooterSettings() )->get();
31 $this->options = ( !empty($this->options['custom_scripts']) ? $this->options['custom_scripts'] : '' );
32 if ( is_admin() ) {
33 add_action( 'admin_enqueue_scripts', [ $this, 'enqueue_scripts' ] );
34 }
35 add_action( 'wp_head', [ $this, 'adminify_header_scripts' ], 9999 );
36 add_action( 'wp_footer', [ $this, 'adminify_footer_scripts' ], 9999 );
37 add_action( 'the_content', [ $this, 'adminify_content_scripts' ] );
38 }
39
40 // Add Header Scripts
41 public function adminify_header_scripts()
42 {
43 $this->adminify_custom_css_js_script( 'header' );
44 }
45
46 // Add Footer Scripts
47 public function adminify_footer_scripts()
48 {
49 $this->adminify_custom_css_js_script( 'footer' );
50 }
51
52 // Add Footer Scripts
53 public function adminify_content_scripts( $content )
54 {
55 return $this->adminify_custom_css_js_script( false, $content );
56 }
57
58 /**
59 * Render Snippet
60 *
61 * @param [since] 1.0.0
62 *
63 * @return void
64 */
65 public function render_snippet( $value )
66 {
67 // $device_display = wp_is_mobile() ? 'desktop' : 'mobile';
68
69 if ( $value['script_type'] == 'css' ) {
70
71 if ( !empty($value['custom_css']) ) {
72 echo wp_kses_post( "\n<!-- Start of WP Adminify Custom CSS - Snippet#{$value['title']} -->\n" ) ;
73 echo "<style>\n" ;
74 echo wp_kses_post( "\n{$value['custom_css']}\n" ) ;
75 echo "\n</style>" ;
76 echo "\n<!-- /End of WP Adminify Custom CSS -->\n" ;
77 }
78
79 } elseif ( $value['script_type'] === 'js' ) {
80
81 if ( !empty($value['custom_js']) ) {
82 echo wp_kses_post( "\n<!-- Start of WP Adminify Custom JS - Snippet#{$value['title']} -->\n" ) ;
83 echo "<script>\n" ;
84 echo wp_kses_post( "\n{$value['custom_js']}\n" ) ;
85 echo "\n</script>" ;
86 echo "\n<!-- /End of WP Adminify Custom JS -->\n" ;
87 }
88
89 }
90
91 }
92
93 /**
94 * Add Snippet
95 *
96 * @return void
97 */
98 public function adminify_custom_css_js_script( $location = '', $content = '' )
99 {
100 $options = $this->options;
101 $before_content = '';
102 $after_content = '';
103 if ( !empty($options) ) {
104 foreach ( $options as $key => $value ) {
105 $output = '';
106 if ( $value['location'] === $location ) {
107 switch ( $value['display_on'] ) {
108 case 'full_site':
109 $output = $this->render_snippet( $value );
110 break;
111 case 's_posts':
112 break;
113 case 's_pages':
114 break;
115 case 's_categories':
116 break;
117 case 's_custom_posts':
118 break;
119 case 's_tags':
120 break;
121 }
122 }
123 }
124 }
125 return $before_content . $content . $after_content;
126 }
127
128 /**
129 * Scripts/Styles
130 */
131 public function enqueue_scripts()
132 {
133 global $pagenow ;
134 // Load Scripts/Styles only WP Adminify Custom CSS/JS Page
135 if ( 'admin.php' === $pagenow && 'adminify-custom-css-js' === $_GET['page'] ) {
136 $this->header_footer_admin_script();
137 }
138 }
139
140 // WP Adminify Custom CSS/JS Page Style
141 public function header_footer_admin_script()
142 {
143 echo '<style>.wp-adminify-custom-css-js .adminify-container{ max-width:60%; margin:0 auto;} .wp-adminify-custom-css-js .adminify-header-inner{padding:0;}.wp-adminify-custom-css-js .adminify-field-subheading{font-size:20px; padding-left:0;}.adminify-custom-css-js .adminify-nav,.adminify-custom-css-js .adminify-search,.adminify-custom-css-js .adminify-footer,.adminify-custom-css-js .adminify-reset-all,.adminify-custom-css-js .adminify-expand-all,.adminify-custom-css-js .adminify-header-left,.adminify-custom-css-js .adminify-reset-section,.adminify-custom-css-js .adminify-nav-background{display: none !important;}.adminify-custom-css-js .adminify-nav-normal + .adminify-content{margin-left: 0;}
144
145 /* If needed for white top-bar */
146 .adminify-custom-css-js .adminify-header-inner {
147 background-color: #fafafa !important;
148 border-bottom: 1px solid #f5f5f5;
149 }
150 </style>' ;
151 }
152
153 }