WordPress Infinite Scroll – Ajax Load More - Version 3.4.0

Version Description

  • February 13, 2018 =
  • NEW - Adding various functionality to support the new Filters add-on.
  • FIX - Fixed bug with passing search parameter to Preloaded add-on.
  • FIX - Fixed issue with license activation for Theme Repeaters, SEO and User add-ons.
  • UPDATE - Updated default loading transition to be fade, previously slide.
  • UPDATE - Added support for multiple instances of Ajax Load More and Masonry.
  • UPDATE - Fixed issue with the Post ID field in the ACF section of shortcode builder.
  • UPDATE - Various UI/UX enhancements
Download this release

Release Info

Developer dcooney
Plugin Icon 128x128 WordPress Infinite Scroll – Ajax Load More
Version 3.4.0
Comparing to
See all releases

Code changes from version 3.3.1 to 3.4.0

README.txt CHANGED
@@ -3,8 +3,8 @@ Contributors: dcooney, connekthq
3
  Donate link: https://connekthq.com/donate/
4
  Tags: infinite scroll, infinite scrolling, scroll, infinite, lazy load, lazy loading, endless scroll, pagination, ajax pagination, ajax, ajax posts, ajax load posts, woocommerce, ajax load more
5
  Requires at least: 3.6
6
- Tested up to: 4.9.1
7
- Stable tag: 3.3.1
8
  License: GPLv2 or later
9
  License URI: http://www.gnu.org/licenses/gpl-2.0.html
10
 
@@ -38,6 +38,7 @@ Check out the **[demo site](https://connekthq.com/plugins/ajax-load-more/)** for
38
 
39
 
40
  #### What's New 3.0
 
41
  * **[User Query](https://connekthq.com/plugins/ajax-load-more/add-ons/users/)** - Query and display a list of WordPress users by role using a `WP_User_Query` and Ajax Load More.
42
  * **[Advanced Custom Fields](https://connekthq.com/plugins/ajax-load-more/examples/advanced-custom-fields/)** - Compatibility and integration added for infinite scrolling Flexible Content, Gallery, Relationship and Repeater fields for Advanced Custom Fields.
43
  * **[Masonry](https://connekthq.com/plugins/ajax-load-more/examples/masonry/)** - Built-in support and functionality for Masonry layouts.
@@ -139,7 +140,6 @@ Ajax Load More accepts a number of parameters that are passed to the WordPress q
139
  * **[Attachments](https://connekthq.com/plugins/ajax-load-more/examples/attachments/)** - Endless scroll post attachments.
140
  * **[Destroy After](https://connekthq.com/plugins/ajax-load-more/examples/destroy-after/)** - Remove Ajax Load More functionality after 'n' number of pages.
141
  * **[Event Listing](https://connekthq.com/plugins/ajax-load-more/examples/event-listing/)** - Ordering and listing events by custom field date.
142
- * **[Fade Transition](https://connekthq.com/plugins/ajax-load-more/examples/fade-transition/)** - Elements fade in as posts are loaded.
143
  * **[Filtering](https://connekthq.com/plugins/ajax-load-more/examples/filtering/)** - Reset and filter an Ajax Load More instance.
144
  * **[Flexbox](https://connekthq.com/plugins/ajax-load-more/examples/flexbox/)** - Creating a responsive Ajax Load More grid with Flexbox.
145
  * **[Infinite Scroll](https://connekthq.com/plugins/ajax-load-more/examples/infinite-scroll/)** - A look at the new loading functionality and styles.
@@ -172,6 +172,7 @@ The [Custom Repeater Add-On](https://connekthq.com/plugins/ajax-load-more/custom
172
  * **[Call to Actions](https://connekthq.com/plugins/ajax-load-more/add-ons/call-to-actions/)**: Extend Ajax Load More with advertisement and call to action content blocks.
173
  * **[Comments](https://connekthq.com/plugins/ajax-load-more/add-ons/comments/)**: Load and display WordPress blog comments using the core Ajax Load More infinite scroll functionality.
174
  * **[Custom Repeaters](https://connekthq.com/plugins/ajax-load-more/add-ons/custom-repeaters/)**: Create, modify and delete repeater templates as you need them with absolutely zero restrictions.
 
175
  * **[Layouts](https://connekthq.com/plugins/ajax-load-more/add-ons/layouts/)**: Predefined responsive layouts for Ajax Load More repeater templates.
176
  * **[Next Page](https://connekthq.com/plugins/ajax-load-more/add-ons/next-page/)**: Infinite scroll multipage WordPress content with Ajax Load More and the Next Page add-on.
177
  * **[Paging](https://connekthq.com/plugins/ajax-load-more/add-ons/paging/)**: Replace the default lazy load/infinite scroll functionality of Ajax Load More with a numbered navigation system.
@@ -369,6 +370,16 @@ How to install Ajax Load More.
369
 
370
  == Changelog ==
371
 
 
 
 
 
 
 
 
 
 
 
372
  = 3.3.1 - December 7, 2017 =
373
 
374
  ### Notice
3
  Donate link: https://connekthq.com/donate/
4
  Tags: infinite scroll, infinite scrolling, scroll, infinite, lazy load, lazy loading, endless scroll, pagination, ajax pagination, ajax, ajax posts, ajax load posts, woocommerce, ajax load more
5
  Requires at least: 3.6
6
+ Tested up to: 4.9.4
7
+ Stable tag: 3.4.0
8
  License: GPLv2 or later
9
  License URI: http://www.gnu.org/licenses/gpl-2.0.html
10
 
38
 
39
 
40
  #### What's New 3.0
41
+ * **[Filters](https://connekthq.com/plugins/ajax-load-more/add-ons/filters/)** - The Filters add-on provides front-end and admin functionality for building and managing Ajax filters.
42
  * **[User Query](https://connekthq.com/plugins/ajax-load-more/add-ons/users/)** - Query and display a list of WordPress users by role using a `WP_User_Query` and Ajax Load More.
43
  * **[Advanced Custom Fields](https://connekthq.com/plugins/ajax-load-more/examples/advanced-custom-fields/)** - Compatibility and integration added for infinite scrolling Flexible Content, Gallery, Relationship and Repeater fields for Advanced Custom Fields.
44
  * **[Masonry](https://connekthq.com/plugins/ajax-load-more/examples/masonry/)** - Built-in support and functionality for Masonry layouts.
140
  * **[Attachments](https://connekthq.com/plugins/ajax-load-more/examples/attachments/)** - Endless scroll post attachments.
141
  * **[Destroy After](https://connekthq.com/plugins/ajax-load-more/examples/destroy-after/)** - Remove Ajax Load More functionality after 'n' number of pages.
142
  * **[Event Listing](https://connekthq.com/plugins/ajax-load-more/examples/event-listing/)** - Ordering and listing events by custom field date.
 
143
  * **[Filtering](https://connekthq.com/plugins/ajax-load-more/examples/filtering/)** - Reset and filter an Ajax Load More instance.
144
  * **[Flexbox](https://connekthq.com/plugins/ajax-load-more/examples/flexbox/)** - Creating a responsive Ajax Load More grid with Flexbox.
145
  * **[Infinite Scroll](https://connekthq.com/plugins/ajax-load-more/examples/infinite-scroll/)** - A look at the new loading functionality and styles.
172
  * **[Call to Actions](https://connekthq.com/plugins/ajax-load-more/add-ons/call-to-actions/)**: Extend Ajax Load More with advertisement and call to action content blocks.
173
  * **[Comments](https://connekthq.com/plugins/ajax-load-more/add-ons/comments/)**: Load and display WordPress blog comments using the core Ajax Load More infinite scroll functionality.
174
  * **[Custom Repeaters](https://connekthq.com/plugins/ajax-load-more/add-ons/custom-repeaters/)**: Create, modify and delete repeater templates as you need them with absolutely zero restrictions.
175
+ * **[Filters](https://connekthq.com/plugins/ajax-load-more/add-ons/filters/)**: Front-end and admin functionality for creating, managing and displaying Ajax Load More filters.
176
  * **[Layouts](https://connekthq.com/plugins/ajax-load-more/add-ons/layouts/)**: Predefined responsive layouts for Ajax Load More repeater templates.
177
  * **[Next Page](https://connekthq.com/plugins/ajax-load-more/add-ons/next-page/)**: Infinite scroll multipage WordPress content with Ajax Load More and the Next Page add-on.
178
  * **[Paging](https://connekthq.com/plugins/ajax-load-more/add-ons/paging/)**: Replace the default lazy load/infinite scroll functionality of Ajax Load More with a numbered navigation system.
370
 
371
  == Changelog ==
372
 
373
+ = 3.4.0 - February 13, 2018 =
374
+ * NEW - Adding various functionality to support the new [`Filters`](https://connekthq.com/plugins/ajax-load-more/add-ons/filters/) add-on.
375
+ * FIX - Fixed bug with passing search parameter to Preloaded add-on.
376
+ * FIX - Fixed issue with license activation for Theme Repeaters, SEO and User add-ons.
377
+ * UPDATE - Updated default loading transition to be fade, previously slide.
378
+ * UPDATE - Added support for multiple instances of Ajax Load More and Masonry.
379
+ * UPDATE - Fixed issue with the Post ID field in the ACF section of shortcode builder.
380
+ * UPDATE - Various UI/UX enhancements
381
+
382
+
383
  = 3.3.1 - December 7, 2017 =
384
 
385
  ### Notice
admin/admin-functions.php CHANGED
@@ -76,9 +76,21 @@ function alm_get_addons(){
76
  'url' => 'https://connekthq.com/plugins/ajax-load-more/add-ons/custom-repeaters/',
77
  'item_id' => ALM_UNLIMITED_ITEM_NAME
78
  ),
 
 
 
 
 
 
 
 
 
 
 
 
79
  array(
80
  'name' => __('Layouts', 'ajax-load-more'),
81
- 'intro' => __('Predefined layouts for your repeater templates.', 'ajax-load-more'),
82
  'desc' => __('The Layouts add-on provides a collection of unique, well designed and fully responsive templates.', 'ajax-load-more'),
83
  'action' => 'alm_layouts_installed',
84
  'key' => 'alm_layouts_license_key',
@@ -153,9 +165,9 @@ function alm_get_addons(){
153
  'intro' => __('Manage repeater templates within your current theme directory.', 'ajax-load-more'),
154
  'desc' => __('The Theme Repeater add-on will allow you load, edit and maintain templates from your current theme directory.', 'ajax-load-more'),
155
  'action' => 'alm_theme_repeaters_installed',
156
- 'key' => 'alm_seo_license_key',
157
- 'status' => 'alm_seo_license_status',
158
- 'settings_field' => 'alm_seo_license',
159
  'img' => 'img/add-ons/theme-repeater-add-on.jpg',
160
  'url' => 'https://connekthq.com/plugins/ajax-load-more/add-ons/theme-repeaters/',
161
  'item_id' => ALM_THEME_REPEATERS_ITEM_NAME
@@ -165,9 +177,9 @@ function alm_get_addons(){
165
  'intro' => __('Enable infinite scrolling of WordPress users.', 'ajax-load-more'),
166
  'desc' => __('The Users add-on will allow lazy loading of users by role using a WP_User_Query.', 'ajax-load-more'),
167
  'action' => 'alm_users_installed',
168
- 'key' => 'alm_theme_repeaters_license_key',
169
- 'status' => 'alm_theme_repeaters_license_status',
170
- 'settings_field' => 'alm_theme_repeaters_license',
171
  'img' => 'img/add-ons/users-add-on.jpg',
172
  'url' => 'https://connekthq.com/plugins/ajax-load-more/add-ons/users/',
173
  'item_id' => ALM_USERS_ITEM_NAME
@@ -178,26 +190,6 @@ function alm_get_addons(){
178
 
179
 
180
 
181
- /*
182
- * alm_has_addon
183
- * Does user have add-ons installed and activated
184
- * License Page
185
- *
186
- * @return boolean
187
- * @since 2.13.0
188
- * @depreacted 3.3.0
189
- */
190
-
191
- function alm_has_addon(){
192
- if(has_action('alm_cta_installed') || has_action('alm_comments_installed') || has_action('alm_unlimited_installed') || has_action('alm_layouts_installed') || has_action('alm_nextpage_installed') || has_action('alm_preload_installed') || has_action('alm_paging_installed') || has_action('alm_prev_post_installed') || has_action('alm_rest_api_installed') || has_action('alm_seo_installed') || has_action('alm_theme_repeaters_installed') || has_action('alm_users_installed')) {
193
- return true;
194
- } else {
195
- return false;
196
- }
197
- }
198
-
199
-
200
-
201
  /*
202
  * alm_has_addon_shortcodes
203
  * Does user have an add-ons or extensions for shortcode builder installed and activated?
@@ -213,6 +205,7 @@ function alm_has_addon_shortcodes(){
213
  'alm_cache_installed',
214
  'alm_cache_installed',
215
  'alm_cta_installed',
 
216
  'alm_comments_installed',
217
  'alm_unlimited_installed',
218
  'alm_nextpage_installed',
@@ -236,3 +229,24 @@ function alm_has_addon_shortcodes(){
236
  return false;
237
  }
238
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
76
  'url' => 'https://connekthq.com/plugins/ajax-load-more/add-ons/custom-repeaters/',
77
  'item_id' => ALM_UNLIMITED_ITEM_NAME
78
  ),
79
+ array(
80
+ 'name' => __('Filters', 'ajax-load-more'),
81
+ 'intro' => __('Create custom Ajax Load More filters in seconds.', 'ajax-load-more'),
82
+ 'desc' => __('The Filters add-on provides front-end and admin functionality for building and managing Ajax filters.', 'ajax-load-more'),
83
+ 'action' => 'alm_filters_installed',
84
+ 'key' => 'alm_filters_license_key',
85
+ 'status' => 'alm_filters_license_status',
86
+ 'settings_field' => 'alm_filters_license',
87
+ 'img' => 'img/add-ons/filters-add-on.jpg',
88
+ 'url' => 'https://connekthq.com/plugins/ajax-load-more/add-ons/filters/',
89
+ 'item_id' => ALM_FILTERS_ITEM_NAME
90
+ ),
91
  array(
92
  'name' => __('Layouts', 'ajax-load-more'),
93
+ 'intro' => __('Predefined layouts for repeater templates.', 'ajax-load-more'),
94
  'desc' => __('The Layouts add-on provides a collection of unique, well designed and fully responsive templates.', 'ajax-load-more'),
95
  'action' => 'alm_layouts_installed',
96
  'key' => 'alm_layouts_license_key',
165
  'intro' => __('Manage repeater templates within your current theme directory.', 'ajax-load-more'),
166
  'desc' => __('The Theme Repeater add-on will allow you load, edit and maintain templates from your current theme directory.', 'ajax-load-more'),
167
  'action' => 'alm_theme_repeaters_installed',
168
+ 'key' => 'alm_theme_repeaters_license_key',
169
+ 'status' => 'alm_theme_repeaters_license_status',
170
+ 'settings_field' => 'alm_theme_repeaters_license',
171
  'img' => 'img/add-ons/theme-repeater-add-on.jpg',
172
  'url' => 'https://connekthq.com/plugins/ajax-load-more/add-ons/theme-repeaters/',
173
  'item_id' => ALM_THEME_REPEATERS_ITEM_NAME
177
  'intro' => __('Enable infinite scrolling of WordPress users.', 'ajax-load-more'),
178
  'desc' => __('The Users add-on will allow lazy loading of users by role using a WP_User_Query.', 'ajax-load-more'),
179
  'action' => 'alm_users_installed',
180
+ 'key' => 'alm_users_license_key',
181
+ 'status' => 'alm_users_license_status',
182
+ 'settings_field' => 'alm_users_license',
183
  'img' => 'img/add-ons/users-add-on.jpg',
184
  'url' => 'https://connekthq.com/plugins/ajax-load-more/add-ons/users/',
185
  'item_id' => ALM_USERS_ITEM_NAME
190
 
191
 
192
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
193
  /*
194
  * alm_has_addon_shortcodes
195
  * Does user have an add-ons or extensions for shortcode builder installed and activated?
205
  'alm_cache_installed',
206
  'alm_cache_installed',
207
  'alm_cta_installed',
208
+ 'alm_filters_installed',
209
  'alm_comments_installed',
210
  'alm_unlimited_installed',
211
  'alm_nextpage_installed',
229
  return false;
230
  }
231
  }
232
+
233
+
234
+
235
+
236
+ /*
237
+ * alm_has_addon
238
+ * Does user have add-ons installed and activated
239
+ * License Page
240
+ *
241
+ * @return boolean
242
+ * @since 2.13.0
243
+ * @depreacted 3.3.0
244
+ */
245
+
246
+ function alm_has_addon(){
247
+ if(has_action('alm_cta_installed') || has_action('alm_comments_installed') || has_action('alm_unlimited_installed') || has_action('alm_layouts_installed') || has_action('alm_nextpage_installed') || has_action('alm_preload_installed') || has_action('alm_paging_installed') || has_action('alm_prev_post_installed') || has_action('alm_rest_api_installed') || has_action('alm_seo_installed') || has_action('alm_theme_repeaters_installed') || has_action('alm_users_installed')) {
248
+ return true;
249
+ } else {
250
+ return false;
251
+ }
252
+ }
admin/admin.php CHANGED
@@ -113,16 +113,17 @@ function alm_license_activation(){
113
  }
114
  }
115
  $return["msg"] = $msg;
116
-
117
  update_option( $option_status, $license_data->license);
118
  update_option( $option_key, $license );
119
 
120
- echo json_encode($return);
121
-
122
- die();
123
 
124
  } else {
 
125
  echo __('You don\'t belong here.', 'ajax-load-more');
 
126
  }
127
  }
128
 
@@ -442,12 +443,17 @@ function alm_admin_menu() {
442
  'ajax-load-more-licenses',
443
  'alm_licenses_page'
444
  );
 
 
 
 
 
445
 
446
  if(has_action('alm_cache_installed')){
447
  $alm_cache_page = add_submenu_page(
448
  'ajax-load-more',
449
- 'Cache',
450
- '<span style="color: #f2f5bf; display:block; border-top: 1px solid #555; padding-top: 8px; border-radius: 3px;">Cache<span>',
451
  'edit_theme_options',
452
  'ajax-load-more-cache',
453
  'alm_cache_page'
@@ -455,6 +461,25 @@ function alm_admin_menu() {
455
  add_action( 'load-' . $alm_cache_page, 'alm_load_admin_js' );
456
  add_action( 'load-' . $alm_cache_page, 'alm_load_cache_admin_js' );
457
  add_action( 'load-' . $alm_cache_page, 'alm_set_admin_nonce' );
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
458
  }
459
 
460
  //Add our admin scripts
@@ -592,6 +617,19 @@ function alm_cache_page(){
592
  }
593
 
594
 
 
 
 
 
 
 
 
 
 
 
 
 
 
595
 
596
  /**
597
  * alm_load_admin_js
@@ -603,11 +641,18 @@ function alm_cache_page(){
603
  function alm_load_admin_js(){
604
  add_action( 'admin_enqueue_scripts', 'alm_enqueue_admin_scripts' );
605
  }
 
606
  function alm_load_cache_admin_js(){
607
  if(class_exists('ALMCache')){
608
  ALMCache::alm_enqueue_cache_admin_scripts();
609
  }
610
  }
 
 
 
 
 
 
611
 
612
 
613
 
@@ -993,14 +1038,6 @@ function alm_admin_init(){
993
  'alm_general_settings'
994
  );
995
 
996
- add_settings_field( // Inline CSS
997
- '_alm_inline_css',
998
- __('Load CSS Inline', 'ajax-load-more' ),
999
- 'alm_inline_css_callback',
1000
- 'ajax-load-more',
1001
- 'alm_general_settings'
1002
- );
1003
-
1004
  add_settings_field( // Button classes
1005
  '_alm_btn_classname',
1006
  __('Button Classes', 'ajax-load-more' ),
@@ -1008,17 +1045,14 @@ function alm_admin_init(){
1008
  'ajax-load-more',
1009
  'alm_general_settings'
1010
  );
1011
-
1012
- /*
1013
- Removed in 3.2.1
1014
- add_settings_field( // Nonce security
1015
- '_alm_nonce_security',
1016
- __('Ajax Security', 'ajax-load-more' ),
1017
- '_alm_nonce_security_callback',
1018
  'ajax-load-more',
1019
  'alm_general_settings'
1020
  );
1021
- */
1022
 
1023
  add_settings_field( // Scroll to top on load
1024
  '_alm_scroll_top',
@@ -1065,6 +1099,12 @@ function alm_admin_init(){
1065
  }
1066
 
1067
 
 
 
 
 
 
 
1068
  // LAYOUTS
1069
  if(has_action('alm_layouts_settings')){
1070
  do_action('alm_layouts_settings');
@@ -1410,11 +1450,13 @@ function alm_btn_class_callback(){
1410
  jQuery('input#alm_disable_css_input').change(function() {
1411
  var el = jQuery(this);
1412
  if(el.is(":checked")) {
1413
- el.parent().parent('tr').next('tr').hide(); // Hide button color
1414
- el.parent().parent('tr').next('tr').next('tr').hide(); // Hide inline css
 
1415
  }else{
1416
- el.parent().parent('tr').next('tr').show(); // show button color
1417
- el.parent().parent('tr').next('tr').next('tr').show(); // show inline css
 
1418
  }
1419
  });
1420
 
113
  }
114
  }
115
  $return["msg"] = $msg;
116
+
117
  update_option( $option_status, $license_data->license);
118
  update_option( $option_key, $license );
119
 
120
+ wp_send_json($return);
121
+
 
122
 
123
  } else {
124
+
125
  echo __('You don\'t belong here.', 'ajax-load-more');
126
+
127
  }
128
  }
129
 
443
  'ajax-load-more-licenses',
444
  'alm_licenses_page'
445
  );
446
+
447
+
448
+ $before_link = '<span style="display:block; border-top: 1px solid #555; padding-top: 8px;">';
449
+ $after_link = '</span>';
450
+ $style_link_icon = 'style="opacity: 0.6; font-size: 18px; height: 18px; width: 20px;"';
451
 
452
  if(has_action('alm_cache_installed')){
453
  $alm_cache_page = add_submenu_page(
454
  'ajax-load-more',
455
+ __('Cache', 'ajax-load-more'),
456
+ $before_link . '<span class="dashicons dashicons-admin-generic" '.$style_link_icon.'></span> ' .__('Cache', 'ajax-load-more') . $after_link,
457
  'edit_theme_options',
458
  'ajax-load-more-cache',
459
  'alm_cache_page'
461
  add_action( 'load-' . $alm_cache_page, 'alm_load_admin_js' );
462
  add_action( 'load-' . $alm_cache_page, 'alm_load_cache_admin_js' );
463
  add_action( 'load-' . $alm_cache_page, 'alm_set_admin_nonce' );
464
+ }
465
+
466
+ if(has_action('alm_filters_installed')){
467
+
468
+ if(has_action('alm_cache_installed')){
469
+ $before_link = '<span style="display:block;">';
470
+ }
471
+
472
+ $alm_filters_page = add_submenu_page(
473
+ 'ajax-load-more',
474
+ __('Filters', 'ajax-load-more'),
475
+ $before_link . '<span class="dashicons dashicons-filter" '.$style_link_icon.'></span> '. __('Filters', 'ajax-load-more') . $after_link,
476
+ 'edit_theme_options',
477
+ 'ajax-load-more-filters',
478
+ 'alm_filters_page'
479
+ );
480
+ add_action( 'load-' . $alm_filters_page, 'alm_load_admin_js' );
481
+ add_action( 'load-' . $alm_filters_page, 'alm_load_filters_admin_scripts' );
482
+ add_action( 'load-' . $alm_filters_page, 'alm_set_admin_nonce' );
483
  }
484
 
485
  //Add our admin scripts
617
  }
618
 
619
 
620
+ /*
621
+ * alm_filters_page
622
+ * Filters Add-on page
623
+ *
624
+ * @since 3.4.0
625
+ */
626
+
627
+ function alm_filters_page(){
628
+ include_once( ALM_FILTERS_PATH . 'admin/functions.php');
629
+ include_once( ALM_FILTERS_PATH . 'admin/views/filters.php');
630
+ }
631
+
632
+
633
 
634
  /**
635
  * alm_load_admin_js
641
  function alm_load_admin_js(){
642
  add_action( 'admin_enqueue_scripts', 'alm_enqueue_admin_scripts' );
643
  }
644
+ // Cache Scripts
645
  function alm_load_cache_admin_js(){
646
  if(class_exists('ALMCache')){
647
  ALMCache::alm_enqueue_cache_admin_scripts();
648
  }
649
  }
650
+ // Filters Scripts
651
+ function alm_load_filters_admin_scripts(){
652
+ if(class_exists('ALMFilters')){
653
+ ALMFilters::alm_enqueue_filters_admin_scripts();
654
+ }
655
+ }
656
 
657
 
658
 
1038
  'alm_general_settings'
1039
  );
1040
 
 
 
 
 
 
 
 
 
1041
  add_settings_field( // Button classes
1042
  '_alm_btn_classname',
1043
  __('Button Classes', 'ajax-load-more' ),
1045
  'ajax-load-more',
1046
  'alm_general_settings'
1047
  );
1048
+
1049
+ add_settings_field( // Inline CSS
1050
+ '_alm_inline_css',
1051
+ __('Load CSS Inline', 'ajax-load-more' ),
1052
+ 'alm_inline_css_callback',
 
 
1053
  'ajax-load-more',
1054
  'alm_general_settings'
1055
  );
 
1056
 
1057
  add_settings_field( // Scroll to top on load
1058
  '_alm_scroll_top',
1099
  }
1100
 
1101
 
1102
+ // FILTERS
1103
+ if(has_action('alm_filters_settings')){
1104
+ do_action('alm_filters_settings');
1105
+ }
1106
+
1107
+
1108
  // LAYOUTS
1109
  if(has_action('alm_layouts_settings')){
1110
  do_action('alm_layouts_settings');
1450
  jQuery('input#alm_disable_css_input').change(function() {
1451
  var el = jQuery(this);
1452
  if(el.is(":checked")) {
1453
+ el.parent().parent('tr').next('tr').hide(); // Hide button
1454
+ el.parent().parent('tr').next('tr').next('tr').hide(); // Hide button color
1455
+ el.parent().parent('tr').next('tr').next('tr').next('tr').hide(); // Hide inline css
1456
  }else{
1457
+ el.parent().parent('tr').next('tr').show(); // show button
1458
+ el.parent().parent('tr').next('tr').next('tr').show(); // show button color
1459
+ el.parent().parent('tr').next('tr').next('tr').next('tr').show(); // show inline css
1460
  }
1461
  });
1462
 
admin/dist/css/admin.css CHANGED
@@ -528,13 +528,13 @@ disabled look for disabled choices in the results dropdown
528
  .ajax-load-more .header-wrap h1 em {
529
  display: block;
530
  position: relative;
531
- margin-top: 1px;
532
  font-size: 14px;
533
  opacity: 0.7;
534
  font-style: normal;
535
  font-weight: 400;
536
  line-height: 1.35;
537
- margin: 1px 0 12.5px; }
538
  .ajax-load-more .header-wrap h1 strong {
539
  font-weight: 700; }
540
  .ajax-load-more .header-wrap h1 span {
@@ -685,7 +685,8 @@ body.ajax-load-more_page_ajax-load-more-add-ons,
685
  body.ajax-load-more_page_ajax-load-more-extensions,
686
  body.ajax-load-more_page_ajax-load-more-help,
687
  body.ajax-load-more_page_ajax-load-more-licenses,
688
- body.ajax-load-more_page_ajax-load-more-cache {
 
689
  background-color: #f7f7f7; }
690
  body.toplevel_page_ajax-load-more #wpcontent,
691
  body.ajax-load-more_page_ajax-load-more-repeaters #wpcontent,
@@ -694,7 +695,8 @@ body.ajax-load-more_page_ajax-load-more-cache {
694
  body.ajax-load-more_page_ajax-load-more-extensions #wpcontent,
695
  body.ajax-load-more_page_ajax-load-more-help #wpcontent,
696
  body.ajax-load-more_page_ajax-load-more-licenses #wpcontent,
697
- body.ajax-load-more_page_ajax-load-more-cache #wpcontent {
 
698
  padding-left: 0;
699
  padding-bottom: 40px;
700
  background-color: #efefef; }
@@ -705,7 +707,8 @@ body.ajax-load-more_page_ajax-load-more-cache {
705
  body.ajax-load-more_page_ajax-load-more-extensions #wpbody-content,
706
  body.ajax-load-more_page_ajax-load-more-help #wpbody-content,
707
  body.ajax-load-more_page_ajax-load-more-licenses #wpbody-content,
708
- body.ajax-load-more_page_ajax-load-more-cache #wpbody-content {
 
709
  padding-bottom: 0; }
710
 
711
  body.toplevel_page_ajax-load-more,
@@ -715,7 +718,8 @@ body.ajax-load-more_page_ajax-load-more-add-ons,
715
  body.ajax-load-more_page_ajax-load-more-extensions,
716
  body.ajax-load-more_page_ajax-load-more-help,
717
  body.ajax-load-more_page_ajax-load-more-licenses,
718
- body.ajax-load-more_page_ajax-load-more-cache {
 
719
  background: #efefef; }
720
  body.toplevel_page_ajax-load-more #wpfooter,
721
  body.ajax-load-more_page_ajax-load-more-repeaters #wpfooter,
@@ -724,7 +728,8 @@ body.ajax-load-more_page_ajax-load-more-cache {
724
  body.ajax-load-more_page_ajax-load-more-extensions #wpfooter,
725
  body.ajax-load-more_page_ajax-load-more-help #wpfooter,
726
  body.ajax-load-more_page_ajax-load-more-licenses #wpfooter,
727
- body.ajax-load-more_page_ajax-load-more-cache #wpfooter {
 
728
  padding-top: 0;
729
  padding-bottom: 0;
730
  line-height: 40px;
@@ -740,7 +745,8 @@ body.ajax-load-more_page_ajax-load-more-cache {
740
  body.ajax-load-more_page_ajax-load-more-extensions #wpfooter p,
741
  body.ajax-load-more_page_ajax-load-more-help #wpfooter p,
742
  body.ajax-load-more_page_ajax-load-more-licenses #wpfooter p,
743
- body.ajax-load-more_page_ajax-load-more-cache #wpfooter p {
 
744
  line-height: 40px; }
745
  @media screen and (min-width: 901px) {
746
  body.toplevel_page_ajax-load-more .ajax-load-more .cnkt-main,
@@ -750,7 +756,8 @@ body.ajax-load-more_page_ajax-load-more-cache {
750
  body.ajax-load-more_page_ajax-load-more-extensions .ajax-load-more .cnkt-main,
751
  body.ajax-load-more_page_ajax-load-more-help .ajax-load-more .cnkt-main,
752
  body.ajax-load-more_page_ajax-load-more-licenses .ajax-load-more .cnkt-main,
753
- body.ajax-load-more_page_ajax-load-more-cache .ajax-load-more .cnkt-main {
 
754
  min-height: 100vh; } }
755
 
756
  body.ajax-load-more_page_ajax-load-more-extensions {
@@ -1472,7 +1479,7 @@ a.layout-hover:hover img {
1472
  .ajax-load-more .expand-wrap hr {
1473
  border: 0;
1474
  height: 0;
1475
- border-top: 1px solid rgba(0, 0, 0, 0.1);
1476
  border-bottom: 1px solid rgba(255, 255, 255, 0.3); }
1477
 
1478
  hr.indented {
@@ -1502,23 +1509,28 @@ hr.indented {
1502
  margin: 0;
1503
  font-style: italic; }
1504
 
1505
- .ajax-load-more .section-title p .fa.tooltip,
1506
- .form-table label .fa.tooltip {
1507
- margin: 0 2px;
1508
- display: inline-block;
1509
- font-size: 15px;
1510
- opacity: 0.9;
1511
- top: 0; }
1512
-
1513
  .ajax-load-more .section-title p .fa.tooltip:hover,
1514
  .form-table label .fa.tooltip:hover {
1515
  opacity: 1; }
1516
 
1517
- .fa.tooltip {
 
 
1518
  text-decoration: none;
1519
  cursor: help;
1520
  position: relative;
1521
- top: -1px; }
 
 
 
 
 
 
 
 
 
 
 
1522
 
1523
  .ajax-load-more .section-title p span,
1524
  .admin.ajax-load-more.settings .form-table p.notify span {
@@ -1556,6 +1568,7 @@ hr.indented {
1556
  .alternate_template_wrap,
1557
  .cta_template_wrap,
1558
  .restapi_options,
 
1559
  .next-page-content,
1560
  .acf-options,
1561
  .masonry-options,
@@ -2011,7 +2024,7 @@ table.highlight {
2011
  margin-top: 0; }
2012
 
2013
  .form-table tr {
2014
- border-top: 1px solid #efefef; }
2015
 
2016
  .form-table {
2017
  border: 1px solid #e1e1e1;
@@ -2118,57 +2131,60 @@ table.highlight {
2118
  display: -ms-flexbox;
2119
  display: flex;
2120
  -ms-flex-wrap: wrap;
2121
- flex-wrap: wrap; }
 
 
 
2122
 
2123
  #alm-add-ons .group {
2124
  overflow: hidden;
2125
- width: 31.333%;
2126
- display: inline-block;
 
 
2127
  vertical-align: top;
2128
  text-align: center;
2129
- margin: 0 1.5% 2% 0;
2130
- word-spacing: -4px;
2131
- padding: 0; }
2132
-
2133
- @media screen and (max-width: 1350px) {
2134
- #alm-add-ons .group {
2135
- width: 48%; } }
2136
-
2137
- #alm-add-ons .group .expand-wrap {
2138
- display: block;
2139
- padding-bottom: 50px;
2140
- position: relative;
2141
- word-spacing: 0; }
 
2142
 
2143
  #alm-add-ons .group span.cnkt-button {
2144
  position: absolute;
2145
- left: 0;
2146
- bottom: 0;
2147
  width: 100%;
 
2148
  display: block;
2149
  font-size: 14px;
2150
  padding: 10px 14px;
2151
  -webkit-transition: all 0.15s ease;
2152
- transition: all 0.15s ease; }
2153
-
2154
- .ajax-load-more .cnkt-main .group.installed {
2155
- opacity: 0.85;
2156
- -webkit-filter: grayscale(0.85);
2157
- filter: grayscale(0.85); }
2158
-
2159
- .ajax-load-more .cnkt-main .group.installed p:before {
2160
- display: none !important; }
2161
 
2162
  #alm-add-ons .group img {
2163
- padding: 12px 18px 12px; }
2164
 
2165
  #alm-add-ons .group a {
2166
  text-decoration: none;
2167
  display: block;
2168
- padding: 15px; }
 
2169
 
2170
- #alm-add-ons .group:hover {
2171
- border-color: #ccc; }
2172
 
2173
  #alm-add-ons .group a h2 {
2174
  -webkit-transition: all 0.15s ease;
@@ -2467,7 +2483,7 @@ span.cnkt-button.installed i,
2467
 
2468
  /*
2469
  * Plugin Sidebar
2470
- *
2471
  * @since 1.0
2472
  */
2473
  .ajax-load-more .cnkt-sidebar .cta {
@@ -3166,17 +3182,27 @@ p.cache-stats {
3166
  border: 1px solid #e1e1e1;
3167
  border-radius: 3px;
3168
  margin-bottom: 20px; }
3169
-
3170
- #alm-shortcode-builder-form .shortcode-parameter-wrap h2 {
3171
- padding: 20px 22px;
3172
- margin: 0 -20px 20px;
3173
- display: block;
3174
- font-size: 22px;
3175
- width: calc(100% + 40px);
3176
- border-bottom: 1px solid #e1e1e1;
3177
- background-color: #f7f7f7;
3178
- border-radius: 2px 2px 0 0;
3179
- color: #23282d; }
 
 
 
 
 
 
 
 
 
 
3180
 
3181
  .forceColors #alm-shortcode-builder-form .shortcode-parameter-wrap h2 {
3182
  padding: 12px 22px;
528
  .ajax-load-more .header-wrap h1 em {
529
  display: block;
530
  position: relative;
531
+ margin: 1px 0 0;
532
  font-size: 14px;
533
  opacity: 0.7;
534
  font-style: normal;
535
  font-weight: 400;
536
  line-height: 1.35;
537
+ padding: 1px 0 12.5px; }
538
  .ajax-load-more .header-wrap h1 strong {
539
  font-weight: 700; }
540
  .ajax-load-more .header-wrap h1 span {
685
  body.ajax-load-more_page_ajax-load-more-extensions,
686
  body.ajax-load-more_page_ajax-load-more-help,
687
  body.ajax-load-more_page_ajax-load-more-licenses,
688
+ body.ajax-load-more_page_ajax-load-more-cache,
689
+ body.ajax-load-more_page_ajax-load-more-filters {
690
  background-color: #f7f7f7; }
691
  body.toplevel_page_ajax-load-more #wpcontent,
692
  body.ajax-load-more_page_ajax-load-more-repeaters #wpcontent,
695
  body.ajax-load-more_page_ajax-load-more-extensions #wpcontent,
696
  body.ajax-load-more_page_ajax-load-more-help #wpcontent,
697
  body.ajax-load-more_page_ajax-load-more-licenses #wpcontent,
698
+ body.ajax-load-more_page_ajax-load-more-cache #wpcontent,
699
+ body.ajax-load-more_page_ajax-load-more-filters #wpcontent {
700
  padding-left: 0;
701
  padding-bottom: 40px;
702
  background-color: #efefef; }
707
  body.ajax-load-more_page_ajax-load-more-extensions #wpbody-content,
708
  body.ajax-load-more_page_ajax-load-more-help #wpbody-content,
709
  body.ajax-load-more_page_ajax-load-more-licenses #wpbody-content,
710
+ body.ajax-load-more_page_ajax-load-more-cache #wpbody-content,
711
+ body.ajax-load-more_page_ajax-load-more-filters #wpbody-content {
712
  padding-bottom: 0; }
713
 
714
  body.toplevel_page_ajax-load-more,
718
  body.ajax-load-more_page_ajax-load-more-extensions,
719
  body.ajax-load-more_page_ajax-load-more-help,
720
  body.ajax-load-more_page_ajax-load-more-licenses,
721
+ body.ajax-load-more_page_ajax-load-more-cache,
722
+ body.ajax-load-more_page_ajax-load-more-filters {
723
  background: #efefef; }
724
  body.toplevel_page_ajax-load-more #wpfooter,
725
  body.ajax-load-more_page_ajax-load-more-repeaters #wpfooter,
728
  body.ajax-load-more_page_ajax-load-more-extensions #wpfooter,
729
  body.ajax-load-more_page_ajax-load-more-help #wpfooter,
730
  body.ajax-load-more_page_ajax-load-more-licenses #wpfooter,
731
+ body.ajax-load-more_page_ajax-load-more-cache #wpfooter,
732
+ body.ajax-load-more_page_ajax-load-more-filters #wpfooter {
733
  padding-top: 0;
734
  padding-bottom: 0;
735
  line-height: 40px;
745
  body.ajax-load-more_page_ajax-load-more-extensions #wpfooter p,
746
  body.ajax-load-more_page_ajax-load-more-help #wpfooter p,
747
  body.ajax-load-more_page_ajax-load-more-licenses #wpfooter p,
748
+ body.ajax-load-more_page_ajax-load-more-cache #wpfooter p,
749
+ body.ajax-load-more_page_ajax-load-more-filters #wpfooter p {
750
  line-height: 40px; }
751
  @media screen and (min-width: 901px) {
752
  body.toplevel_page_ajax-load-more .ajax-load-more .cnkt-main,
756
  body.ajax-load-more_page_ajax-load-more-extensions .ajax-load-more .cnkt-main,
757
  body.ajax-load-more_page_ajax-load-more-help .ajax-load-more .cnkt-main,
758
  body.ajax-load-more_page_ajax-load-more-licenses .ajax-load-more .cnkt-main,
759
+ body.ajax-load-more_page_ajax-load-more-cache .ajax-load-more .cnkt-main,
760
+ body.ajax-load-more_page_ajax-load-more-filters .ajax-load-more .cnkt-main {
761
  min-height: 100vh; } }
762
 
763
  body.ajax-load-more_page_ajax-load-more-extensions {
1479
  .ajax-load-more .expand-wrap hr {
1480
  border: 0;
1481
  height: 0;
1482
+ border-top: 1px solid #efefef;
1483
  border-bottom: 1px solid rgba(255, 255, 255, 0.3); }
1484
 
1485
  hr.indented {
1509
  margin: 0;
1510
  font-style: italic; }
1511
 
 
 
 
 
 
 
 
 
1512
  .ajax-load-more .section-title p .fa.tooltip:hover,
1513
  .form-table label .fa.tooltip:hover {
1514
  opacity: 1; }
1515
 
1516
+ .ajax-load-more .fa.tooltip {
1517
+ display: inline-block;
1518
+ margin: 0 2px;
1519
  text-decoration: none;
1520
  cursor: help;
1521
  position: relative;
1522
+ top: 0;
1523
+ background: #fff;
1524
+ border-radius: 100%;
1525
+ width: 20px;
1526
+ height: 20px;
1527
+ text-align: center;
1528
+ line-height: 20px;
1529
+ -webkit-box-shadow: 0 -1px 1px #ccc;
1530
+ box-shadow: 0 -1px 1px #ccc; }
1531
+
1532
+ .cta h3 .fa.tooltip {
1533
+ top: 1px; }
1534
 
1535
  .ajax-load-more .section-title p span,
1536
  .admin.ajax-load-more.settings .form-table p.notify span {
1568
  .alternate_template_wrap,
1569
  .cta_template_wrap,
1570
  .restapi_options,
1571
+ .filters_options,
1572
  .next-page-content,
1573
  .acf-options,
1574
  .masonry-options,
2024
  margin-top: 0; }
2025
 
2026
  .form-table tr {
2027
+ border-top: 1px solid #e1e1e1; }
2028
 
2029
  .form-table {
2030
  border: 1px solid #e1e1e1;
2131
  display: -ms-flexbox;
2132
  display: flex;
2133
  -ms-flex-wrap: wrap;
2134
+ flex-wrap: wrap;
2135
+ margin-bottom: 20px;
2136
+ border-top: 1px solid #e1e1e1;
2137
+ border-left: 1px solid #e1e1e1; }
2138
 
2139
  #alm-add-ons .group {
2140
  overflow: hidden;
2141
+ width: 33.333%;
2142
+ display: -webkit-box;
2143
+ display: -ms-flexbox;
2144
+ display: flex;
2145
  vertical-align: top;
2146
  text-align: center;
2147
+ margin: 0 !important;
2148
+ padding: 0;
2149
+ border-radius: 0;
2150
+ border-top: none;
2151
+ border-left: none; }
2152
+ #alm-add-ons .group.installed {
2153
+ opacity: 0.85;
2154
+ -webkit-filter: grayscale(1);
2155
+ filter: grayscale(1); }
2156
+ #alm-add-ons .group.installed p:before {
2157
+ display: none !important; }
2158
+ @media screen and (max-width: 1350px) {
2159
+ #alm-add-ons .group {
2160
+ width: 50%; } }
2161
 
2162
  #alm-add-ons .group span.cnkt-button {
2163
  position: absolute;
2164
+ left: 20px;
2165
+ bottom: 20px;
2166
  width: 100%;
2167
+ width: calc(100% - 40px);
2168
  display: block;
2169
  font-size: 14px;
2170
  padding: 10px 14px;
2171
  -webkit-transition: all 0.15s ease;
2172
+ transition: all 0.15s ease;
2173
+ border-bottom: none;
2174
+ border-left: none;
2175
+ border-right: none; }
 
 
 
 
 
2176
 
2177
  #alm-add-ons .group img {
2178
+ padding: 0 15px 15px; }
2179
 
2180
  #alm-add-ons .group a {
2181
  text-decoration: none;
2182
  display: block;
2183
+ padding: 25px 25px 70px;
2184
+ position: relative; }
2185
 
2186
+ #alm-add-ons .group:hover h2 {
2187
+ text-decoration: underline; }
2188
 
2189
  #alm-add-ons .group a h2 {
2190
  -webkit-transition: all 0.15s ease;
2483
 
2484
  /*
2485
  * Plugin Sidebar
2486
+ *
2487
  * @since 1.0
2488
  */
2489
  .ajax-load-more .cnkt-sidebar .cta {
3182
  border: 1px solid #e1e1e1;
3183
  border-radius: 3px;
3184
  margin-bottom: 20px; }
3185
+ #alm-shortcode-builder-form .shortcode-parameter-wrap h2 {
3186
+ padding: 20px 22px;
3187
+ margin: 0 -20px 20px;
3188
+ display: block;
3189
+ font-size: 20px;
3190
+ width: calc(100% + 40px);
3191
+ border-bottom: 1px solid #e1e1e1;
3192
+ background-color: #f7f7f7;
3193
+ border-radius: 2px 2px 0 0;
3194
+ color: #23282d;
3195
+ position: relative; }
3196
+ #alm-shortcode-builder-form .shortcode-parameter-wrap h2 i {
3197
+ position: absolute;
3198
+ right: 15px;
3199
+ top: 50%;
3200
+ -webkit-transform: translateY(-50%);
3201
+ -ms-transform: translateY(-50%);
3202
+ transform: translateY(-50%);
3203
+ font-size: 25px;
3204
+ color: #ccc;
3205
+ opacity: 0.45; }
3206
 
3207
  .forceColors #alm-shortcode-builder-form .shortcode-parameter-wrap h2 {
3208
  padding: 12px 22px;
admin/dist/js/admin.js CHANGED
@@ -1311,7 +1311,7 @@ jQuery(document).ready(function ($) {
1311
  settingsTarget.classList.add('--saved');
1312
  settingsTarget.innerHTML = alm_admin_localize.settings_saved;
1313
  settingsForm.classList.remove('--saving');
1314
- console.log(alm_admin_localize.ajax_load_more + ' - ' + alm_admin_localize.settings_saved);
1315
  savingSettings = false;
1316
 
1317
  setTimeout(function () {
@@ -1358,10 +1358,12 @@ jQuery(document).ready(function ($) {
1358
  * @since 2.8.4
1359
  */
1360
 
1361
- $('.tooltip').tooltipster({
1362
- delay: 100,
1363
- speed: 175,
1364
- maxWidth: 400
 
 
1365
  });
1366
 
1367
  /*
@@ -1426,7 +1428,7 @@ jQuery(document).ready(function ($) {
1426
  };
1427
 
1428
  // Copy link on shortcode builder
1429
- $('.shortcode-builder .copy').click(function () {
1430
  var c = $('#shortcode_output').html();
1431
  _alm.copyToClipboard(c);
1432
  });
@@ -1697,11 +1699,11 @@ jQuery(document).ready(function ($) {
1697
  if ($('#alm-add-ons').length) {
1698
  var addOnColumns = $('#alm-add-ons .group .expand-wrap');
1699
  $(window).load(function () {
1700
- equalheight(addOnColumns);
1701
  });
1702
  $(window).resize(function () {
1703
  setTimeout(function () {
1704
- equalheight(addOnColumns);
1705
  }, 500);
1706
  });
1707
  }
1311
  settingsTarget.classList.add('--saved');
1312
  settingsTarget.innerHTML = alm_admin_localize.settings_saved;
1313
  settingsForm.classList.remove('--saving');
1314
+ //console.log(alm_admin_localize.ajax_load_more +' - '+ alm_admin_localize.settings_saved);
1315
  savingSettings = false;
1316
 
1317
  setTimeout(function () {
1358
  * @since 2.8.4
1359
  */
1360
 
1361
+ $('body').on('mouseenter', '.tooltip:not(.tooltipstered)', function () {
1362
+ $(this).tooltipster({
1363
+ delay: 100,
1364
+ speed: 150,
1365
+ maxWidth: 325
1366
+ }).tooltipster('show');
1367
  });
1368
 
1369
  /*
1428
  };
1429
 
1430
  // Copy link on shortcode builder
1431
+ $('.copy-to-clipboard').on('click', function () {
1432
  var c = $('#shortcode_output').html();
1433
  _alm.copyToClipboard(c);
1434
  });
1699
  if ($('#alm-add-ons').length) {
1700
  var addOnColumns = $('#alm-add-ons .group .expand-wrap');
1701
  $(window).load(function () {
1702
+ //equalheight(addOnColumns);
1703
  });
1704
  $(window).resize(function () {
1705
  setTimeout(function () {
1706
+ //equalheight(addOnColumns);
1707
  }, 500);
1708
  });
1709
  }
admin/editor/editor-build.php CHANGED
@@ -53,7 +53,7 @@ tinyMCEPopup.onInit.add(AjaxLoadMoreModal.init, AjaxLoadMoreModal);
53
  <a href="javascript:AjaxLoadMoreModal.insert(AjaxLoadMoreModal.local_ed)" id="insert" class="insert_alm"><i class="fa fa-chevron-circle-right"></i> <?php _e('Insert Shortcode', 'ajax-load-more'); ?></a>
54
  <div class="shortcode-display">
55
  <div id="shortcode_output"></div>
56
- <span class="copy"><?php _e('Copy', 'ajax-load-more'); ?></span>
57
  </div>
58
  </div>
59
 
53
  <a href="javascript:AjaxLoadMoreModal.insert(AjaxLoadMoreModal.local_ed)" id="insert" class="insert_alm"><i class="fa fa-chevron-circle-right"></i> <?php _e('Insert Shortcode', 'ajax-load-more'); ?></a>
54
  <div class="shortcode-display">
55
  <div id="shortcode_output"></div>
56
+ <span class="copy copy-to-clipboard"><?php _e('Copy', 'ajax-load-more'); ?></span>
57
  </div>
58
  </div>
59
 
admin/img/add-ons/filters-add-on.jpg ADDED
Binary file
admin/img/add-ons/rest-api-add-on.jpg DELETED
Binary file
admin/img/alm-logo-16x16.png DELETED
Binary file
admin/shortcode-builder/components/acf.php CHANGED
@@ -31,7 +31,7 @@
31
  </div>
32
  <div class="wrap">
33
  <div class="inner">
34
- <input type="text" value="" id="acf_post_id" class="alm_element">
35
  </div>
36
  </div>
37
 
31
  </div>
32
  <div class="wrap">
33
  <div class="inner">
34
+ <input type="text" value="" id="acf_post_id" class="alm_element numbers-only">
35
  </div>
36
  </div>
37
 
admin/shortcode-builder/components/filters.php ADDED
@@ -0,0 +1,75 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php if(has_action('alm_filters_installed')){ ?>
2
+ <div class="row input filters add-on" id="alm-filters">
3
+ <h3 class="heading"><?php _e('Filters', 'ajax-load-more'); ?></h3>
4
+ <div class="expand-wrap">
5
+ <div class="section-title">
6
+ <p><?php _e('Enable filters with this Ajax Load More instance.', 'ajax-load-more'); ?></p>
7
+ </div>
8
+ <div class="wrap">
9
+ <div class="inner">
10
+ <ul>
11
+ <li>
12
+ <input class="alm_element" type="radio" name="filters" value="true" id="filters-true" >
13
+ <label for="filters-true"><?php _e('True', 'ajax-load-more'); ?></label>
14
+ </li>
15
+ <li>
16
+ <input class="alm_element" type="radio" name="filters" value="false" id="filters-false" checked="checked">
17
+ <label for="filters-false"><?php _e('False', 'ajax-load-more'); ?></label>
18
+ </li>
19
+ </ul>
20
+ </div>
21
+ </div>
22
+
23
+ <div class="clear"></div>
24
+
25
+ <div class="filters_options">
26
+
27
+ <div class="clear"></div>
28
+ <hr>
29
+
30
+ <div class="section-title">
31
+ <h4><?php _e('Analytics', 'ajax-load-more'); ?> <a href="javascript:void(0)" class="fa fa-question-circle tooltip" title="<?php _e('Each time the filter is updated a pageview will be sent to Google Analytics','ajax-load-more'); ?>."></a></h4>
32
+ <p><?php _e('Send pageviews to Google Analytics', 'ajax-load-more'); ?>.</p>
33
+ </div>
34
+ <div class="wrap">
35
+ <div class="inner">
36
+ <ul>
37
+ <li>
38
+ <input class="alm_element" type="radio" name="filters-analytics" value="true" id="filters-analytics-true" checked="checked">
39
+ <label for="filters-analytics-true"><?php _e('True', 'ajax-load-more'); ?></label>
40
+ </li>
41
+ <li>
42
+ <input class="alm_element" type="radio" name="filters-analytics" value="false" id="filters-analytics-false">
43
+ <label for="filters-analytics-false"><?php _e('False', 'ajax-load-more'); ?></label>
44
+ </li>
45
+ </ul>
46
+ </div>
47
+ </div>
48
+
49
+ <div class="clear"></div>
50
+ <hr>
51
+
52
+ <div class="section-title">
53
+ <h4><?php _e('Debug Mode', 'ajax-load-more'); ?></h4>
54
+ <p><?php _e('Enable debugging of the Ajax Load More filter object in the browser console', 'ajax-load-more'); ?>.</p>
55
+ </div>
56
+ <div class="wrap">
57
+ <div class="inner">
58
+ <ul>
59
+ <li>
60
+ <input class="alm_element" type="radio" name="filters-debug" value="true" id="filters-debug-true">
61
+ <label for="filters-debug-true"><?php _e('True', 'ajax-load-more'); ?></label>
62
+ </li>
63
+ <li>
64
+ <input class="alm_element" type="radio" name="filters-debug" value="false" id="filters-debug-false" checked="checked">
65
+ <label for="filters-debug-false"><?php _e('False', 'ajax-load-more'); ?></label>
66
+ </li>
67
+ </ul>
68
+ </div>
69
+ </div>
70
+
71
+ </div>
72
+
73
+ </div>
74
+ </div>
75
+ <?php } ?>
admin/shortcode-builder/js/shortcode-builder.js CHANGED
@@ -2,7 +2,7 @@ jQuery(document).ready(function($) {
2
  "use strict";
3
 
4
  var _alm = {},
5
- output_div = $('#shortcode_output'),
6
  output = '[ajax_load_more]';
7
 
8
  output_div.text(output); //Init the shortcode output
@@ -17,7 +17,7 @@ jQuery(document).ready(function($) {
17
  */
18
  _alm.select2 = function(){
19
  // Default Select2
20
- $('.row select, .cnkt-main select, select.jump-menu').not('.multiple, .meta-compare, .meta-type').select2({});
21
 
22
  // multiple
23
  $('.ajax-load-more .categories select.multiple').select2({
@@ -203,7 +203,7 @@ jQuery(document).ready(function($) {
203
  if(acf_field_type !== '' && acf_field_name !== ''){
204
  output += ' acf="'+acf+'"';
205
  if(acf_post_id !== ''){
206
- output += ' acf_post_id="\'.'+ acf_post_id +'.\'"';
207
  }
208
  output += ' acf_field_type="'+ acf_field_type +'"';
209
  output += ' acf_field_name="'+ acf_field_name +'"';
@@ -311,6 +311,33 @@ jQuery(document).ready(function($) {
311
 
312
 
313
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
314
  // ---------------------------
315
  // - Next Page
316
  // ---------------------------
@@ -976,7 +1003,7 @@ jQuery(document).ready(function($) {
976
  // ---------------------------
977
 
978
  var transition = $('.transition select[name=transition]').val();
979
- if(transition !== 'slide')
980
  output += ' transition="'+transition+'"';
981
 
982
  if(transition === 'masonry'){
2
  "use strict";
3
 
4
  var _alm = {},
5
+ output_div = $('.ajax-load-more.shortcode-builder #shortcode_output'),
6
  output = '[ajax_load_more]';
7
 
8
  output_div.text(output); //Init the shortcode output
17
  */
18
  _alm.select2 = function(){
19
  // Default Select2
20
+ $('.row select, .cnkt-main select, select.jump-menu').not('.multiple, .meta-compare, .meta-type, .alm-filter-select').select2({});
21
 
22
  // multiple
23
  $('.ajax-load-more .categories select.multiple').select2({
203
  if(acf_field_type !== '' && acf_field_name !== ''){
204
  output += ' acf="'+acf+'"';
205
  if(acf_post_id !== ''){
206
+ output += ' acf_post_id="'+ acf_post_id +'"';
207
  }
208
  output += ' acf_field_type="'+ acf_field_type +'"';
209
  output += ' acf_field_name="'+ acf_field_name +'"';
311
 
312
 
313
 
314
+ // ---------------------------
315
+ // - Filters
316
+ // ---------------------------
317
+
318
+ var filters = $('.filters input[name=filters]:checked').val();
319
+ if(filters !== 'false' && filters != undefined){
320
+
321
+ $('.filters_options').slideDown(150, 'alm_easeInOutQuad');
322
+
323
+ output += ' filters="'+filters+'"';
324
+
325
+ var filters_analytics = $('#alm-filters input[name=filters-analytics]:checked').val().trim();
326
+ if(filters_analytics !== '' && filters_analytics !== 'true')
327
+ output += ' filters_analytics="'+filters_analytics+'"';
328
+
329
+ var filters_debug = $('#alm-filters input[name=filters-debug]:checked').val().trim();
330
+ if(filters_debug !== '' && filters_debug !== 'false')
331
+ output += ' filters_debug="'+filters_debug+'"';
332
+
333
+ }else{
334
+
335
+ $('.filters_options').slideUp(150, 'alm_easeInOutQuad');
336
+
337
+ }
338
+
339
+
340
+
341
  // ---------------------------
342
  // - Next Page
343
  // ---------------------------
1003
  // ---------------------------
1004
 
1005
  var transition = $('.transition select[name=transition]').val();
1006
+ if(transition !== 'fade')
1007
  output += ' transition="'+transition+'"';
1008
 
1009
  if(transition === 'masonry'){
admin/shortcode-builder/shortcode-builder.php CHANGED
@@ -20,13 +20,14 @@
20
  if(alm_has_addon_shortcodes()) : ?>
21
 
22
  <div class="shortcode-parameter-wrap">
23
- <h2 class="shortcode-title"><?php _e('Add-ons & Extensions', 'ajax-load-more'); ?></h2>
24
-
25
  <?php
26
  require_once('components/acf.php');
27
  require_once('components/cache.php');
28
  require_once('components/cta.php');
29
  require_once('components/comments.php');
 
30
  require_once('components/nextpage.php');
31
  require_once('components/paging.php');
32
  require_once('components/preloaded.php');
@@ -42,8 +43,8 @@
42
 
43
  <!-- Display Settings -->
44
  <div class="shortcode-parameter-wrap">
45
- <h2 class="shortcode-title"><?php _e('Display Settings', 'ajax-load-more'); ?></h2>
46
-
47
  <!-- Template Selection -->
48
  <?php
49
  echo '<div class="row repeater" id="alm-repeaters">';
@@ -282,8 +283,8 @@
282
  <div class="wrap">
283
  <div class="inner">
284
  <select class="alm_element transition" name="transition">
285
- <option value="slide" selected="selected"><?php _e('Slide', 'ajax-load-more'); ?></option>
286
- <option value="fade"><?php _e('Fade', 'ajax-load-more'); ?></option>
287
  <option value="masonry"><?php _e('Masonry', 'ajax-load-more'); ?></option>
288
  <option value="none"><?php _e('None', 'ajax-load-more'); ?></option>
289
  </select>
@@ -547,18 +548,16 @@
547
  <!-- Destroy After -->
548
  <div class="row input alm-destroy-after" id="alm-destroy-after">
549
  <h3 class="heading"><?php _e('Destroy After', 'ajax-load-more'); ?></h3>
 
550
  <div class="expand-wrap">
551
- <!-- Destroy After -->
552
- <div class="expand-wrap">
553
- <div class="section-title">
554
- <p><?php _e('Remove Ajax Load More functionality after {<em>n</em>} number of pages have been loaded.', 'ajax-load-more'); ?></p>
555
- </div>
556
- <div class="wrap">
557
- <div class="inner">
558
- <input type="number" class="alm_element numbers-only" name="destroy-after" id="disable-after" step="1" min="0" value="">
559
- </div>
560
- </div>
561
- </div>
562
  </div>
563
  </div>
564
  <!-- End Destroy After -->
@@ -571,7 +570,7 @@
571
 
572
  <!-- Query Parameters -->
573
  <div class="shortcode-parameter-wrap">
574
- <h2 class="shortcode-title"><?php _e('Query Parameters', 'ajax-load-more'); ?></h2>
575
 
576
  <!-- Posts Per Page -->
577
  <div class="row input posts_per_page" id="alm-post-page">
20
  if(alm_has_addon_shortcodes()) : ?>
21
 
22
  <div class="shortcode-parameter-wrap">
23
+ <h2 class="shortcode-title"><i class="fa fa-plus-circle"></i><?php _e('Add-ons & Extensions', 'ajax-load-more'); ?></h2>
24
+
25
  <?php
26
  require_once('components/acf.php');
27
  require_once('components/cache.php');
28
  require_once('components/cta.php');
29
  require_once('components/comments.php');
30
+ require_once('components/filters.php');
31
  require_once('components/nextpage.php');
32
  require_once('components/paging.php');
33
  require_once('components/preloaded.php');
43
 
44
  <!-- Display Settings -->
45
  <div class="shortcode-parameter-wrap">
46
+ <h2 class="shortcode-title"><i class="fa fa-cog"></i><?php _e('Display Settings', 'ajax-load-more'); ?></h2>
47
+
48
  <!-- Template Selection -->
49
  <?php
50
  echo '<div class="row repeater" id="alm-repeaters">';
283
  <div class="wrap">
284
  <div class="inner">
285
  <select class="alm_element transition" name="transition">
286
+ <option value="fade" selected="selected"><?php _e('Fade', 'ajax-load-more'); ?></option>
287
+ <option value="slide"><?php _e('Slide', 'ajax-load-more'); ?></option>
288
  <option value="masonry"><?php _e('Masonry', 'ajax-load-more'); ?></option>
289
  <option value="none"><?php _e('None', 'ajax-load-more'); ?></option>
290
  </select>
548
  <!-- Destroy After -->
549
  <div class="row input alm-destroy-after" id="alm-destroy-after">
550
  <h3 class="heading"><?php _e('Destroy After', 'ajax-load-more'); ?></h3>
551
+ <!-- Destroy After -->
552
  <div class="expand-wrap">
553
+ <div class="section-title">
554
+ <p><?php _e('Remove Ajax Load More functionality after {<em>n</em>} number of pages have been loaded.', 'ajax-load-more'); ?></p>
555
+ </div>
556
+ <div class="wrap">
557
+ <div class="inner">
558
+ <input type="number" class="alm_element numbers-only" name="destroy-after" id="disable-after" step="1" min="0" value="">
559
+ </div>
560
+ </div>
 
 
 
561
  </div>
562
  </div>
563
  <!-- End Destroy After -->
570
 
571
  <!-- Query Parameters -->
572
  <div class="shortcode-parameter-wrap">
573
+ <h2 class="shortcode-title"><i class="fa fa-database"></i><?php _e('Query Parameters', 'ajax-load-more'); ?></h2>
574
 
575
  <!-- Posts Per Page -->
576
  <div class="row input posts_per_page" id="alm-post-page">
admin/src/js/admin.js CHANGED
@@ -42,7 +42,7 @@ jQuery(document).ready(function($) {
42
  settingsTarget.classList.add('--saved');
43
  settingsTarget.innerHTML = alm_admin_localize.settings_saved;
44
  settingsForm.classList.remove('--saving');
45
- console.log(alm_admin_localize.ajax_load_more +' - '+ alm_admin_localize.settings_saved);
46
  savingSettings = false;
47
 
48
  setTimeout(function(){
@@ -96,11 +96,13 @@ jQuery(document).ready(function($) {
96
  *
97
  * @since 2.8.4
98
  */
99
-
100
- $('.tooltip').tooltipster({
101
- delay: 100,
102
- speed: 175,
103
- maxWidth: 400
 
 
104
  });
105
 
106
 
@@ -174,7 +176,7 @@ jQuery(document).ready(function($) {
174
  };
175
 
176
  // Copy link on shortcode builder
177
- $('.shortcode-builder .copy').click(function(){
178
  var c = $('#shortcode_output').html();
179
  _alm.copyToClipboard(c);
180
  });
@@ -463,11 +465,11 @@ jQuery(document).ready(function($) {
463
  if($('#alm-add-ons').length){
464
  var addOnColumns = $('#alm-add-ons .group .expand-wrap');
465
  $(window).load(function() {
466
- equalheight(addOnColumns);
467
  });
468
  $(window).resize(function() {
469
  setTimeout(function(){
470
- equalheight(addOnColumns);
471
  }, 500);
472
  });
473
  }
42
  settingsTarget.classList.add('--saved');
43
  settingsTarget.innerHTML = alm_admin_localize.settings_saved;
44
  settingsForm.classList.remove('--saving');
45
+ //console.log(alm_admin_localize.ajax_load_more +' - '+ alm_admin_localize.settings_saved);
46
  savingSettings = false;
47
 
48
  setTimeout(function(){
96
  *
97
  * @since 2.8.4
98
  */
99
+
100
+ $('body').on('mouseenter', '.tooltip:not(.tooltipstered)', function(){
101
+ $(this).tooltipster({
102
+ delay: 100,
103
+ speed: 150,
104
+ maxWidth: 325
105
+ }).tooltipster('show');
106
  });
107
 
108
 
176
  };
177
 
178
  // Copy link on shortcode builder
179
+ $('.copy-to-clipboard').on('click', function(){
180
  var c = $('#shortcode_output').html();
181
  _alm.copyToClipboard(c);
182
  });
465
  if($('#alm-add-ons').length){
466
  var addOnColumns = $('#alm-add-ons .group .expand-wrap');
467
  $(window).load(function() {
468
+ //equalheight(addOnColumns);
469
  });
470
  $(window).resize(function() {
471
  setTimeout(function(){
472
+ //equalheight(addOnColumns);
473
  }, 500);
474
  });
475
  }
admin/src/scss/admin.scss CHANGED
@@ -14,7 +14,8 @@ body.ajax-load-more_page_ajax-load-more-add-ons,
14
  body.ajax-load-more_page_ajax-load-more-extensions,
15
  body.ajax-load-more_page_ajax-load-more-help,
16
  body.ajax-load-more_page_ajax-load-more-licenses,
17
- body.ajax-load-more_page_ajax-load-more-cache{
 
18
  background-color: #f7f7f7;
19
  #wpcontent{
20
  padding-left: 0;
@@ -32,7 +33,8 @@ body.ajax-load-more_page_ajax-load-more-add-ons,
32
  body.ajax-load-more_page_ajax-load-more-extensions,
33
  body.ajax-load-more_page_ajax-load-more-help,
34
  body.ajax-load-more_page_ajax-load-more-licenses,
35
- body.ajax-load-more_page_ajax-load-more-cache{
 
36
  background: #efefef;
37
  #wpfooter {
38
  padding-top: 0;
@@ -849,7 +851,7 @@ a.layout-hover{
849
  .ajax-load-more .expand-wrap hr{
850
  border: 0;
851
  height: 0;
852
- border-top: 1px solid rgba(0, 0, 0, 0.1);
853
  border-bottom: 1px solid rgba(255, 255, 255, 0.3);
854
  }
855
  hr.indented{ // Indented as fake padding in shortcode builder
@@ -881,26 +883,29 @@ hr.indented{ // Indented as fake padding in shortcode builder
881
  margin: 0;
882
  font-style: italic;
883
  }
884
- .ajax-load-more .section-title p .fa.tooltip,
885
- .form-table label .fa.tooltip{
886
- margin: 0 2px;
887
- display: inline-block;
888
- font-size: 15px;
889
- opacity: 0.9;
890
- top: 0;
891
- }
892
  .ajax-load-more .section-title p .fa.tooltip:hover,
893
  .form-table label .fa.tooltip:hover{
894
  opacity: 1;
895
  }
896
- .fa.tooltip{
 
 
897
  text-decoration: none;
898
  cursor: help;
899
  position: relative;
900
- top: -1px;
 
 
 
 
 
 
 
901
  }
902
-
903
- .ajax-load-more .section-title p span,
 
 
904
  .admin.ajax-load-more.settings .form-table p.notify span{
905
  display: inline-block;
906
  padding: 0 4px;
@@ -926,28 +931,27 @@ hr.indented{ // Indented as fake padding in shortcode builder
926
  padding: 0 0 10px;
927
  margin: 0;
928
  font-size: 13px;
929
- color: #888;
930
  }
931
 
932
  .ajax-load-more label input._alm_repeater_alias{
933
  height: auto;
934
  line-height: normal !important;
935
  }
936
-
937
  .preload_amount,
938
  .cache_id,
939
  .alternate_template_wrap,
940
  .cta_template_wrap,
941
  .restapi_options,
 
942
  .next-page-content,
943
  .acf-options,
944
- .masonry-options,
945
  .progress-bar-options{
946
  display: none;
947
  }
948
-
949
-
950
-
951
  .ajax-load-more .row .wrap{
952
  padding: 20px 0 0 5%;
953
  margin: 0;
@@ -1433,7 +1437,7 @@ table.highlight{
1433
  margin-top: 0;
1434
  }
1435
  .form-table tr{
1436
- border-top: 1px solid #efefef;
1437
  }
1438
  .form-table {
1439
  border: 1px solid #e1e1e1;
@@ -1547,72 +1551,61 @@ table.highlight{
1547
  /* Add-ons & Extensions */
1548
 
1549
  .flexbox-wrap{
1550
- display: -webkit-box;
1551
- display: -moz-box;
1552
- display: -ms-flexbox;
1553
- display: -webkit-flex;
1554
  display: flex;
1555
  flex-wrap: wrap;
 
 
 
1556
  }
1557
  #alm-add-ons {}
1558
- #alm-add-ons .group{
1559
  overflow: hidden;
1560
- width: 31.333%;
1561
- display: inline-block;
1562
  vertical-align: top;
1563
  text-align: center;
1564
- margin: 0 1.5% 2% 0;
1565
- word-spacing : -4px;
1566
  padding: 0;
1567
- }
1568
- @media screen and (max-width: 1350px){
1569
- #alm-add-ons .group{
1570
- width: 48%;
1571
- }
1572
- }
1573
- @media screen and (min-width: 1500px){
1574
- #alm-add-ons .group{
1575
- //width: 22%;
1576
  }
1577
- }
1578
- @media screen and (min-width: 2000px){
1579
- #alm-add-ons .group{
1580
- //width: 17%;
1581
  }
1582
  }
1583
- #alm-add-ons .group .expand-wrap{
1584
- display: block;
1585
- padding-bottom: 50px;
1586
- position: relative;
1587
- word-spacing : 0;
1588
- }
1589
  #alm-add-ons .group span.cnkt-button{
1590
  position: absolute;
1591
- left: 0;
1592
- bottom: 0;
1593
  width: 100%;
 
1594
  display: block;
1595
  font-size: 14px;
1596
  padding: 10px 14px;
1597
  transition: all 0.15s ease;
1598
- }
1599
- .ajax-load-more .cnkt-main .group.installed{
1600
- opacity: 0.85;
1601
- filter: grayscale(0.85);
1602
- }
1603
- .ajax-load-more .cnkt-main .group.installed p:before{
1604
- display: none !important;
1605
  }
1606
  #alm-add-ons .group img{
1607
- padding: 12px 18px 12px;
1608
  }
1609
  #alm-add-ons .group a{
1610
  text-decoration: none;
1611
  display: block;
1612
- padding: 15px;
1613
- }
1614
- #alm-add-ons .group:hover{
1615
- border-color: #ccc;
 
1616
  }
1617
  #alm-add-ons .group a h2{
1618
  transition: all 0.15s ease;
@@ -1922,7 +1915,7 @@ table.highlight{
1922
 
1923
  /*
1924
  * Plugin Sidebar
1925
- *
1926
  * @since 1.0
1927
  */
1928
  .ajax-load-more .cnkt-sidebar{}
@@ -2687,19 +2680,29 @@ p.cache-stats{
2687
  background: #fff;
2688
  border: 1px solid #e1e1e1;
2689
  border-radius: 3px;
2690
- margin-bottom: 20px;
2691
- }
2692
- #alm-shortcode-builder-form .shortcode-parameter-wrap h2{
2693
  padding: 20px 22px;
2694
  margin: 0 -20px 20px;
2695
  display: block;
2696
- font-size: 22px;
2697
  width: calc(100% + 40px);
2698
  border-bottom: 1px solid #e1e1e1;
2699
  background-color: #f7f7f7;
2700
  border-radius: 2px 2px 0 0;
2701
  color: #23282d;
 
 
 
 
 
 
 
 
 
 
2702
  }
 
2703
  .forceColors #alm-shortcode-builder-form .shortcode-parameter-wrap h2{
2704
  padding: 12px 22px;
2705
  font-size: 20px;
14
  body.ajax-load-more_page_ajax-load-more-extensions,
15
  body.ajax-load-more_page_ajax-load-more-help,
16
  body.ajax-load-more_page_ajax-load-more-licenses,
17
+ body.ajax-load-more_page_ajax-load-more-cache,
18
+ body.ajax-load-more_page_ajax-load-more-filters{
19
  background-color: #f7f7f7;
20
  #wpcontent{
21
  padding-left: 0;
33
  body.ajax-load-more_page_ajax-load-more-extensions,
34
  body.ajax-load-more_page_ajax-load-more-help,
35
  body.ajax-load-more_page_ajax-load-more-licenses,
36
+ body.ajax-load-more_page_ajax-load-more-cache,
37
+ body.ajax-load-more_page_ajax-load-more-filters{
38
  background: #efefef;
39
  #wpfooter {
40
  padding-top: 0;
851
  .ajax-load-more .expand-wrap hr{
852
  border: 0;
853
  height: 0;
854
+ border-top: 1px solid #efefef;
855
  border-bottom: 1px solid rgba(255, 255, 255, 0.3);
856
  }
857
  hr.indented{ // Indented as fake padding in shortcode builder
883
  margin: 0;
884
  font-style: italic;
885
  }
 
 
 
 
 
 
 
 
886
  .ajax-load-more .section-title p .fa.tooltip:hover,
887
  .form-table label .fa.tooltip:hover{
888
  opacity: 1;
889
  }
890
+ .ajax-load-more .fa.tooltip{
891
+ display: inline-block;
892
+ margin: 0 2px;
893
  text-decoration: none;
894
  cursor: help;
895
  position: relative;
896
+ top: 0;
897
+ background: #fff;
898
+ border-radius: 100%;
899
+ width: 20px;
900
+ height: 20px;
901
+ text-align: center;
902
+ line-height: 20px;
903
+ box-shadow: 0 -1px 1px #ccc;
904
  }
905
+ .cta h3 .fa.tooltip{
906
+ top: 1px;
907
+ }
908
+ .ajax-load-more .section-title p span,
909
  .admin.ajax-load-more.settings .form-table p.notify span{
910
  display: inline-block;
911
  padding: 0 4px;
931
  padding: 0 0 10px;
932
  margin: 0;
933
  font-size: 13px;
934
+ color: #888;
935
  }
936
 
937
  .ajax-load-more label input._alm_repeater_alias{
938
  height: auto;
939
  line-height: normal !important;
940
  }
941
+
942
  .preload_amount,
943
  .cache_id,
944
  .alternate_template_wrap,
945
  .cta_template_wrap,
946
  .restapi_options,
947
+ .filters_options,
948
  .next-page-content,
949
  .acf-options,
950
+ .masonry-options,
951
  .progress-bar-options{
952
  display: none;
953
  }
954
+
 
 
955
  .ajax-load-more .row .wrap{
956
  padding: 20px 0 0 5%;
957
  margin: 0;
1437
  margin-top: 0;
1438
  }
1439
  .form-table tr{
1440
+ border-top: 1px solid #e1e1e1;
1441
  }
1442
  .form-table {
1443
  border: 1px solid #e1e1e1;
1551
  /* Add-ons & Extensions */
1552
 
1553
  .flexbox-wrap{
 
 
 
 
1554
  display: flex;
1555
  flex-wrap: wrap;
1556
+ margin-bottom: 20px;
1557
+ border-top: 1px solid #e1e1e1;
1558
+ border-left: 1px solid #e1e1e1;
1559
  }
1560
  #alm-add-ons {}
1561
+ #alm-add-ons .group{
1562
  overflow: hidden;
1563
+ width: 33.333%;
1564
+ display: flex;
1565
  vertical-align: top;
1566
  text-align: center;
1567
+ margin: 0 !important;
 
1568
  padding: 0;
1569
+ border-radius: 0;
1570
+ border-top: none;
1571
+ border-left: none;
1572
+ &.installed{
1573
+ opacity: 0.85;
1574
+ filter: grayscale(1);
1575
+ p:before{
1576
+ display: none !important;
1577
+ }
1578
  }
1579
+ @media screen and (max-width: 1350px){
1580
+ width: 50%;
 
 
1581
  }
1582
  }
1583
+
 
 
 
 
 
1584
  #alm-add-ons .group span.cnkt-button{
1585
  position: absolute;
1586
+ left: 20px;
1587
+ bottom: 20px;
1588
  width: 100%;
1589
+ width: calc(100% - 40px);
1590
  display: block;
1591
  font-size: 14px;
1592
  padding: 10px 14px;
1593
  transition: all 0.15s ease;
1594
+ border-bottom: none;
1595
+ border-left: none;
1596
+ border-right: none;
 
 
 
 
1597
  }
1598
  #alm-add-ons .group img{
1599
+ padding: 0 15px 15px;
1600
  }
1601
  #alm-add-ons .group a{
1602
  text-decoration: none;
1603
  display: block;
1604
+ padding: 25px 25px 70px;
1605
+ position: relative;
1606
+ }
1607
+ #alm-add-ons .group:hover h2{
1608
+ text-decoration: underline;
1609
  }
1610
  #alm-add-ons .group a h2{
1611
  transition: all 0.15s ease;
1915
 
1916
  /*
1917
  * Plugin Sidebar
1918
+ *
1919
  * @since 1.0
1920
  */
1921
  .ajax-load-more .cnkt-sidebar{}
2680
  background: #fff;
2681
  border: 1px solid #e1e1e1;
2682
  border-radius: 3px;
2683
+ margin-bottom: 20px;
2684
+ h2{
 
2685
  padding: 20px 22px;
2686
  margin: 0 -20px 20px;
2687
  display: block;
2688
+ font-size: 20px;
2689
  width: calc(100% + 40px);
2690
  border-bottom: 1px solid #e1e1e1;
2691
  background-color: #f7f7f7;
2692
  border-radius: 2px 2px 0 0;
2693
  color: #23282d;
2694
+ position: relative;
2695
+ i{
2696
+ position: absolute;
2697
+ right: 15px;
2698
+ top: 50%;
2699
+ transform: translateY(-50%);
2700
+ font-size: 25px;
2701
+ color: #ccc;
2702
+ opacity: 0.45;
2703
+ }
2704
  }
2705
+ }
2706
  .forceColors #alm-shortcode-builder-form .shortcode-parameter-wrap h2{
2707
  padding: 12px 22px;
2708
  font-size: 20px;
admin/src/scss/partials/_header.scss CHANGED
@@ -12,13 +12,13 @@
12
  em{
13
  display: block;
14
  position: relative;
15
- margin-top: 1px;
16
  font-size: 14px;
17
  opacity: 0.7;
18
  font-style: normal;
19
  font-weight: 400;
20
  line-height: 1.35;
21
- margin: 1px 0 $gutter/2;
22
  }
23
  strong{
24
  font-weight: 700;
12
  em{
13
  display: block;
14
  position: relative;
15
+ margin: 1px 0 0;
16
  font-size: 14px;
17
  opacity: 0.7;
18
  font-style: normal;
19
  font-weight: 400;
20
  line-height: 1.35;
21
+ padding: 1px 0 $gutter/2;
22
  }
23
  strong{
24
  font-weight: 700;
admin/views/add-ons.php CHANGED
@@ -11,48 +11,44 @@
11
  <div class="ajax-load-more-inner-wrapper">
12
 
13
  <div class="cnkt-main">
14
-
15
- <?php
16
- $target = 'target="_blank"';
17
- $addons = alm_get_addons();
18
-
19
- foreach($addons as $addon){
20
- $name = $addon['name'];
21
- $intro = $addon['intro'];
22
- $desc = $addon['desc'];
23
- $action = $addon['action'];
24
- $key = $addon['key'];
25
- $status = $addon['status'];
26
- $settings_field = $addon['settings_field'];
27
- $url = $addon['url'];
28
- $img = $addon['img'];
29
- ?>
30
- <div class="group no-shadow<?php if (has_action($action)){ echo ' installed'; } ?>">
31
- <div class="row no-brd">
32
  <a href="<?php echo $url; ?>?utm_source=WP%20Admin&utm_medium=ALM%20Add-ons&utm_campaign=<?php echo $name; ?>" <?php echo $target; ?>>
33
- <div class="expand-wrap">
34
- <img src="<?php echo ALM_ADMIN_URL; ?><?php echo $img; ?>" alt="">
35
- <h2 class="addon-title"><?php echo $name; ?></h2>
36
- <p class="addon-intro"><?php echo $intro; ?></p>
37
- <p><?php echo $desc; ?></p>
38
- <?php
39
- if (has_action($action)){
40
- echo '<span class="cnkt-button installed"><i class="fa fa-check-square"></i> Installed</span> ';
41
- }else{
42
- echo '<span class="cnkt-button"><i class="fa fa-download"></i> Purchase &amp; Install</span>';
43
- }
44
- ?>
45
- </div>
46
  </a>
47
- </div>
48
- </div>
49
- <?php } ?>
50
-
51
  <div class="call-out light no-shadow">
52
  <p><?php _e('All add-ons are installed as stand alone plugins and with a valid license key will receive plugin update notifications directly within the <a href="plugins.php">WordPress plugin dashboard</a>.', 'ajax-load-more'); ?></p>
53
  </div>
54
-
55
- </div>
56
 
57
  <aside class="cnkt-sidebar">
58
  <div id="cnkt-sticky-wrapper">
11
  <div class="ajax-load-more-inner-wrapper">
12
 
13
  <div class="cnkt-main">
14
+
15
+ <div class="flexbox-wrap">
16
+ <?php
17
+ $target = 'target="_blank"';
18
+ $addons = alm_get_addons();
19
+ foreach($addons as $addon){
20
+ $name = $addon['name'];
21
+ $intro = $addon['intro'];
22
+ $desc = $addon['desc'];
23
+ $action = $addon['action'];
24
+ $key = $addon['key'];
25
+ $status = $addon['status'];
26
+ $settings_field = $addon['settings_field'];
27
+ $url = $addon['url'];
28
+ $img = $addon['img'];
29
+ ?>
30
+ <div class="group no-shadow<?php if (has_action($action)){ echo ' installed'; } ?>">
 
31
  <a href="<?php echo $url; ?>?utm_source=WP%20Admin&utm_medium=ALM%20Add-ons&utm_campaign=<?php echo $name; ?>" <?php echo $target; ?>>
32
+ <img src="<?php echo ALM_ADMIN_URL; ?><?php echo $img; ?>" alt="">
33
+ <h2 class="addon-title"><?php echo $name; ?></h2>
34
+ <p class="addon-intro"><?php echo $intro; ?></p>
35
+ <p><?php echo $desc; ?></p>
36
+ <?php
37
+ if (has_action($action)){
38
+ echo '<span class="cnkt-button installed"><i class="fa fa-check-square"></i> '. __('Installed', 'ajax-load-more') .'</span> ';
39
+ }else{
40
+ echo '<span class="cnkt-button"><i class="fa fa-download"></i> '. __('Purchase', 'ajax-load-more') .'</span>';
41
+ }
42
+ ?>
 
 
43
  </a>
44
+ </div>
45
+ <?php } ?>
46
+ </div>
47
+
48
  <div class="call-out light no-shadow">
49
  <p><?php _e('All add-ons are installed as stand alone plugins and with a valid license key will receive plugin update notifications directly within the <a href="plugins.php">WordPress plugin dashboard</a>.', 'ajax-load-more'); ?></p>
50
  </div>
51
+ </div>
 
52
 
53
  <aside class="cnkt-sidebar">
54
  <div id="cnkt-sticky-wrapper">
admin/views/licenses.php CHANGED
@@ -3,7 +3,7 @@
3
  <header class="header-wrap">
4
  <h1>
5
  <?php echo ALM_TITLE; ?>: <strong><?php _e('Licenses', 'ajax-load-more'); ?></strong>
6
- <em><?php _e('Enter your license keys to enable automatic <a href="admin.php?page=ajax-load-more-add-ons">add-on</a> updates', 'ajax-load-more'); ?>.</em>
7
  </h1>
8
  </header>
9
 
3
  <header class="header-wrap">
4
  <h1>
5
  <?php echo ALM_TITLE; ?>: <strong><?php _e('Licenses', 'ajax-load-more'); ?></strong>
6
+ <em><?php _e('Enter your license keys to enable <a href="admin.php?page=ajax-load-more-add-ons">add-on</a> updates from the plugins dashboard', 'ajax-load-more'); ?>.</em>
7
  </h1>
8
  </header>
9
 
admin/views/settings.php CHANGED
@@ -58,18 +58,20 @@
58
  <?php
59
  if(has_action('alm_cache_settings'))
60
  echo '<option value="2">'.__('Cache', 'ajax-load-more').'</option>';
 
 
61
  if(has_action('alm_layouts_installed'))
62
- echo '<option value="3">'.__('Layouts', 'ajax-load-more').'</options>';
63
  if(has_action('alm_paging_settings'))
64
- echo '<option value="4">'.__('Paging', 'ajax-load-more').'</option>';
65
  if(has_action('alm_prev_post_settings'))
66
- echo '<option value="5">'.__('Previous Post', 'ajax-load-more').'</option>';
67
  if(has_action('alm_rest_api_settings'))
68
- echo '<option value="6">'.__('REST API', 'ajax-load-more').'</option>';
69
  if(has_action('alm_seo_settings'))
70
- echo '<option value="7">'.__('SEO', 'ajax-load-more').'</option>';
71
  if(has_action('alm_theme_repeaters_settings'))
72
- echo '<option value="8">'.__('Theme Repeaters', 'ajax-load-more').'</option>';
73
  ?>
74
  </select>
75
  </div>
58
  <?php
59
  if(has_action('alm_cache_settings'))
60
  echo '<option value="2">'.__('Cache', 'ajax-load-more').'</option>';
61
+ if(has_action('alm_filters_installed'))
62
+ echo '<option value="3">'.__('Filters', 'ajax-load-more').'</options>';
63
  if(has_action('alm_layouts_installed'))
64
+ echo '<option value="4">'.__('Layouts', 'ajax-load-more').'</options>';
65
  if(has_action('alm_paging_settings'))
66
+ echo '<option value="5">'.__('Paging', 'ajax-load-more').'</option>';
67
  if(has_action('alm_prev_post_settings'))
68
+ echo '<option value="6">'.__('Previous Post', 'ajax-load-more').'</option>';
69
  if(has_action('alm_rest_api_settings'))
70
+ echo '<option value="7">'.__('REST API', 'ajax-load-more').'</option>';
71
  if(has_action('alm_seo_settings'))
72
+ echo '<option value="8">'.__('SEO', 'ajax-load-more').'</option>';
73
  if(has_action('alm_theme_repeaters_settings'))
74
+ echo '<option value="9">'.__('Theme Repeaters', 'ajax-load-more').'</option>';
75
  ?>
76
  </select>
77
  </div>
admin/views/shortcode-builder.php CHANGED
@@ -35,7 +35,7 @@
35
  <p class="small reset-shortcode-builder"><a href="javascript:void(0);"><i class="fa fa-refresh"></i> <?php _e('Reset', 'ajax-load-more'); ?></a></p>
36
  </div>
37
  <div class="major-publishing-actions">
38
- <a class="button button-primary copy"><?php _e('Copy Shortcode', 'ajax-load-more'); ?></a>
39
  </div>
40
  </div>
41
  </div>
35
  <p class="small reset-shortcode-builder"><a href="javascript:void(0);"><i class="fa fa-refresh"></i> <?php _e('Reset', 'ajax-load-more'); ?></a></p>
36
  </div>
37
  <div class="major-publishing-actions">
38
+ <a class="button button-primary copy copy-to-clipboard"><?php _e('Copy Shortcode', 'ajax-load-more'); ?></a>
39
  </div>
40
  </div>
41
  </div>
ajax-load-more.php CHANGED
@@ -7,15 +7,15 @@ Text Domain: ajax-load-more
7
  Author: Darren Cooney
8
  Twitter: @KaptonKaos
9
  Author URI: https://connekthq.com
10
- Version: 3.3.1
11
  License: GPL
12
  Copyright: Darren Cooney & Connekt Media
13
  */
14
 
15
 
16
 
17
- define('ALM_VERSION', '3.3.1');
18
- define('ALM_RELEASE', 'December 7, 2017');
19
  define('ALM_STORE_URL', 'https://connekthq.com');
20
 
21
 
@@ -112,8 +112,11 @@ if( !class_exists('AjaxLoadMore') ):
112
 
113
  class AjaxLoadMore {
114
 
 
 
115
  function __construct(){
116
 
 
117
  $this->alm_define_constants();
118
  $this->alm_includes();
119
 
@@ -153,6 +156,7 @@ if( !class_exists('AjaxLoadMore') ):
153
  if (!defined('ALM_CTA_ITEM_NAME')) define('ALM_CTA_ITEM_NAME', '14456');
154
  if (!defined('ALM_COMMENTS_ITEM_NAME')) define('ALM_COMMENTS_ITEM_NAME', '12172');
155
  if (!defined('ALM_UNLIMITED_ITEM_NAME')) define('ALM_UNLIMITED_ITEM_NAME', '3118');
 
156
  if (!defined('ALM_LAYOUTS_ITEM_NAME')) define('ALM_LAYOUTS_ITEM_NAME', '11398');
157
  if (!defined('ALM_NEXTPAGE_ITEM_NAME')) define('ALM_NEXTPAGE_ITEM_NAME', '24540');
158
  if (!defined('ALM_PAGING_ITEM_NAME')) define('ALM_PAGING_ITEM_NAME', '6898');
@@ -302,14 +306,28 @@ if( !class_exists('AjaxLoadMore') ):
302
  * The AjaxLoadMore shortcode
303
  *
304
  * @since 2.0.0
 
305
  */
306
 
307
  public function alm_shortcode($atts) {
 
308
  return ALM_SHORTCODE::alm_render_shortcode($atts);
309
  }
310
 
311
 
312
 
 
 
 
 
 
 
 
 
 
 
 
 
313
  /*
314
  * alm_query_posts
315
  * Ajax Load More Query
@@ -372,7 +390,7 @@ if( !class_exists('AjaxLoadMore') ):
372
  $meta_type = $_GET['meta_type'];
373
  if($meta_type == '') $meta_type = 'CHAR';
374
 
375
- $s = (isset($_GET['search'])) ? $_GET['search'] : '';
376
  $custom_args = (isset($_GET['custom_args'])) ? $_GET['custom_args'] : '';
377
 
378
  // Author
7
  Author: Darren Cooney
8
  Twitter: @KaptonKaos
9
  Author URI: https://connekthq.com
10
+ Version: 3.4.0
11
  License: GPL
12
  Copyright: Darren Cooney & Connekt Media
13
  */
14
 
15
 
16
 
17
+ define('ALM_VERSION', '3.4.0');
18
+ define('ALM_RELEASE', 'February 13, 2018');
19
  define('ALM_STORE_URL', 'https://connekthq.com');
20
 
21
 
112
 
113
  class AjaxLoadMore {
114
 
115
+ static $shortcode_atts = null;
116
+
117
  function __construct(){
118
 
119
+
120
  $this->alm_define_constants();
121
  $this->alm_includes();
122
 
156
  if (!defined('ALM_CTA_ITEM_NAME')) define('ALM_CTA_ITEM_NAME', '14456');
157
  if (!defined('ALM_COMMENTS_ITEM_NAME')) define('ALM_COMMENTS_ITEM_NAME', '12172');
158
  if (!defined('ALM_UNLIMITED_ITEM_NAME')) define('ALM_UNLIMITED_ITEM_NAME', '3118');
159
+ if (!defined('ALM_FILTERS_ITEM_NAME')) define('ALM_FILTERS_ITEM_NAME', '35992');
160
  if (!defined('ALM_LAYOUTS_ITEM_NAME')) define('ALM_LAYOUTS_ITEM_NAME', '11398');
161
  if (!defined('ALM_NEXTPAGE_ITEM_NAME')) define('ALM_NEXTPAGE_ITEM_NAME', '24540');
162
  if (!defined('ALM_PAGING_ITEM_NAME')) define('ALM_PAGING_ITEM_NAME', '6898');
306
  * The AjaxLoadMore shortcode
307
  *
308
  * @since 2.0.0
309
+ * @updated 3.2.0
310
  */
311
 
312
  public function alm_shortcode($atts) {
313
+ self::$shortcode_atts = $atts;
314
  return ALM_SHORTCODE::alm_render_shortcode($atts);
315
  }
316
 
317
 
318
 
319
+ /*
320
+ * alm_return_shortcode_atts
321
+ * Return the ALM shortcode atts
322
+ *
323
+ * @since 3.2.0
324
+ */
325
+ public static function alm_return_shortcode_atts(){
326
+ return self::$shortcode_atts;
327
+ }
328
+
329
+
330
+
331
  /*
332
  * alm_query_posts
333
  * Ajax Load More Query
390
  $meta_type = $_GET['meta_type'];
391
  if($meta_type == '') $meta_type = 'CHAR';
392
 
393
+ $s = (isset($_GET['search'])) ? sanitize_text_field($_GET['search']) : '';
394
  $custom_args = (isset($_GET['custom_args'])) ? $_GET['custom_args'] : '';
395
 
396
  // Author
core/classes/class.alm-shortcode.php CHANGED
@@ -47,6 +47,9 @@ if( !class_exists('ALM_SHORTCODE') ):
47
  }
48
 
49
  extract(shortcode_atts(array(
 
 
 
50
  'acf' => false,
51
  'acf_post_id' => '',
52
  'acf_field_type' => 'repeater',
@@ -134,7 +137,7 @@ if( !class_exists('ALM_SHORTCODE') ):
134
  'pause_override' => 'false',
135
  'pause' => 'false',
136
  'destroy_after' => '',
137
- 'transition' => 'slide',
138
  'transition_speed' => '250',
139
  'transition_container' => 'true',
140
  'transition_container_classes' => '',
@@ -150,7 +153,7 @@ if( !class_exists('ALM_SHORTCODE') ):
150
  'css_classes' => '',
151
  'id' => '',
152
  'primary' => false
153
- ), $atts));
154
 
155
 
156
  // Start Enqueue Scripts
@@ -195,6 +198,17 @@ if( !class_exists('ALM_SHORTCODE') ):
195
  }
196
  }
197
 
 
 
 
 
 
 
 
 
 
 
 
198
  // Previous Post
199
  if(has_action('alm_prev_post_installed') && $previous_post === 'true'){
200
  wp_enqueue_script( 'ajax-load-more-previous-post' );
@@ -204,7 +218,7 @@ if( !class_exists('ALM_SHORTCODE') ):
204
  if(has_action('alm_seo_installed') && $seo === 'true'){
205
  wp_enqueue_script( 'ajax-load-more-seo' );
206
  }
207
-
208
 
209
 
210
  /*
@@ -217,16 +231,29 @@ if( !class_exists('ALM_SHORTCODE') ):
217
  do_action('alm_enqueue_external_scripts', $atts);
218
 
219
 
220
- // End Enqueue Scripts
221
-
222
 
223
- if($previous_post === 'true'){
224
- $previous_post = true;
225
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
226
 
227
- if($seo === "true" || $previous_post){
228
  $transition_container = "true";
229
  }
 
230
  if(!empty($transition_container_classes)){
231
  $transition_container_classes = ' '. $transition_container_classes;
232
  }
@@ -406,6 +433,11 @@ if( !class_exists('ALM_SHORTCODE') ):
406
  if(has_action('alm_seo_installed') && $seo === 'true' && !$users){
407
  $preloaded_amount = $posts_per_page;
408
  }
 
 
 
 
 
409
 
410
  // Paging Add-on
411
  // - Set $preloaded_amount to $posts_per_page
@@ -470,7 +502,7 @@ if( !class_exists('ALM_SHORTCODE') ):
470
  'author' => $author,
471
  'post__in' => $post__in,
472
  'post__not_in' => $post__not_in,
473
- 's' => $search,
474
  'custom_args' => $custom_args,
475
  'post_status' => $post_status,
476
  'order' => $order,
@@ -481,7 +513,8 @@ if( !class_exists('ALM_SHORTCODE') ):
481
  'lang' => $lang,
482
  'css_classes' => $css_classes,
483
  );
484
-
 
485
  $type = alm_get_repeater_type($repeater);
486
 
487
  if($comments){ // Comments
@@ -508,7 +541,7 @@ if( !class_exists('ALM_SHORTCODE') ):
508
  }
509
 
510
  }
511
-
512
  elseif($users){ // Users
513
 
514
  if(has_action('alm_users_preloaded') && $users){
@@ -569,13 +602,13 @@ if( !class_exists('ALM_SHORTCODE') ):
569
 
570
  }
571
 
572
- else { // Standard
573
 
574
 
575
  /*
576
  * alm_preload_args
577
  *
578
- * ALM Preloaded Filter Hook
579
  *
580
  * @return $args;
581
  */
@@ -583,17 +616,29 @@ if( !class_exists('ALM_SHORTCODE') ):
583
 
584
 
585
 
 
 
 
 
 
 
 
 
 
 
 
 
 
586
  /*
587
  * alm_modify_query_args
588
  *
589
- * ALM Core Filter Hook
590
  *
591
  * @return $args;
592
  * Deprecated 2.10
593
  */
594
  $args = apply_filters('alm_modify_query_args', $args, $slug);
595
-
596
-
597
 
598
  /*
599
  * alm_query_args_[id]
@@ -612,33 +657,39 @@ if( !class_exists('ALM_SHORTCODE') ):
612
  $noscript = '';
613
 
614
  if ($alm_preload_query->have_posts()) :
615
- $alm_item = 0; // Count var
616
- $alm_page = 0; // Set page to 0
617
  $alm_found_posts = $alm_total_posts;
618
- $alm_current = 0;
 
 
 
 
 
619
  while ($alm_preload_query->have_posts()) : $alm_preload_query->the_post();
620
 
621
  $alm_item++;
622
- $alm_current++;
623
 
624
  // Call to Action [Before]
625
  if($cta && has_action('alm_cta_inc') && $cta_pos == 'before'){
626
- if($alm_current == $cta_val){
627
- $output .= apply_filters('alm_cta_inc', $cta_repeater, $cta_theme_repeater, $alm_found_posts, $alm_page, $alm_item, $alm_current, true);
628
- }
629
  }
630
 
631
  $output .= apply_filters('alm_preload_inc', $repeater, $type, $theme_repeater, $alm_found_posts, $alm_page, $alm_item, $alm_current);
632
 
633
  // Call to Action [After]
634
  if($cta && has_action('alm_cta_inc') && $cta_pos == 'after'){
635
- if($alm_current == $cta_val){
636
- $output .= apply_filters('alm_cta_inc', $cta_repeater, $cta_theme_repeater, $alm_found_posts, $alm_page, $alm_item, $alm_current, true);
637
- }
638
- }
639
 
640
  endwhile; wp_reset_query();
641
-
 
 
 
 
 
642
  if(has_action('alm_seo_installed') && $seo === 'true'){ // If SEO, add noscript paging
643
  // Create noscript paging for SEO if preload and seo are enabled
644
  $noscript = alm_paging_no_script($alm_preload_query);
@@ -647,15 +698,23 @@ if( !class_exists('ALM_SHORTCODE') ):
647
  endif;
648
 
649
  $preloaded_output .= '<'.$container_element.' class="alm-listing alm-preloaded'. $classname . $css_classes .'" data-total-posts="'. $alm_total_posts .'">';
650
-
651
  if($seo === "true" && $paging === 'false'){
 
 
 
 
 
652
  if(is_search()){
653
  // If search, append slug (?s=term) to data-url
654
- $preloaded_output .= '<div class="alm-reveal alm-seo'. $transition_container_classes .'" data-page="1" data-url="'.$canonicalURL.''. $slug .'">';
655
  }else{
656
- $preloaded_output .= '<div class="alm-reveal alm-seo'. $transition_container_classes .'" data-page="1" data-url="'.$canonicalURL.'">';
 
 
657
  }
658
  }
 
659
  if($seo === "false" && $paging === 'true' || $seo === "true" && $paging === 'true'){
660
  $preloaded_output .= '<div class="alm-reveal'. $transition_container_classes .'">';
661
  }
@@ -692,6 +751,20 @@ if( !class_exists('ALM_SHORTCODE') ):
692
  $ajaxloadmore .= '<'.$container_element.' class="'.$listing_class.' alm-ajax'. $paging_container_class . $classname . $css_classes .'"'; // Build ALM container
693
 
694
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
695
  // Cache Add-on
696
  if(has_action('alm_cache_installed') && $cache === 'true'){
697
  $cache_return = apply_filters(
@@ -717,20 +790,6 @@ if( !class_exists('ALM_SHORTCODE') ):
717
  }
718
 
719
 
720
- // Advanced Custom Fields Extension
721
- if(has_action('alm_acf_installed') && $acf === 'true'){
722
- $acf_return = apply_filters(
723
- 'alm_acf_shortcode',
724
- $acf,
725
- $acf_field_type,
726
- $acf_field_name,
727
- $acf_post_id,
728
- $post_id
729
- );
730
- $ajaxloadmore .= $acf_return;
731
- }
732
-
733
-
734
  // Comments Add-on
735
  if(has_action('alm_comments_installed') && $comments === 'true'){
736
  $comments_return = apply_filters(
@@ -745,20 +804,18 @@ if( !class_exists('ALM_SHORTCODE') ):
745
  );
746
  $ajaxloadmore .= $comments_return;
747
  }
748
-
749
-
750
- // REST API Add-on
751
- if(has_action('alm_rest_api_installed') && $restapi === true){
752
- $restapi_return = apply_filters(
753
- 'alm_rest_api_shortcode',
754
- 'true',
755
- $restapi_base,
756
- $restapi_namespace,
757
- $restapi_endpoint,
758
- $restapi_template_id,
759
- $restapi_debug
760
  );
761
- $ajaxloadmore .= $restapi_return;
762
  }
763
 
764
 
@@ -783,6 +840,21 @@ if( !class_exists('ALM_SHORTCODE') ):
783
  }
784
 
785
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
786
  // SEO Add-on
787
  if(has_action('alm_seo_installed') && $seo === 'true'){
788
  $seo_return = apply_filters(
@@ -823,10 +895,8 @@ if( !class_exists('ALM_SHORTCODE') ):
823
 
824
 
825
  // Users Add-on
826
- if(has_action('alm_users_installed') && $users){
827
-
828
- $posts_per_page = $users_per_page; // Update $posts_per_page var to be $users_per_page
829
-
830
  $users_return = apply_filters(
831
  'alm_users_shortcode',
832
  $users_role,
@@ -916,11 +986,13 @@ if( !class_exists('ALM_SHORTCODE') ):
916
  $ajaxloadmore .= '>';
917
 
918
 
919
- // Previous Post Add-on
920
- // - Get first post, append data to ajax load more object
921
  if(has_action('alm_prev_post_installed') && $previous_post){
 
922
  $repeater_type = preg_split('/(?=\d)/', $repeater, 2); // split $repeater at number to retrieve type
923
  $repeater_type = $repeater_type[0]; // (default | repeater | template_)
 
924
  if($theme_repeater != 'null' && has_filter('alm_get_theme_repeater')){
925
  $repeater_type = null;
926
  }
@@ -928,34 +1000,31 @@ if( !class_exists('ALM_SHORTCODE') ):
928
  $previous_post_permanlink = ($_SERVER["QUERY_STRING"]) ? get_permalink($previous_post_id) .'?'. $_SERVER["QUERY_STRING"] : get_permalink($previous_post_id);
929