AMP for WP – Accelerated Mobile Pages - Version 1.0.77.9

Version Description

(29th June 2021) = * Added: AMP widget for adding amp code #5064 * Added: Filter to modify the WP Rocket CDN URL #5076 * Fixed: Meta description of Rank Math SEO plugin not showing on amp #5071 * Fixed: Slide Anything Plugin slider content is not showing #5073 * Fixed: When Convert AMP to WP theme Option is enabled, it breaks the Design #5074 * Fixed: Remove preload if Featured Image option is off in AMP options panel #5077 * Fixed: Icons are not loading when visiting first time or after clearing cache #5060

Download this release

Release Info

Developer mohammed_kaludi
Plugin Icon 128x128 AMP for WP – Accelerated Mobile Pages
Version 1.0.77.9
Comparing to
See all releases

Code changes from version 1.0.77.8 to 1.0.77.9

README.md CHANGED
@@ -4,7 +4,7 @@ Tags: AMP, accelerated mobile pages, mobile, amp project, google amp, amp wp, go
4
  Donate link: https://www.paypal.me/Kaludi/25
5
  Requires at least: 3.0
6
  Tested up to: 5.7
7
- Stable tag: 1.0.77.8
8
  License: GPLv2 or later
9
  License URI: http://www.gnu.org/licenses/gpl-2.0.html
10
 
@@ -193,6 +193,15 @@ Device testing done through [BrowserStack](https://www.browserstack.com)
193
 
194
  == Changelog ==
195
 
 
 
 
 
 
 
 
 
 
196
  = 1.0.77.8 (23rd June 2021) =
197
  * Added: Webp images support with LiteSpeed Cache plugin #5051
198
  * Added: Primary category compatibility of all SEO plugins #5049
4
  Donate link: https://www.paypal.me/Kaludi/25
5
  Requires at least: 3.0
6
  Tested up to: 5.7
7
+ Stable tag: 1.0.77.9
8
  License: GPLv2 or later
9
  License URI: http://www.gnu.org/licenses/gpl-2.0.html
10
 
193
 
194
  == Changelog ==
195
 
196
+ = 1.0.77.9 (29th June 2021) =
197
+ * Added: AMP widget for adding amp code #5064
198
+ * Added: Filter to modify the WP Rocket CDN URL #5076
199
+ * Fixed: Meta description of Rank Math SEO plugin not showing on amp #5071
200
+ * Fixed: Slide Anything Plugin slider content is not showing #5073
201
+ * Fixed: When Convert AMP to WP theme Option is enabled, it breaks the Design #5074
202
+ * Fixed: Remove preload if Featured Image option is off in AMP options panel #5077
203
+ * Fixed: Icons are not loading when visiting first time or after clearing cache #5060
204
+
205
  = 1.0.77.8 (23rd June 2021) =
206
  * Added: Webp images support with LiteSpeed Cache plugin #5051
207
  * Added: Primary category compatibility of all SEO plugins #5049
accelerated-moblie-pages.php CHANGED
@@ -3,7 +3,7 @@
3
  Plugin Name: Accelerated Mobile Pages
4
  Plugin URI: https://wordpress.org/plugins/accelerated-mobile-pages/
5
  Description: AMP for WP - Accelerated Mobile Pages for WordPress
6
- Version: 1.0.77.8
7
  Author: Ahmed Kaludi, Mohammed Kaludi
8
  Author URI: https://ampforwp.com/
9
  Donate link: https://www.paypal.me/Kaludi/25
@@ -20,7 +20,7 @@ define('AMPFORWP_PLUGIN_DIR_URI', plugin_dir_url(__FILE__));
20
  define('AMPFORWP_DISQUS_URL',plugin_dir_url(__FILE__).'includes/disqus.html');
21
  define('AMPFORWP_IMAGE_DIR',plugin_dir_url(__FILE__).'images');
22
  define('AMPFORWP_MAIN_PLUGIN_DIR', plugin_dir_path( __DIR__ ) );
23
- define('AMPFORWP_VERSION','1.0.77.8');
24
  define('AMPFORWP_EXTENSION_DIR',plugin_dir_path(__FILE__).'includes/options/extensions');
25
  if(!defined('AMPFROWP_HOST_NAME')){
26
  $urlinfo = get_bloginfo('url');
@@ -659,7 +659,7 @@ add_action('init','ampforwp_plugin_init', 9);
659
  * to be used be used in before or after Loop
660
  */
661
  ampforwp_require_file( AMPFORWP_PLUGIN_DIR.'/templates/woo-widget.php' );
662
-
663
 
664
  /*
665
  * Including core AMP plugin files and removing any other things if necessary
@@ -875,6 +875,9 @@ if ( ! function_exists('ampforwp_customizer_is_enabled') ) {
875
  // Get Settings from Redux #2177 & #2911
876
  function ampforwp_get_setting( $opt_name='', $child_option='', $sanitize_method='' ){
877
  global $redux_builder_amp;
 
 
 
878
  if(empty($redux_builder_amp)){
879
  $redux_builder_amp = (array) get_option('redux_builder_amp');
880
  }
3
  Plugin Name: Accelerated Mobile Pages
4
  Plugin URI: https://wordpress.org/plugins/accelerated-mobile-pages/
5
  Description: AMP for WP - Accelerated Mobile Pages for WordPress
6
+ Version: 1.0.77.9
7
  Author: Ahmed Kaludi, Mohammed Kaludi
8
  Author URI: https://ampforwp.com/
9
  Donate link: https://www.paypal.me/Kaludi/25
20
  define('AMPFORWP_DISQUS_URL',plugin_dir_url(__FILE__).'includes/disqus.html');
21
  define('AMPFORWP_IMAGE_DIR',plugin_dir_url(__FILE__).'images');
22
  define('AMPFORWP_MAIN_PLUGIN_DIR', plugin_dir_path( __DIR__ ) );
23
+ define('AMPFORWP_VERSION','1.0.77.9');
24
  define('AMPFORWP_EXTENSION_DIR',plugin_dir_path(__FILE__).'includes/options/extensions');
25
  if(!defined('AMPFROWP_HOST_NAME')){
26
  $urlinfo = get_bloginfo('url');
659
  * to be used be used in before or after Loop
660
  */
661
  ampforwp_require_file( AMPFORWP_PLUGIN_DIR.'/templates/woo-widget.php' );
662
+ ampforwp_require_file( AMPFORWP_PLUGIN_DIR.'/templates/amp-code-widget.php' );
663
 
664
  /*
665
  * Including core AMP plugin files and removing any other things if necessary
875
  // Get Settings from Redux #2177 & #2911
876
  function ampforwp_get_setting( $opt_name='', $child_option='', $sanitize_method='' ){
877
  global $redux_builder_amp;
878
+ if (is_plugin_active('amp/amp.php')) {
879
+ unset($redux_builder_amp['ampforwp-seo-selection']);
880
+ }
881
  if(empty($redux_builder_amp)){
882
  $redux_builder_amp = (array) get_option('redux_builder_amp');
883
  }
changelog.txt CHANGED
@@ -1,5 +1,14 @@
1
  == Changelog ==
2
 
 
 
 
 
 
 
 
 
 
3
  = 1.0.77.8 (23rd June 2021) =
4
  * Added: Webp images support with LiteSpeed Cache plugin #5051
5
  * Added: Primary category compatibility of all SEO plugins #5049
1
  == Changelog ==
2
 
3
+ = 1.0.77.9 (29th June 2021) =
4
+ * Added: AMP widget for adding amp code #5064
5
+ * Added: Filter to modify the WP Rocket CDN URL #5076
6
+ * Fixed: Meta description of Rank Math SEO plugin not showing on amp #5071
7
+ * Fixed: Slide Anything Plugin slider content is not showing #5073
8
+ * Fixed: When Convert AMP to WP theme Option is enabled, it breaks the Design #5074
9
+ * Fixed: Remove preload if Featured Image option is off in AMP options panel #5077
10
+ * Fixed: Icons are not loading when visiting first time or after clearing cache #5060
11
+
12
  = 1.0.77.8 (23rd June 2021) =
13
  * Added: Webp images support with LiteSpeed Cache plugin #5051
14
  * Added: Primary category compatibility of all SEO plugins #5049
classes/class-ampforwp-slide-anything-embed.php CHANGED
@@ -305,7 +305,7 @@ class AMPFORWP_Slide_Anything_Embed_Handler extends AMPforWP\AMPVendor\AMP_Base_
305
  $returnCompleteHtml = str_replace('{{with_carousel_thumbnail}}', $amp_carousel_thumbnail, $returnCompleteHtml);
306
  $returnCompleteHtml = str_replace('{{amp_image_lightbox}}', $amp_image_lightbox, $returnCompleteHtml);
307
  $returnCompleteHtml = str_replace('{{with_images}}', implode( PHP_EOL, $images ), $returnCompleteHtml);
308
- $returnCompleteHtml = preg_replace('/<div slideampcontent="(.*?)"><\/div>/', '<div>$1</div>', $returnCompleteHtml);
309
  $returnCompleteHtml = str_replace('&lt;', '<', $returnCompleteHtml);
310
  $returnCompleteHtml = str_replace('&gt;', '>', $returnCompleteHtml);
311
  return $returnCompleteHtml;
305
  $returnCompleteHtml = str_replace('{{with_carousel_thumbnail}}', $amp_carousel_thumbnail, $returnCompleteHtml);
306
  $returnCompleteHtml = str_replace('{{amp_image_lightbox}}', $amp_image_lightbox, $returnCompleteHtml);
307
  $returnCompleteHtml = str_replace('{{with_images}}', implode( PHP_EOL, $images ), $returnCompleteHtml);
308
+ $returnCompleteHtml = preg_replace('/<div slideampcontent="(.*?)"><\/div>/s', '<div>$1</div>', $returnCompleteHtml);
309
  $returnCompleteHtml = str_replace('&lt;', '<', $returnCompleteHtml);
310
  $returnCompleteHtml = str_replace('&gt;', '>', $returnCompleteHtml);
311
  return $returnCompleteHtml;
includes/features/performance/performance-functions.php CHANGED
@@ -308,7 +308,7 @@ function ampforwp_white_list_selectors($completeContent){
308
  if( !function_exists("ampforwp_tree_shaking_purify_amphtml") ){
309
  function ampforwp_tree_shaking_purify_amphtml($completeContent){
310
  $white_lists = ampforwp_white_list_selectors($completeContent);
311
- if( function_exists('ampforwp_purify_amphtmls') ){
312
  // compatibility with AMP Pagebuilder Compatibility
313
  return $completeContent;
314
  }
308
  if( !function_exists("ampforwp_tree_shaking_purify_amphtml") ){
309
  function ampforwp_tree_shaking_purify_amphtml($completeContent){
310
  $white_lists = ampforwp_white_list_selectors($completeContent);
311
+ if( function_exists('ampforwp_purify_amphtmls') || ampforwp_get_setting('ampforwp-amp-convert-to-wp') ){
312
  // compatibility with AMP Pagebuilder Compatibility
313
  return $completeContent;
314
  }
includes/vendor/amp/includes/amp-post-template-actions.php CHANGED
@@ -59,7 +59,7 @@ function amp_post_template_add_cached_link($amp_template) {
59
  $thumb_id = get_post_thumbnail_id(ampforwp_get_the_ID());
60
  $image_size = ampforwp_get_setting('swift-featued-image-size');
61
  $image = wp_get_attachment_image_src( $thumb_id, $image_size );
62
- if($image!="" && isset($image[0])){
63
  if(function_exists('_imagify_init') || function_exists('webp_express_process_post')){
64
  $image[0] = esc_url($image[0]).".webp";
65
  }?>
59
  $thumb_id = get_post_thumbnail_id(ampforwp_get_the_ID());
60
  $image_size = ampforwp_get_setting('swift-featued-image-size');
61
  $image = wp_get_attachment_image_src( $thumb_id, $image_size );
62
+ if($image!="" && isset($image[0]) && ampforwp_get_setting('swift-featued-image')){
63
  if(function_exists('_imagify_init') || function_exists('webp_express_process_post')){
64
  $image[0] = esc_url($image[0]).".webp";
65
  }?>
readme.txt CHANGED
@@ -4,7 +4,7 @@ Tags: AMP, accelerated mobile pages, mobile, amp project, google amp, amp wp, go
4
  Donate link: https://www.paypal.me/Kaludi/25
5
  Requires at least: 3.0
6
  Tested up to: 5.7
7
- Stable tag: 1.0.77.8
8
  License: GPLv2 or later
9
  License URI: http://www.gnu.org/licenses/gpl-2.0.html
10
 
@@ -190,6 +190,15 @@ You can contact us from [here](https://ampforwp.com/contact/)
190
 
191
  == Changelog ==
192
 
 
 
 
 
 
 
 
 
 
193
  = 1.0.77.8 (23rd June 2021) =
194
  * Added: Webp images support with LiteSpeed Cache plugin #5051
195
  * Added: Primary category compatibility of all SEO plugins #5049
4
  Donate link: https://www.paypal.me/Kaludi/25
5
  Requires at least: 3.0
6
  Tested up to: 5.7
7
+ Stable tag: 1.0.77.9
8
  License: GPLv2 or later
9
  License URI: http://www.gnu.org/licenses/gpl-2.0.html
10
 
190
 
191
  == Changelog ==
192
 
193
+ = 1.0.77.9 (29th June 2021) =
194
+ * Added: AMP widget for adding amp code #5064
195
+ * Added: Filter to modify the WP Rocket CDN URL #5076
196
+ * Fixed: Meta description of Rank Math SEO plugin not showing on amp #5071
197
+ * Fixed: Slide Anything Plugin slider content is not showing #5073
198
+ * Fixed: When Convert AMP to WP theme Option is enabled, it breaks the Design #5074
199
+ * Fixed: Remove preload if Featured Image option is off in AMP options panel #5077
200
+ * Fixed: Icons are not loading when visiting first time or after clearing cache #5060
201
+
202
  = 1.0.77.8 (23rd June 2021) =
203
  * Added: Webp images support with LiteSpeed Cache plugin #5051
204
  * Added: Primary category compatibility of all SEO plugins #5049
templates/amp-code-widget.php ADDED
@@ -0,0 +1,120 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ // Exit if accessed directly
3
+ if ( ! defined( 'ABSPATH' ) ) {
4
+ exit;
5
+ }
6
+
7
+ class AMPFORWP_AMP_Code_Widget extends WP_Widget {
8
+ protected $registered = false;
9
+ protected $default_instance = array(
10
+ 'title' => '',
11
+ 'content' => '',
12
+ );
13
+
14
+ // Set up the widget name and description.
15
+ public function __construct() {
16
+ $widget_options = array(
17
+ 'classname' => 'AMPFORWP_AMP_Code_Widget',
18
+ 'description' => esc_html__('You can add the AMP code in this widget which will appear in AMP Pages','accelerated-mobile-pages')
19
+ );
20
+ parent::__construct( 'AMPFORWP_AMP_Code_Widget', esc_html__('Custom AMP Code','accelerated-mobile-pages'), $widget_options );
21
+ }
22
+
23
+ public function _register_one( $number = -1 ) {
24
+ parent::_register_one( $number );
25
+ if ( $this->registered ) {
26
+ return;
27
+ }
28
+ $this->registered = true;
29
+
30
+ wp_add_inline_script( 'custom-html-widgets', sprintf( 'wp.customHtmlWidgets.idBases.push( %s );', wp_json_encode( $this->id_base ) ) );
31
+ add_action( 'admin_footer-widgets.php', array( 'AMPFORWP_AMP_Code_Widget', 'render_control_template_scripts' ) );
32
+ }
33
+
34
+
35
+ public function widget( $args, $instance ) {
36
+ $simulated_text_widget_instance = array_merge(
37
+ $instance,
38
+ array(
39
+ 'text' => isset( $instance['content'] ) ? $instance['content'] : '',
40
+ 'filter' => false, // Because wpautop is not applied.
41
+ 'visual' => false, // Because it wasn't created in TinyMCE.
42
+ )
43
+ );
44
+ unset( $simulated_text_widget_instance['content'] ); // Was moved to 'text' prop.
45
+
46
+ /** This filter is documented in wp-includes/widgets/class-wp-widget-text.php */
47
+ $content = apply_filters( 'widget_text', $instance['content'], $simulated_text_widget_instance, $this );
48
+
49
+ // Adds 'noopener' relationship, without duplicating values, to all HTML A elements that have a target.
50
+ $content = wp_targeted_link_rel( $content );
51
+ $args['before_widget'] = preg_replace( '/(?<=\sclass=["\'])/', 'widget_text ', $args['before_widget'] );
52
+
53
+ echo $args['before_widget'];
54
+ echo '<div class="textwidget custom-html-widget">'; // The textwidget class is for theme styling compatibility.
55
+ echo $content;
56
+ echo '</div>';
57
+ echo $args['after_widget'];
58
+ }
59
+
60
+ public function form( $instance ) {
61
+ $instance = wp_parse_args( (array) $instance, $this->default_instance );
62
+ ?>
63
+ <input id="<?php echo $this->get_field_id( 'title' ); ?>" name="<?php echo $this->get_field_name( 'title' ); ?>" class="title sync-input" type="hidden" value="<?php echo esc_attr( $instance['title'] ); ?>"/>
64
+ <textarea id="<?php echo $this->get_field_id( 'content' ); ?>" name="<?php echo $this->get_field_name( 'content' ); ?>" class="content sync-input" hidden><?php echo esc_textarea( $instance['content'] ); ?></textarea>
65
+ <?php
66
+ }
67
+ public static function render_control_template_scripts() { ?>
68
+ <script type="text/html" id="tmpl-widget-custom-html-control-fields">
69
+ <# var elementIdPrefix = 'el' + String( Math.random() ).replace( /\D/g, '' ) + '_' #>
70
+
71
+ <p>
72
+ <label for="{{ elementIdPrefix }}title"><?php esc_html_e( 'Title:' ); ?></label>
73
+ <input id="{{ elementIdPrefix }}title" type="text" class="widefat title">
74
+ </p>
75
+
76
+ <p>
77
+ <label for="{{ elementIdPrefix }}content" id="{{ elementIdPrefix }}content-label"><?php esc_html_e( 'Content:' ); ?></label>
78
+ <textarea id="{{ elementIdPrefix }}content" class="widefat code content" rows="16" cols="20"></textarea>
79
+ </p>
80
+
81
+ <?php if ( ! current_user_can( 'unfiltered_html' ) ) : ?>
82
+ <?php
83
+ $probably_unsafe_html = array( 'script', 'iframe', 'form', 'input', 'style' );
84
+ $allowed_html = wp_kses_allowed_html( 'post' );
85
+ $disallowed_html = array_diff( $probably_unsafe_html, array_keys( $allowed_html ) );
86
+ ?>
87
+ <?php if ( ! empty( $disallowed_html ) ) : ?>
88
+ <# if ( data.codeEditorDisabled ) { #>
89
+ <p>
90
+ <?php _e( 'Some HTML tags are not permitted, including:' ); ?>
91
+ <code><?php echo implode( '</code>, <code>', $disallowed_html ); ?></code>
92
+ </p>
93
+ <# } #>
94
+ <?php endif; ?>
95
+ <?php endif; ?>
96
+
97
+ <div class="code-editor-error-container"></div>
98
+ </script>
99
+ <?php
100
+ }
101
+
102
+ public function update( $new_instance, $old_instance ) {
103
+ $instance = array_merge( $this->default_instance, $old_instance );
104
+ $instance['title'] = sanitize_text_field( $new_instance['title'] );
105
+ if ( current_user_can( 'unfiltered_html' ) ) {
106
+ $instance['content'] = $new_instance['content'];
107
+ } else {
108
+ $instance['content'] = wp_kses_post( $new_instance['content'] );
109
+ }
110
+ return $instance;
111
+ }
112
+ }
113
+
114
+ // Register the widget.
115
+ function ampforwp_register_amp_code_widget() {
116
+ register_widget( 'AMPFORWP_AMP_Code_Widget' );
117
+ }
118
+ add_action( 'widgets_init', 'ampforwp_register_amp_code_widget' );
119
+
120
+ ?>
templates/design-manager/swift/style.php CHANGED
@@ -34,11 +34,11 @@ if ( empty($ampforwp_font_icon) ) {
34
  ?>
35
  <?php if(1==ampforwp_get_setting('ampforwp-google-font-switch') && ( !isset($redux_builder_amp['amp_font_selector']) || $redux_builder_amp['amp_font_selector'] == 1 || empty($redux_builder_amp['amp_font_selector']) ) ) {
36
  if(!ampforwp_levelup_compatibility('levelup_theme_and_elementor')){ // Level up Condition starts ?>
37
- @font-face {font-family: 'Poppins';font-display: optional;font-style: normal;font-weight: 300;src: local('Poppins Light'), local('Poppins-Light'), url('<?php echo $icon_url ?>fonts/Poppins-Light.ttf');}
38
- @font-face {font-family: 'Poppins';font-display: optional;font-style: normal;font-weight: 400;src: local('Poppins Regular'), local('Poppins-Regular'), url('<?php echo $icon_url ?>fonts/Poppins-Regular.ttf');}
39
- @font-face {font-family: 'Poppins';font-display: optional;font-style: normal;font-weight: 500;src: local('Poppins Medium'), local('Poppins-Medium'), url('<?php echo $icon_url ?>fonts/Poppins-Medium.ttf');}
40
- @font-face {font-family: 'Poppins';font-display: optional;font-style: normal;font-weight: 600;src: local('Poppins SemiBold'), local('Poppins-SemiBold'), url('<?php echo $icon_url ?>fonts/Poppins-SemiBold.ttf'); }
41
- @font-face {font-family: 'Poppins';font-display: optional;font-style: normal;font-weight: 700;src: local('Poppins Bold'), local('Poppins-Bold'), url('<?php echo $icon_url ?>fonts/Poppins-Bold.ttf'); }
42
  <?php } // Level up Condition ends
43
  } ?>
44
  <?php
@@ -102,7 +102,7 @@ if( class_exists('\Elementor\Plugin') && \Elementor\Plugin::$instance->db->is_bu
102
  else{ ?>.cntr {max-width: 1100px;margin: 0 auto;width:100%;padding:0px 20px} <?php } ?>
103
  <?php if(!ampforwp_levelup_compatibility('levelup_elementor') ){ // Level up Condition starts
104
  if ( $ampforwp_font_icon == 'swift-icons' || ( $ampforwp_font_icon == 'fontawesome-icons' && checkAMPforPageBuilderStatus(ampforwp_get_the_ID()) ) ){ ?>
105
- @font-face {font-family: 'icomoon';font-display: optional;font-style: normal;font-weight: normal;src: local('icomoon'), local('icomoon'), url('<?php echo $icon_url ?>fonts/icomoon.ttf');}
106
  <?php } // Swift icomoon icons condition ends ?>
107
  header .cntr{
108
  <?php if( ampforwp_get_setting('swift-width-control') ){?>
34
  ?>
35
  <?php if(1==ampforwp_get_setting('ampforwp-google-font-switch') && ( !isset($redux_builder_amp['amp_font_selector']) || $redux_builder_amp['amp_font_selector'] == 1 || empty($redux_builder_amp['amp_font_selector']) ) ) {
36
  if(!ampforwp_levelup_compatibility('levelup_theme_and_elementor')){ // Level up Condition starts ?>
37
+ @font-face {font-family: 'Poppins';font-display: swap;font-style: normal;font-weight: 300;src: local('Poppins Light'), local('Poppins-Light'), url('<?php echo $icon_url ?>fonts/Poppins-Light.ttf');}
38
+ @font-face {font-family: 'Poppins';font-display: swap;font-style: normal;font-weight: 400;src: local('Poppins Regular'), local('Poppins-Regular'), url('<?php echo $icon_url ?>fonts/Poppins-Regular.ttf');}
39
+ @font-face {font-family: 'Poppins';font-display: swap;font-style: normal;font-weight: 500;src: local('Poppins Medium'), local('Poppins-Medium'), url('<?php echo $icon_url ?>fonts/Poppins-Medium.ttf');}
40
+ @font-face {font-family: 'Poppins';font-display: swap;font-style: normal;font-weight: 600;src: local('Poppins SemiBold'), local('Poppins-SemiBold'), url('<?php echo $icon_url ?>fonts/Poppins-SemiBold.ttf'); }
41
+ @font-face {font-family: 'Poppins';font-display: swap;font-style: normal;font-weight: 700;src: local('Poppins Bold'), local('Poppins-Bold'), url('<?php echo $icon_url ?>fonts/Poppins-Bold.ttf'); }
42
  <?php } // Level up Condition ends
43
  } ?>
44
  <?php
102
  else{ ?>.cntr {max-width: 1100px;margin: 0 auto;width:100%;padding:0px 20px} <?php } ?>
103
  <?php if(!ampforwp_levelup_compatibility('levelup_elementor') ){ // Level up Condition starts
104
  if ( $ampforwp_font_icon == 'swift-icons' || ( $ampforwp_font_icon == 'fontawesome-icons' && checkAMPforPageBuilderStatus(ampforwp_get_the_ID()) ) ){ ?>
105
+ @font-face {font-family: 'icomoon';font-display: swap;font-style: normal;font-weight: normal;src: local('icomoon'), local('icomoon'), url('<?php echo $icon_url ?>fonts/icomoon.ttf');}
106
  <?php } // Swift icomoon icons condition ends ?>
107
  header .cntr{
108
  <?php if( ampforwp_get_setting('swift-width-control') ){?>
templates/features.php CHANGED
@@ -9103,6 +9103,7 @@ function ampforwp_wp_rocket_compatibility($content){
9103
  }
9104
  if(isset($cnds_arr['images'])){
9105
  $img_cdn_url = $cnds_arr['images'];
 
9106
  }else if(isset($cnds_arr['all'])){
9107
  $img_cdn_url = $cnds_arr['all'];
9108
  }
9103
  }
9104
  if(isset($cnds_arr['images'])){
9105
  $img_cdn_url = $cnds_arr['images'];
9106
+ $img_cdn_url = apply_filters( 'ampforwp_modify_wp_rocket_cdn_url', $img_cdn_url );
9107
  }else if(isset($cnds_arr['all'])){
9108
  $img_cdn_url = $cnds_arr['all'];
9109
  }