Advanced Woo Search - Version 2.18

Version Description

( 2021-01-04 ) = * Add - Support for Walker WordPress theme * Update - Elementor plugin support. Add integration with Elementskit plugin header search * Update - Search results styles. Fit search results box to search form width * Update - Admin menu item position * Update - Add Premium tab inside plugin settings page * Dev - Update aws_show_mobile_layout filter. Change it to aws_show_modal_layout and give option to use modal layout on desktop

Download this release

Release Info

Developer Mihail Barinov
Plugin Icon 128x128 Advanced Woo Search
Version 2.18
Comparing to
See all releases

Code changes from version 2.17 to 2.18

advanced-woo-search.php CHANGED
@@ -3,12 +3,12 @@
3
  /*
4
  Plugin Name: Advanced Woo Search
5
  Description: Advance ajax WooCommerce product search.
6
- Version: 2.17
7
  Author: ILLID
8
  Author URI: https://advanced-woo-search.com/
9
  Text Domain: advanced-woo-search
10
  WC requires at least: 3.0.0
11
- WC tested up to: 4.7.0
12
  */
13
 
14
 
@@ -96,7 +96,7 @@ final class AWS_Main {
96
  */
97
  private function define_constants() {
98
 
99
- $this->define( 'AWS_VERSION', '2.17' );
100
 
101
  $this->define( 'AWS_DIR', plugin_dir_path( AWS_FILE ) );
102
  $this->define( 'AWS_URL', plugin_dir_url( AWS_FILE ) );
@@ -130,6 +130,7 @@ final class AWS_Main {
130
  include_once( 'includes/admin/class-aws-admin-fields.php' );
131
  include_once( 'includes/admin/class-aws-admin-options.php' );
132
  include_once( 'includes/admin/class-aws-admin-meta-boxes.php' );
 
133
 
134
  }
135
 
@@ -190,7 +191,7 @@ final class AWS_Main {
190
  $setting_link = '<a href="' . admin_url('admin.php?page=aws-options') . '">'.esc_html__( 'Settings', 'advanced-woo-search' ).'</a>';
191
  array_unshift( $links, $setting_link );
192
 
193
- $premium_link = '<a href="https://advanced-woo-search.com/?utm_source=plugin&utm_medium=settings-link&utm_campaign=aws-pro-plugin" target="_blank">'.esc_html__( 'Get Premium', 'advanced-woo-search' ).'</a>';
194
  array_unshift( $links, $premium_link );
195
  }
196
 
3
  /*
4
  Plugin Name: Advanced Woo Search
5
  Description: Advance ajax WooCommerce product search.
6
+ Version: 2.18
7
  Author: ILLID
8
  Author URI: https://advanced-woo-search.com/
9
  Text Domain: advanced-woo-search
10
  WC requires at least: 3.0.0
11
+ WC tested up to: 4.8.0
12
  */
13
 
14
 
96
  */
97
  private function define_constants() {
98
 
99
+ $this->define( 'AWS_VERSION', '2.18' );
100
 
101
  $this->define( 'AWS_DIR', plugin_dir_path( AWS_FILE ) );
102
  $this->define( 'AWS_URL', plugin_dir_url( AWS_FILE ) );
130
  include_once( 'includes/admin/class-aws-admin-fields.php' );
131
  include_once( 'includes/admin/class-aws-admin-options.php' );
132
  include_once( 'includes/admin/class-aws-admin-meta-boxes.php' );
133
+ include_once( 'includes/admin/class-aws-admin-page-premium.php' );
134
 
135
  }
136
 
191
  $setting_link = '<a href="' . admin_url('admin.php?page=aws-options') . '">'.esc_html__( 'Settings', 'advanced-woo-search' ).'</a>';
192
  array_unshift( $links, $setting_link );
193
 
194
+ $premium_link = '<a href="' . admin_url( 'admin.php?page=aws-options&tab=premium' ) . '">'.esc_html__( 'Premium Version', 'advanced-woo-search' ).'</a>';
195
  array_unshift( $links, $premium_link );
196
  }
197
 
assets/css/admin.css CHANGED
@@ -51,14 +51,21 @@
51
  border: 1px dotted #ccc;
52
  }
53
 
54
- .nav-tab.premium-tab {
 
55
  background: #FFF7C7;
56
  }
57
 
58
- .nav-tab.premium-tab:hover {
 
59
  background: #fff;
60
  }
61
 
 
 
 
 
 
62
  /* Reindex button */
63
  #aws-reindex {
64
  display: inline-block;
@@ -320,6 +327,325 @@ h1.aws-instance-name {
320
  font-weight: 400;
321
  }
322
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
323
  /* Welcome message */
324
 
325
  .welcome-panel .welcome-panel-column:first-child {
51
  border: 1px dotted #ccc;
52
  }
53
 
54
+ .nav-tab.premium-tab,
55
+ .nav-tab[href*="page=aws-options&tab=premium"]{
56
  background: #FFF7C7;
57
  }
58
 
59
+ .nav-tab.premium-tab:hover,
60
+ .nav-tab[href*="page=aws-options&tab=premium"]:hover {
61
  background: #fff;
62
  }
63
 
64
+ .wp-submenu .current a[href*="page=aws-options&tab=premium"] span,
65
+ .wp-submenu a[href*="page=aws-options&tab=premium"]:hover span {
66
+ color: rgb(255, 255, 91, 1) !important;
67
+ }
68
+
69
  /* Reindex button */
70
  #aws-reindex {
71
  display: inline-block;
327
  font-weight: 400;
328
  }
329
 
330
+ /* Premium tab */
331
+ #aws_form.form-tab-premium .submit {
332
+ display: none;
333
+ }
334
+
335
+ #aws_form .free-pro-table *,
336
+ #aws_form .free-pro-table *:before,
337
+ #aws_form .free-pro-table *:after {
338
+ -webkit-box-sizing: border-box;
339
+ -moz-box-sizing: border-box;
340
+ box-sizing: border-box;
341
+ }
342
+
343
+ #aws_form .free-pro-table {
344
+ background: #fff;
345
+ max-width: 900px;
346
+ margin: 50px auto 20px;
347
+ }
348
+
349
+ #aws_form .free-pro-table b {
350
+ font-weight: bold;
351
+ }
352
+
353
+ #aws_form .free-pro-table td,
354
+ #aws_form .free-pro-table th {
355
+ margin-bottom: 0;
356
+ padding: 15px 10px;
357
+ line-height: 1.3;
358
+ vertical-align: middle;
359
+ }
360
+
361
+ #aws_form .free-pro-table td.center,
362
+ #aws_form .free-pro-table th.center {
363
+ text-align: center;
364
+ }
365
+
366
+ #aws_form .free-pro-table td h3 {
367
+ margin: 0 0 6px;
368
+ }
369
+
370
+ #aws_form .free-pro-table .yes,
371
+ #aws_form .free-pro-table .no {
372
+ text-align: center;
373
+ width: 10%;
374
+ padding: 0;
375
+ }
376
+
377
+ #aws_form .free-pro-table.bordered,
378
+ #aws_form .free-pro-table.bordered td,
379
+ #aws_form .free-pro-table.bordered th {
380
+ border: 1px solid #e0e0e0;
381
+ border-collapse: collapse;
382
+ }
383
+
384
+ #aws_form .free-pro-table .icon-before {
385
+ margin: 0 auto;
386
+ display: inline-block;
387
+ }
388
+
389
+ #aws_form .free-pro-table .yes .icon-before:before,
390
+ #aws_form .free-pro-table .no .icon-before:before {
391
+ height: 35px;
392
+ width: 35px;
393
+ content: '';
394
+ display: block;
395
+ position: relative;
396
+ top: 0;
397
+ background-size: contain !important;
398
+ }
399
+
400
+ #aws_form .free-pro-table .yes .icon-before:before {
401
+ height: 40px;
402
+ width: 40px;
403
+ }
404
+
405
+ #aws_form .free-pro-table .yes .icon-before:before {
406
+ background: url(../img/yes.svg) no-repeat 50% 50%;
407
+ }
408
+
409
+ #aws_form .free-pro-table .no .icon-before:before {
410
+ background: url(../img/no.svg) no-repeat 50% 50%;
411
+ }
412
+
413
+ #aws_form .links {
414
+ margin: 5px 0;
415
+ }
416
+
417
+ #aws_form .links .links-title {
418
+ display: inline-block;
419
+ }
420
+
421
+ #aws_form .links ul {
422
+ display: inline-block;
423
+ margin: 0 0 0 10px;
424
+ }
425
+
426
+ #aws_form .links ul li {
427
+ display: inline-block;
428
+ margin: 0 5px;
429
+ }
430
+
431
+ #aws_form .links ul li a {
432
+ color: #7f54b3;
433
+ }
434
+
435
+ #aws_form .buy-premium {
436
+ width: 500px;
437
+ margin: 20px auto 40px;
438
+ }
439
+
440
+ #aws_form .buy-premium a {
441
+ position: relative;
442
+ display: block;
443
+ background-color: #7f54b3;
444
+ color: #fff;
445
+ border-radius: 6px;
446
+ padding: 16px 15px;
447
+ text-decoration: none;
448
+ }
449
+
450
+ #aws_form .buy-premium a:hover {
451
+ background-color: #6f3eb0;
452
+ }
453
+
454
+ #aws_form .buy-premium a:after {
455
+ background: url(../img/cart.svg) no-repeat 50% 50%;
456
+ height: 40px;
457
+ width: 40px;
458
+ content: '';
459
+ display: block;
460
+ position: absolute;
461
+ top: 17px;
462
+ right: 15px;
463
+ background-size: contain;
464
+ }
465
+
466
+ #aws_form .buy-premium a .desc {
467
+ font-size: 15px;
468
+ line-height: 1.5;
469
+ }
470
+
471
+ #aws_form .buy-premium a .desc b {
472
+ text-transform: uppercase;
473
+ font-weight: bold;
474
+ }
475
+
476
+ #aws_form .buy-premium a ul {
477
+ margin: 12px 0 0 15px;
478
+ list-style: disc;
479
+ }
480
+
481
+ #aws_form .buy-premium a ul li {
482
+ margin: 0;
483
+ font-size: 12px;
484
+ line-height: 15px;
485
+ }
486
+
487
+ #aws_form .faq {
488
+ text-align: center;
489
+ max-width: 900px;
490
+ margin: 80px auto 70px;
491
+ }
492
+
493
+ #aws_form .faq h3 {
494
+ margin: 50px 0 46px;
495
+ font-size: 36px;
496
+ color: #444;
497
+ }
498
+
499
+ #aws_form .faq .faq-item {
500
+ margin: 0 0 25px;
501
+ }
502
+
503
+ #aws_form .faq .faq-item .question {
504
+ margin: 0 0 6px;
505
+ font-size: 18px;
506
+ color: #000;
507
+ }
508
+
509
+ #aws_form .faq .faq-item .answer {
510
+ font-size: 14px;
511
+ }
512
+
513
+ #aws_form .features {
514
+ max-width: 1050px;
515
+ margin: 70px auto 90px;
516
+ }
517
+
518
+ #aws_form .features h3 {
519
+ margin: 0 0 70px;
520
+ font-size: 36px;
521
+ color: #444;
522
+ text-align: center;
523
+ }
524
+
525
+ #aws_form .features .features-item {
526
+ display: flex;
527
+ flex-wrap: wrap;
528
+ justify-content: space-between;
529
+ align-items: center;
530
+ margin-bottom: 60px;
531
+ padding-bottom: 60px;
532
+ border-bottom: 1px solid #e0e0e0;
533
+ }
534
+
535
+ /*#aws_form .features .features-item:last-child {*/
536
+ /* border: none;*/
537
+ /* padding-bottom: 0;*/
538
+ /*}*/
539
+
540
+ #aws_form .features .features-item .column {
541
+ padding: 0;
542
+ width: 48%;
543
+ }
544
+
545
+ #aws_form .features .features-item .column .title {
546
+ font-size: 24px;
547
+ margin: 0 0 16px;
548
+ font-weight: 700;
549
+ }
550
+
551
+ #aws_form .features .features-item .column .desc {
552
+ font-size: 16px;
553
+ line-height: 1.6;
554
+ color: #444;
555
+ }
556
+
557
+ #aws_form .features .features-item .column .desc a {
558
+ color: #6f3eb0;
559
+ }
560
+
561
+ #aws_form .features .features-item .column .img {
562
+ margin-bottom: 0;
563
+ padding: 0;
564
+ }
565
+
566
+ #aws_form .features .features-item .column .img img {
567
+ height: auto;
568
+ vertical-align: middle;
569
+ max-width: 100%;
570
+ box-shadow: 0 1px 4px rgba(0,0,0,.2);
571
+ }
572
+
573
+ #aws_form .features .features-item:nth-child(2n) .column:first-child {
574
+ order: 2;
575
+ }
576
+
577
+ #aws_form .features .features-item .column .title,
578
+ #aws_form .features .features-item .column .desc {
579
+ padding-right: 10px;
580
+ }
581
+
582
+ #aws_form .features .features-item:nth-child(2n) .column .title,
583
+ #aws_form .features .features-item:nth-child(2n) .column .desc {
584
+ padding-right: 0;
585
+ padding-left: 10px;
586
+ }
587
+
588
+ #aws_form .screenshots h3 {
589
+ margin: 46px 0 50px;
590
+ font-size: 36px;
591
+ color: #444;
592
+ text-align: center;
593
+ }
594
+
595
+ #aws_form .screenshots,
596
+ #aws_form .screenshots * {
597
+ box-sizing: border-box;
598
+ }
599
+
600
+ #aws_form .screenshots {
601
+ max-width: 1050px;
602
+ margin: 70px auto 90px;
603
+ }
604
+
605
+ #aws_form .screenshots .screenshots-section {
606
+ text-align: left;
607
+ }
608
+
609
+ #aws_form .screenshots .section-title {
610
+ margin: 0 0 10px;
611
+ font-size: 18px;
612
+ }
613
+
614
+ #aws_form .screenshots .screenshots-list {
615
+ display: flex;
616
+ flex-wrap: wrap;
617
+ margin: 0 -10px 30px;
618
+ align-items: stretch;
619
+ }
620
+
621
+ #aws_form .screenshots .screenshots-list .screen {
622
+ width: 25%;
623
+ padding: 10px;
624
+ }
625
+
626
+ #aws_form .screenshots .screenshots-list .screen a {
627
+ display: block;
628
+ box-shadow: inset 0 0 0 1px rgba(0, 0, 0, 0.1);
629
+ padding: 10px;
630
+ height: 100%;
631
+ min-height: 180px;
632
+ }
633
+
634
+ #aws_form .screenshots .screenshots-list .screen a:hover {
635
+ box-shadow: inset 0 0 0 1px rgba(0, 0, 0, 0.25);
636
+ }
637
+
638
+ #aws_form .screenshots .screenshots-list .screen img {
639
+ display: block;
640
+ max-width: 100%;
641
+ }
642
+
643
+ #TB_window .awl-screen {
644
+ display: block;
645
+ max-width: 100%;
646
+ }
647
+
648
+
649
  /* Welcome message */
650
 
651
  .welcome-panel .welcome-panel-column:first-child {
assets/css/common.css CHANGED
@@ -11,7 +11,8 @@
11
  height: 44px;
12
  }
13
 
14
- .aws-container .aws-search-form * {
 
15
  -moz-box-sizing: border-box;
16
  -webkit-box-sizing: border-box;
17
  box-sizing: border-box;
@@ -461,6 +462,7 @@ body.aws-overlay {
461
  margin-right: -10px;
462
  display: inline-block;
463
  float: right;
 
464
  }
465
 
466
  .aws-overlay-mask {
11
  height: 44px;
12
  }
13
 
14
+ .aws-container .aws-search-form *,
15
+ .aws-search-result {
16
  -moz-box-sizing: border-box;
17
  -webkit-box-sizing: border-box;
18
  box-sizing: border-box;
462
  margin-right: -10px;
463
  display: inline-block;
464
  float: right;
465
+ cursor: pointer;
466
  }
467
 
468
  .aws-overlay-mask {
assets/img/cart.svg ADDED
@@ -0,0 +1 @@
 
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 576 512"><path fill="#fff" d="M528.12 301.319l47.273-208C578.806 78.301 567.391 64 551.99 64H159.208l-9.166-44.81C147.758 8.021 137.93 0 126.529 0H24C10.745 0 0 10.745 0 24v16c0 13.255 10.745 24 24 24h69.883l70.248 343.435C147.325 417.1 136 435.222 136 456c0 30.928 25.072 56 56 56s56-25.072 56-56c0-15.674-6.447-29.835-16.824-40h209.647C430.447 426.165 424 440.326 424 456c0 30.928 25.072 56 56 56s56-25.072 56-56c0-22.172-12.888-41.332-31.579-50.405l5.517-24.276c3.413-15.018-8.002-29.319-23.403-29.319H218.117l-6.545-32h293.145c11.206 0 20.92-7.754 23.403-18.681z"></path></svg>
assets/img/pro/feature1.png ADDED
Binary file
assets/img/pro/feature10.png ADDED
Binary file
assets/img/pro/feature11.png ADDED
Binary file
assets/img/pro/feature12.png ADDED
Binary file
assets/img/pro/feature2.png ADDED
Binary file
assets/img/pro/feature3.png ADDED
Binary file
assets/img/pro/feature4.png ADDED
Binary file
assets/img/pro/feature5.png ADDED
Binary file
assets/img/pro/feature6.png ADDED
Binary file
assets/img/pro/feature7.png ADDED
Binary file
assets/img/pro/feature8.png ADDED
Binary file
assets/img/pro/feature9.png ADDED
Binary file
assets/js/common.js CHANGED
@@ -301,7 +301,9 @@ AwsHooks.filters = AwsHooks.filters || {};
301
 
302
  onFocus: function( event ) {
303
 
304
- if ( methods.isMobile() && d.mobileScreen && ! $('body').hasClass('aws-overlay') ) {
 
 
305
  methods.showMobileLayout();
306
  }
307
 
@@ -387,16 +389,10 @@ AwsHooks.filters = AwsHooks.filters || {};
387
  },
388
 
389
  showMobileLayout: function() {
390
-
391
- var show = AwsHooks.apply_filters( 'aws_show_mobile_layout', false, { instance: instance, form: self, data: d } );
392
-
393
- if ( ! methods.isFixed() || show ) {
394
- self.after('<div class="aws-placement-container"></div>');
395
- self.addClass('aws-mobile-fixed').prepend('<div class="aws-mobile-fixed-close"><svg width="17" height="17" viewBox="1.5 1.5 21 21"><path d="M22.182 3.856c.522-.554.306-1.394-.234-1.938-.54-.543-1.433-.523-1.826-.135C19.73 2.17 11.955 10 11.955 10S4.225 2.154 3.79 1.783c-.438-.371-1.277-.4-1.81.135-.533.537-.628 1.513-.25 1.938.377.424 8.166 8.218 8.166 8.218s-7.85 7.864-8.166 8.219c-.317.354-.34 1.335.25 1.805.59.47 1.24.455 1.81 0 .568-.456 8.166-7.951 8.166-7.951l8.167 7.86c.747.72 1.504.563 1.96.09.456-.471.609-1.268.1-1.804-.508-.537-8.167-8.219-8.167-8.219s7.645-7.665 8.167-8.218z"></path></svg></div>');
396
- $('body').addClass('aws-overlay').append('<div class="aws-overlay-mask"></div>').append( self );
397
- $searchField.focus();
398
- }
399
-
400
  },
401
 
402
  hideMobileLayout: function() {
301
 
302
  onFocus: function( event ) {
303
 
304
+ var show = AwsHooks.apply_filters( 'aws_show_modal_layout', false, { instance: instance, form: self, data: d } );
305
+
306
+ if ( ! $('body').hasClass('aws-overlay') && ( ( methods.isMobile() && d.mobileScreen && ! methods.isFixed() ) || show ) ) {
307
  methods.showMobileLayout();
308
  }
309
 
389
  },
390
 
391
  showMobileLayout: function() {
392
+ self.after('<div class="aws-placement-container"></div>');
393
+ self.addClass('aws-mobile-fixed').prepend('<div class="aws-mobile-fixed-close"><svg width="17" height="17" viewBox="1.5 1.5 21 21"><path d="M22.182 3.856c.522-.554.306-1.394-.234-1.938-.54-.543-1.433-.523-1.826-.135C19.73 2.17 11.955 10 11.955 10S4.225 2.154 3.79 1.783c-.438-.371-1.277-.4-1.81.135-.533.537-.628 1.513-.25 1.938.377.424 8.166 8.218 8.166 8.218s-7.85 7.864-8.166 8.219c-.317.354-.34 1.335.25 1.805.59.47 1.24.455 1.81 0 .568-.456 8.166-7.951 8.166-7.951l8.167 7.86c.747.72 1.504.563 1.96.09.456-.471.609-1.268.1-1.804-.508-.537-8.167-8.219-8.167-8.219s7.645-7.665 8.167-8.218z"></path></svg></div>');
394
+ $('body').addClass('aws-overlay').append('<div class="aws-overlay-mask"></div>').append( self );
395
+ $searchField.focus();
 
 
 
 
 
 
396
  },
397
 
398
  hideMobileLayout: function() {
includes/admin/class-aws-admin-options.php CHANGED
@@ -258,18 +258,6 @@ if ( ! class_exists( 'AWS_Admin_Options' ) ) :
258
  "type" => "table"
259
  );
260
 
261
- $options['general'][] = array(
262
- "name" => __( "Show out-of-stock", "advanced-woo-search" ),
263
- "desc" => __( "Show out-of-stock products in search", "advanced-woo-search" ),
264
- "id" => "outofstock",
265
- "value" => 'true',
266
- "type" => "radio",
267
- 'choices' => array(
268
- 'true' => __( 'Show', 'advanced-woo-search' ),
269
- 'false' => __( 'Hide', 'advanced-woo-search' ),
270
- )
271
- );
272
-
273
  $options['general'][] = array(
274
  "name" => __( "Stop words list", "advanced-woo-search" ),
275
  "desc" => __( "Comma separated list of words that will be excluded from search.", "advanced-woo-search" ) . '<br>' . __( "Re-index required on change.", "advanced-woo-search" ),
@@ -453,6 +441,18 @@ if ( ! class_exists( 'AWS_Admin_Options' ) ) :
453
  "type" => "number"
454
  );
455
 
 
 
 
 
 
 
 
 
 
 
 
 
456
  $options['results'][] = array(
457
  "name" => __( "View", "advanced-woo-search" ),
458
  "type" => "heading"
258
  "type" => "table"
259
  );
260
 
 
 
 
 
 
 
 
 
 
 
 
 
261
  $options['general'][] = array(
262
  "name" => __( "Stop words list", "advanced-woo-search" ),
263
  "desc" => __( "Comma separated list of words that will be excluded from search.", "advanced-woo-search" ) . '<br>' . __( "Re-index required on change.", "advanced-woo-search" ),
441
  "type" => "number"
442
  );
443
 
444
+ $options['results'][] = array(
445
+ "name" => __( "Show out-of-stock", "advanced-woo-search" ),
446
+ "desc" => __( "Show out-of-stock products in search", "advanced-woo-search" ),
447
+ "id" => "outofstock",
448
+ "value" => 'true',
449
+ "type" => "radio",
450
+ 'choices' => array(
451
+ 'true' => __( 'Show', 'advanced-woo-search' ),
452
+ 'false' => __( 'Hide', 'advanced-woo-search' ),
453
+ )
454
+ );
455
+
456
  $options['results'][] = array(
457
  "name" => __( "View", "advanced-woo-search" ),
458
  "type" => "heading"
includes/admin/class-aws-admin-page-premium.php ADDED
@@ -0,0 +1,310 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+
3
+ if ( ! defined( 'ABSPATH' ) ) {
4
+ exit;
5
+ }
6
+
7
+ if ( ! class_exists( 'AWS_Admin_Page_Premium' ) ) :
8
+
9
+ /**
10
+ * Class for plugin admin ajax hooks
11
+ */
12
+ class AWS_Admin_Page_Premium {
13
+
14
+ /*
15
+ * Constructor
16
+ */
17
+ public function __construct() {
18
+
19
+ $this->generate_content();
20
+
21
+ }
22
+
23
+ /*
24
+ * Generate options fields
25
+ */
26
+ private function generate_content() {
27
+
28
+ echo '<div class="links">';
29
+ echo '<span class="links-title">' . __( 'Website Links:', 'advanced-woo-search' ) . '</span>';
30
+ echo '<ul>';
31
+ echo '<li><a target="_blank" href="https://advanced-woo-search.com/?utm_source=plugin&utm_medium=premium-tab&utm_campaign=aws-pro-plugin">' . __( 'Plugin home page', 'advanced-woo-search' ) . '</a></li>';
32
+ echo '<li><a target="_blank" href="https://advanced-woo-search.com/features/?utm_source=plugin&utm_medium=premium-tab&utm_campaign=aws-pro-plugin">' . __( 'Features', 'advanced-woo-search' ) . '</a></li>';
33
+ echo '<li><a target="_blank" href="https://advanced-woo-search.com/guide/?utm_source=plugin&utm_medium=premium-tab&utm_campaign=aws-pro-plugin">' . __( 'Documentation', 'advanced-woo-search' ) . '</a></li>';
34
+ echo '<li><a target="_blank" href="https://advanced-woo-search.com/pricing/?utm_source=plugin&utm_medium=premium-tab&utm_campaign=aws-pro-plugin">' . __( 'Pricing', 'advanced-woo-search' ) . '</a></li>';
35
+ echo '</ul>';
36
+ echo '</div>';
37
+
38
+ echo '<div class="buy-premium">';
39
+ echo '<a target="_blank" href="https://advanced-woo-search.com/pricing/?utm_source=plugin&utm_medium=settings-tab&utm_campaign=aws-pro-plugin">';
40
+ echo '<span class="desc">' . __( 'Upgrade to the', 'advanced-woo-search' ) . '<b> ' . __( 'Premium plugin version', 'advanced-woo-search' ) . '</b><br>' . __( 'to have all available features!', 'advanced-woo-search' ) . '</span>';
41
+ echo '<ul>';
42
+ echo '<li>' . __( '30-day money back guarantee', 'advanced-woo-search' ) . '</li>';
43
+ echo '<li>' . __( 'Priority support', 'advanced-woo-search' ) . '</li>';
44
+ echo '<li>' . __( '1 year of support and updates', 'advanced-woo-search' ) . '</li>';
45
+ echo '</ul>';
46
+ echo '</a>';
47
+ echo '</div>';
48
+
49
+ echo '<div class="features">';
50
+
51
+ echo '<h3>' . __( 'Premium Features', 'advanced-woo-search' ) . '</h3>';
52
+
53
+ echo '<div class="features-item">';
54
+ echo '<div class="column">';
55
+ echo '<h4 class="title">';
56
+ echo __( 'New Search Sources', 'advanced-woo-search' );
57
+ echo '</h4>';
58
+ echo '<p class="desc">';
59
+ echo sprintf( esc_html__( 'Search additionally inside %sproduct attributes%s, %staxonomies%s and %scustom fields%s. Inside the plugin settings page it is possible to choose some specific sources that must be available for search ( for example only several product attributes ) or just search for all of them.', 'advanced-woo-search' ), '<b>', '</b>', '<b>', '</b>', '<b>', '</b>' );
60
+ echo '<br><a href="https://advanced-woo-search.com/features/search-sources/?utm_source=plugin&utm_medium=premium-tab&utm_campaign=aws-pro-plugin" target="_blank">' . __( 'Learn more', 'advanced-woo-search' ) . '</a>';
61
+ echo '</p>';
62
+ echo '</div>';
63
+ echo '<div class="column">';
64
+ echo '<div class="img">';
65
+ echo '<img alt="" src="' . AWS_URL . '/assets/img/pro/feature1.png' . '" />';
66
+ echo '</div>';
67
+ echo '</div>';
68
+ echo '</div>';
69
+
70
+ echo '<div class="features-item">';
71
+ echo '<div class="column">';
72
+ echo '<h4 class="title">';
73
+ echo __( 'Product Variations Support', 'advanced-woo-search' );
74
+ echo '</h4>';
75
+ echo '<p class="desc">';
76
+ echo sprintf( esc_html__( "Search and show inside search results %svariable product%s, %sproduct variations%s or %sboth%s. With the variable products will be displayed all attributes that belong to that specific variation.", 'advanced-woo-search' ), '<b>', '</b>', '<b>', '</b>', '<b>', '</b>' );
77
+ echo '<br><a href="https://advanced-woo-search.com/features/variable-products-search/?utm_source=plugin&utm_medium=premium-tab&utm_campaign=aws-pro-plugin" target="_blank">' . __( 'Learn more', 'advanced-woo-search' ) . '</a>';
78
+ echo '</p>';
79
+ echo '</div>';
80
+ echo '<div class="column">';
81
+ echo '<div class="img">';
82
+ echo '<img alt="" src="' . AWS_URL . '/assets/img/pro/feature2.png' . '" />';
83
+ echo '</div>';
84
+ echo '</div>';
85
+ echo '</div>';
86
+
87
+ echo '<div class="features-item">';
88
+ echo '<div class="column">';
89
+ echo '<h4 class="title">';
90
+ echo __( 'Archive Pages Search', 'advanced-woo-search' );
91
+ echo '</h4>';
92
+ echo '<p class="desc">';
93
+ echo sprintf( esc_html__( "Search for WooCommerce product %scustom taxonomies%s and %sattributes archive pages%s. Display them right inside search results list along with the product search results.", 'advanced-woo-search' ), '<b>', '</b>', '<b>', '</b>' );
94
+ echo '<br><a href="https://advanced-woo-search.com/features/terms-pages-search/?utm_source=plugin&utm_medium=premium-tab&utm_campaign=aws-pro-plugin" target="_blank">' . __( 'Learn more', 'advanced-woo-search' ) . '</a>';
95
+ echo '</p>';
96
+ echo '</div>';
97
+ echo '<div class="column">';
98
+ echo '<div class="img">';
99
+ echo '<img alt="" src="' . AWS_URL . '/assets/img/pro/feature3.png' . '" />';
100
+ echo '</div>';
101
+ echo '</div>';
102
+ echo '</div>';
103
+
104
+ echo '<div class="features-item">';
105
+ echo '<div class="column">';
106
+ echo '<h4 class="title">';
107
+ echo __( 'Users Search', 'advanced-woo-search' );
108
+ echo '</h4>';
109
+ echo '<p class="desc">';
110
+ echo esc_html__( "Search for website users and display them right inside the search results box. Choose what role the user must have to be available for search.", 'advanced-woo-search' );
111
+ echo '<br><a href="https://advanced-woo-search.com/features/users-search/?utm_source=plugin&utm_medium=premium-tab&utm_campaign=aws-pro-plugin" target="_blank">' . __( 'Learn more', 'advanced-woo-search' ) . '</a>';
112
+ echo '</p>';
113
+ echo '</div>';
114
+ echo '<div class="column">';
115
+ echo '<div class="img">';
116
+ echo '<img alt="" src="' . AWS_URL . '/assets/img/pro/feature4.png' . '" />';
117
+ echo '</div>';
118
+ echo '</div>';
119
+ echo '</div>';
120
+
121
+ echo '<div class="features-item">';
122
+ echo '<div class="column">';
123
+ echo '<h4 class="title">';
124
+ echo __( 'Search Form Filters', 'advanced-woo-search' );
125
+ echo '</h4>';
126
+ echo '<p class="desc">';
127
+ echo sprintf( esc_html__( "For each search form you can create a unique set of tabs. These tabs have their own %sset of settings%s and work as %sfilters%s for your search results.", 'advanced-woo-search' ), '<b>', '</b>', '<b>', '</b>' );
128
+ echo '<br><a href="https://advanced-woo-search.com/features/filters-button/?utm_source=plugin&utm_medium=premium-tab&utm_campaign=aws-pro-plugin" target="_blank">' . __( 'Learn more', 'advanced-woo-search' ) . '</a>';
129
+ echo '</p>';
130
+ echo '</div>';
131
+ echo '<div class="column">';
132
+ echo '<div class="img">';
133
+ echo '<img alt="" src="' . AWS_URL . '/assets/img/pro/feature5.png' . '" />';
134
+ echo '</div>';
135
+ echo '</div>';
136
+ echo '</div>';
137
+
138
+ echo '<div class="features-item">';
139
+ echo '<div class="column">';
140
+ echo '<h4 class="title">';
141
+ echo __( 'Search Form Instances', 'advanced-woo-search' );
142
+ echo '</h4>';
143
+ echo '<p class="desc">';
144
+ echo sprintf( esc_html__( "Unlimited amount of search form instances with totally different settings and products look. You can create totally different search forms for any of your needs. Each instance is %sindependent%s and has its own %sset of settings%s.", 'advanced-woo-search' ), '<b>', '</b>', '<b>', '</b>' );
145
+ echo '<br><a href="https://advanced-woo-search.com/features/search-form-instances/?utm_source=plugin&utm_medium=premium-tab&utm_campaign=aws-pro-plugin" target="_blank">' . __( 'Learn more', 'advanced-woo-search' ) . '</a>';
146
+ echo '</p>';
147
+ echo '</div>';
148
+ echo '<div class="column">';
149
+ echo '<div class="img">';
150
+ echo '<img alt="" src="' . AWS_URL . '/assets/img/pro/feature6.png' . '" />';
151
+ echo '</div>';
152
+ echo '</div>';
153
+ echo '</div>';
154
+
155
+ echo '<div class="features-item">';
156
+ echo '<div class="column">';
157
+ echo '<h4 class="title">';
158
+ echo __( 'Search Logic Change', 'advanced-woo-search' );
159
+ echo '</h4>';
160
+ echo '<p class="desc">';
161
+ echo sprintf( esc_html__( "Switch from %sOR%s to %sAND%s search logic. Choose from %spartial%s or %sexact match%s search.", 'advanced-woo-search' ), '<b>', '</b>', '<b>', '</b>', '<b>', '</b>', '<b>', '</b>' );
162
+ echo '<br><a href="https://advanced-woo-search.com/features/search-operators-and-rules/?utm_source=plugin&utm_medium=premium-tab&utm_campaign=aws-pro-plugin" target="_blank">' . __( 'Learn more', 'advanced-woo-search' ) . '</a>';
163
+ echo '</p>';
164
+ echo '</div>';
165
+ echo '<div class="column">';
166
+ echo '<div class="img">';
167
+ echo '<img alt="" src="' . AWS_URL . '/assets/img/pro/feature7.png' . '" />';
168
+ echo '</div>';
169
+ echo '</div>';
170
+ echo '</div>';
171
+
172
+ echo '<div class="features-item">';
173
+ echo '<div class="column">';
174
+ echo '<h4 class="title">';
175
+ echo __( 'Add to Cart Button', 'advanced-woo-search' );
176
+ echo '</h4>';
177
+ echo '<p class="desc">';
178
+ echo sprintf( esc_html__( "Display %sAdd to Cart%s button right inside the search results. This makes it possible to add the product to the cart without visiting the product page. This button works perfect also and with product variations.", 'advanced-woo-search' ), '<b>', '</b>' );
179
+ echo '<br><a href="https://advanced-woo-search.com/features/add-to-cart-button/?utm_source=plugin&utm_medium=premium-tab&utm_campaign=aws-pro-plugin" target="_blank">' . __( 'Learn more', 'advanced-woo-search' ) . '</a>';
180
+ echo '</p>';
181
+ echo '</div>';
182
+ echo '<div class="column">';
183
+ echo '<div class="img">';
184
+ echo '<img alt="" src="' . AWS_URL . '/assets/img/pro/feature8.png' . '" />';
185
+ echo '</div>';
186
+ echo '</div>';
187
+ echo '</div>';
188
+
189
+ echo '<div class="features-item">';
190
+ echo '<div class="column">';
191
+ echo '<h4 class="title">';
192
+ echo __( 'Search Results Layouts', 'advanced-woo-search' );
193
+ echo '</h4>';
194
+ echo '<p class="desc">';
195
+ echo sprintf( esc_html__( "Choose between several %spredefined search results layouts%s. For example you can display all products in search results in a grid or in column one by one.", 'advanced-woo-search' ), '<b>', '</b>' );
196
+ echo '<br><a href="https://advanced-woo-search.com/features/search-results-layouts/?utm_source=plugin&utm_medium=premium-tab&utm_campaign=aws-pro-plugin" target="_blank">' . __( 'Learn more', 'advanced-woo-search' ) . '</a>';
197
+ echo '</p>';
198
+ echo '</div>';
199
+ echo '<div class="column">';
200
+ echo '<div class="img">';
201
+ echo '<img alt="" src="' . AWS_URL . '/assets/img/pro/feature9.png' . '" />';
202
+ echo '</div>';
203
+ echo '</div>';
204
+ echo '</div>';
205
+
206
+ echo '<div class="features-item">';
207
+ echo '<div class="column">';
208
+ echo '<h4 class="title">';
209
+ echo __( 'Exclude/Include Products Filters', 'advanced-woo-search' );
210
+ echo '</h4>';
211
+ echo '<p class="desc">';
212
+ echo sprintf( esc_html__( "Option to exclude or include products from search results by %sproduct ids%s, %staxonomies%s or %sattributes%s. Show only those products that you want. This option works great with the search form filters.", 'advanced-woo-search' ), '<b>', '</b>', '<b>', '</b>', '<b>', '</b>' );
213
+ echo '<br><a href="https://advanced-woo-search.com/features/exclude-include-products/?utm_source=plugin&utm_medium=premium-tab&utm_campaign=aws-pro-plugin" target="_blank">' . __( 'Learn more', 'advanced-woo-search' ) . '</a>';
214
+ echo '</p>';
215
+ echo '</div>';
216
+ echo '<div class="column">';
217
+ echo '<div class="img">';
218
+ echo '<img alt="" src="' . AWS_URL . '/assets/img/pro/feature10.png' . '" />';
219
+ echo '</div>';
220
+ echo '</div>';
221
+ echo '</div>';
222
+
223
+ echo '<div class="features-item">';
224
+ echo '<div class="column">';
225
+ echo '<h4 class="title">';
226
+ echo __( 'ACF Plugin Support', 'advanced-woo-search' );
227
+ echo '</h4>';
228
+ echo '<p class="desc">';
229
+ echo sprintf( esc_html__( "All fields that were created with the help of %sAdvanced Custom Fields%s plugin are available for search. Also use a special build-in filters to display any ACF field value right inside the search results list.", 'advanced-woo-search' ), '<b>', '</b>' );
230
+ echo '<br><a href="https://advanced-woo-search.com/guide/acf-support/?utm_source=plugin&utm_medium=premium-tab&utm_campaign=aws-pro-plugin" target="_blank">' . __( 'Learn more', 'advanced-woo-search' ) . '</a>';
231
+ echo '</p>';
232
+ echo '</div>';
233
+ echo '<div class="column">';
234
+ echo '<div class="img">';
235
+ echo '<img alt="" src="' . AWS_URL . '/assets/img/pro/feature11.png' . '" />';
236
+ echo '</div>';
237
+ echo '</div>';
238
+ echo '</div>';
239
+
240
+ echo '<div class="features-item">';
241
+ echo '<div class="column">';
242
+ echo '<h4 class="title">';
243
+ echo __( 'Priority Support', 'advanced-woo-search' );
244
+ echo '</h4>';
245
+ echo '<p class="desc">';
246
+ echo esc_html__( "You will benefit from our full support for any issues you have with this plugin.", 'advanced-woo-search' );
247
+ echo '</p>';
248
+ echo '</div>';
249
+ echo '<div class="column">';
250
+ echo '<div class="img">';
251
+ echo '<img alt="" src="' . AWS_URL . '/assets/img/pro/feature12.png' . '" />';
252
+ echo '</div>';
253
+ echo '</div>';
254
+ echo '</div>';
255
+
256
+ echo '</div>';
257
+
258
+ echo '<div class="faq">';
259
+
260
+ echo '<h3>' . __( 'Frequently Asked Questions', 'advanced-woo-search' ) . '</h3>';
261
+
262
+ echo '<div class="faq-item">';
263
+ echo '<h4 class="question">';
264
+ echo __( 'Do you offer refunds?', 'advanced-woo-search' );
265
+ echo '</h4>';
266
+ echo '<div class="answer">';
267
+ echo __( 'If you\'re not completely happy with your purchase and we\'re unable to resolve the issue, let us know and we\'ll refund the full purchase price. Refunds can be processed within 30 days of the original purchase.', 'advanced-woo-search' );
268
+ echo '</div>';
269
+ echo '</div>';
270
+
271
+ echo '<div class="faq-item">';
272
+ echo '<h4 class="question">';
273
+ echo __( 'What payment methods do you accept?', 'advanced-woo-search' );
274
+ echo '</h4>';
275
+ echo '<div class="answer">';
276
+ echo __( 'Checkout is powered FastSpring company. They supports major credit and debit cards, PayPal, and a variety of other mainstream payment methods, so there’s plenty to pick from.', 'advanced-woo-search' );
277
+ echo '</div>';
278
+ echo '</div>';
279
+
280
+ echo '<div class="faq-item">';
281
+ echo '<h4 class="question">';
282
+ echo __( 'Do you offer support if I need help?', 'advanced-woo-search' );
283
+ echo '</h4>';
284
+ echo '<div class="answer">';
285
+ echo __( 'Yes! You will benefit of our full support for any issues you have with this plugin.', 'advanced-woo-search' );
286
+ echo '</div>';
287
+ echo '</div>';
288
+
289
+ echo '<div class="faq-item">';
290
+ echo '<h4 class="question">';
291
+ echo __( 'I have other pre-sale questions, can you help?', 'advanced-woo-search' );
292
+ echo '</h4>';
293
+ echo '<div class="answer">';
294
+ echo __( 'Yes! You can ask us any question through our', 'advanced-woo-search' ) . ' <a href="https://advanced-woo-search.com/contact/?utm_source=plugin&utm_medium=premium-tab&utm_campaign=sti-pro-plugin" target="_blank">' . __( 'contact form.', 'advanced-woo-search' ) . '</a>';
295
+ echo '</div>';
296
+ echo '</div>';
297
+
298
+ echo '</div>';
299
+
300
+ echo '<div class="buy-premium">';
301
+ echo '<a target="_blank" href="https://advanced-woo-search.com/pricing/?utm_source=plugin&utm_medium=settings-tab&utm_campaign=aws-pro-plugin">';
302
+ echo '<span class="desc">' . __( 'Upgrade to the', 'advanced-woo-search' ) . '<b> ' . __( 'Premium plugin version', 'advanced-woo-search' ) . '</b><br>' . __( 'to have all available features!', 'advanced-woo-search' ) . '</span>';
303
+ echo '</a>';
304
+ echo '</div>';
305
+
306
+ }
307
+
308
+ }
309
+
310
+ endif;
includes/admin/class-aws-admin.php CHANGED
@@ -55,13 +55,17 @@ class AWS_Admin {
55
 
56
  add_action( 'admin_notices', array( $this, 'display_welcome_header' ), 1 );
57
 
 
 
58
  }
59
 
60
  /**
61
  * Add options page
62
  */
63
  public function add_admin_page() {
64
- add_menu_page( esc_html__( 'Adv. Woo Search', 'advanced-woo-search' ), esc_html__( 'Adv. Woo Search', 'advanced-woo-search' ), 'manage_options', 'aws-options', array( &$this, 'display_admin_page' ), 'dashicons-search' );
 
 
65
  }
66
 
67
  /**
@@ -74,7 +78,8 @@ class AWS_Admin {
74
  $tabs = array(
75
  'general' => esc_html__( 'General', 'advanced-woo-search' ),
76
  'form' => esc_html__( 'Search Form', 'advanced-woo-search' ),
77
- 'results' => esc_html__( 'Search Results', 'advanced-woo-search' )
 
78
  );
79
 
80
  $current_tab = empty( $_GET['tab'] ) ? 'general' : sanitize_text_field( $_GET['tab'] );
@@ -86,8 +91,6 @@ class AWS_Admin {
86
 
87
  }
88
 
89
- $tabs_html .= '<a href="https://advanced-woo-search.com/?utm_source=plugin&utm_medium=settings-tab&utm_campaign=aws-pro-plugin" class="nav-tab premium-tab" target="_blank">' . esc_html__( 'Get Premium', 'advanced-woo-search' ) . '</a>';
90
-
91
  $tabs_html = '<h2 class="nav-tab-wrapper woo-nav-tab-wrapper">'.$tabs_html.'</h2>';
92
 
93
  if ( isset( $_POST["Submit"] ) && current_user_can( 'manage_options' ) && isset( $_POST["_wpnonce"] ) && wp_verify_nonce( $_POST["_wpnonce"], 'plugin-settings' ) ) {
@@ -111,6 +114,9 @@ class AWS_Admin {
111
  case('results'):
112
  new AWS_Admin_Fields( 'results' );
113
  break;
 
 
 
114
  default:
115
  echo AWS_Admin_Meta_Boxes::get_general_tab_content();
116
  new AWS_Admin_Fields( 'general' );
@@ -157,6 +163,16 @@ class AWS_Admin {
157
 
158
  }
159
 
 
 
 
 
 
 
 
 
 
 
160
  /*
161
  * Add welcome notice
162
  */
55
 
56
  add_action( 'admin_notices', array( $this, 'display_welcome_header' ), 1 );
57
 
58
+ add_filter( 'submenu_file', array( $this, 'submenu_file' ), 10, 2 );
59
+
60
  }
61
 
62
  /**
63
  * Add options page
64
  */
65
  public function add_admin_page() {
66
+ add_menu_page( esc_html__( 'Adv. Woo Search', 'advanced-woo-search' ), esc_html__( 'Adv. Woo Search', 'advanced-woo-search' ), 'manage_options', 'aws-options', array( &$this, 'display_admin_page' ), 'dashicons-search', 70 );
67
+ add_submenu_page( 'aws-options', __( 'Settings', 'advanced-woo-search' ), __( 'Settings', 'advanced-woo-search'), 'manage_options', 'aws-options', array( $this, 'display_admin_page' ) );
68
+ add_submenu_page( 'aws-options', __( 'Premium', 'advanced-woo-search' ), '<span style="color:rgba(255, 255, 91, 0.8);">' . __( 'Premium', 'advanced-woo-search' ) . '</span>', 'manage_options', admin_url( 'admin.php?page=aws-options&tab=premium' ) );
69
  }
70
 
71
  /**
78
  $tabs = array(
79
  'general' => esc_html__( 'General', 'advanced-woo-search' ),
80
  'form' => esc_html__( 'Search Form', 'advanced-woo-search' ),
81
+ 'results' => esc_html__( 'Search Results', 'advanced-woo-search' ),
82
+ 'premium' => esc_html__( 'Get Premium', 'advanced-woo-search' )
83
  );
84
 
85
  $current_tab = empty( $_GET['tab'] ) ? 'general' : sanitize_text_field( $_GET['tab'] );
91
 
92
  }
93
 
 
 
94
  $tabs_html = '<h2 class="nav-tab-wrapper woo-nav-tab-wrapper">'.$tabs_html.'</h2>';
95
 
96
  if ( isset( $_POST["Submit"] ) && current_user_can( 'manage_options' ) && isset( $_POST["_wpnonce"] ) && wp_verify_nonce( $_POST["_wpnonce"], 'plugin-settings' ) ) {
114
  case('results'):
115
  new AWS_Admin_Fields( 'results' );
116
  break;
117
+ case('premium'):
118
+ new AWS_Admin_Page_Premium();
119
+ break;
120
  default:
121
  echo AWS_Admin_Meta_Boxes::get_general_tab_content();
122
  new AWS_Admin_Fields( 'general' );
163
 
164
  }
165
 
166
+ /*
167
+ * Change current class for premium tab
168
+ */
169
+ public function submenu_file( $submenu_file, $parent_file ) {
170
+ if ( $parent_file === 'aws-options' && isset( $_GET['tab'] ) && $_GET['tab'] === 'premium' ) {
171
+ $submenu_file = admin_url( 'admin.php?page=aws-options&tab=premium' );
172
+ }
173
+ return $submenu_file;
174
+ }
175
+
176
  /*
177
  * Add welcome notice
178
  */
includes/class-aws-integrations.php CHANGED
@@ -142,10 +142,8 @@ if ( ! class_exists( 'AWS_Integrations' ) ) :
142
  add_action( 'wp_head', array( $this, 'elessi_head_action' ) );
143
  }
144
 
145
- // Elementor pro
146
- if ( defined( 'ELEMENTOR_PRO_VERSION' ) ) {
147
- add_action( 'wp_footer', array( $this, 'elementor_pro_popup' ) );
148
- add_filter( 'elementor/widget/render_content', array( $this, 'elementor_render_content' ), 10, 2 );
149
  }
150
 
151
  }
@@ -221,7 +219,7 @@ if ( ! class_exists( 'AWS_Integrations' ) ) :
221
  public function includes() {
222
 
223
  // Elementor plugin widget
224
- if ( defined( 'ELEMENTOR_VERSION' ) ) {
225
  include_once( AWS_DIR . '/includes/modules/elementor-widget/class-elementor-aws-init.php' );
226
  }
227
 
@@ -829,6 +827,30 @@ if ( ! class_exists( 'AWS_Integrations' ) ) :
829
 
830
  <?php }
831
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
832
  /*
833
  * Storefront theme search form layout
834
  */
@@ -900,69 +922,6 @@ if ( ! class_exists( 'AWS_Integrations' ) ) :
900
 
901
  <?php }
902
 
903
- /*
904
- * Elementor popup search form init
905
- */
906
- public function elementor_pro_popup() { ?>
907
-
908
- <script>
909
- window.addEventListener('load', function() {
910
- if (window.jQuery) {
911
- jQuery( document ).on( 'elementor/popup/show', function() {
912
- window.setTimeout(function(){
913
- jQuery('.elementor-container .aws-container').each( function() {
914
- jQuery(this).aws_search();
915
- });
916
- }, 1000);
917
- } );
918
- }
919
- }, false);
920
- </script>
921
-
922
- <?php }
923
-
924
- /*
925
- * Elementor replace search form widget
926
- */
927
- public function elementor_render_content( $content, $widget ) {
928
- if ( method_exists( $widget, 'get_name' ) && $widget->get_name() === 'search-form' ) {
929
- if ( method_exists( $widget, 'get_settings' ) ) {
930
- $settings = $widget->get_settings();
931
- if ( is_array( $settings ) && isset( $settings['skin'] ) && $settings['skin'] === 'full_screen' ) {
932
- $content = '<style>
933
- .elementor-search-form--skin-full_screen .elementor-search-form__container {
934
- overflow: hidden;
935
- }
936
- .elementor-search-form--full-screen .aws-container {
937
- width: 100%;
938
- }
939
- .elementor-search-form--full-screen .aws-container .aws-search-form {
940
- height: auto !important;
941
- }
942
- .elementor-search-form--full-screen .aws-container .aws-search-form .aws-search-btn.aws-form-btn {
943
- display: none;
944
- }
945
- .elementor-search-form--full-screen .aws-container .aws-search-field {
946
- border-bottom: 1px solid #fff !important;
947
- font-size: 50px !important;
948
- text-align: center !important;
949
- line-height: 1.5 !important;
950
- color: #7a7a7a !important;
951
- }
952
- .elementor-search-form--full-screen .aws-container .aws-search-field:focus {
953
- background-color: transparent !important;
954
- }
955
- </style>' . $content;
956
- $content = str_replace( array( '<form', '</form>' ), array( '<div', '</div>' ), $content );
957
- $content = preg_replace( '/(<input[\S\s]*?elementor-search-form__input[\S\s]*?\>)/i', aws_get_search_form( false ), $content );
958
- return $content;
959
- }
960
- }
961
- return aws_get_search_form( false );
962
- }
963
- return $content;
964
- }
965
-
966
  /*
967
  * Porto theme seamless integration
968
  */
@@ -1136,6 +1095,10 @@ if ( ! class_exists( 'AWS_Integrations' ) ) :
1136
  $selectors[] = '.warpper-mobile-search form';
1137
  }
1138
 
 
 
 
 
1139
  // WCFM - WooCommerce Multivendor Marketplace
1140
  if ( class_exists( 'WCFMmp' ) ) {
1141
  $selectors[] = '#wcfmmp-store .woocommerce-product-search';
142
  add_action( 'wp_head', array( $this, 'elessi_head_action' ) );
143
  }
144
 
145
+ if ( 'Walker' === $this->current_theme ) {
146
+ add_action( 'wp_head', array( $this, 'walker_head_action' ) );
 
 
147
  }
148
 
149
  }
219
  public function includes() {
220
 
221
  // Elementor plugin widget
222
+ if ( defined( 'ELEMENTOR_VERSION' ) || defined( 'ELEMENTOR_PRO_VERSION' ) ) {
223
  include_once( AWS_DIR . '/includes/modules/elementor-widget/class-elementor-aws-init.php' );
224
  }
225
 
827
 
828
  <?php }
829
 
830
+ /*
831
+ * Walker theme
832
+ */
833
+ public function walker_head_action() { ?>
834
+ <style>
835
+ .edgtf-fullscreen-search-inner .aws-container {
836
+ position: relative;
837
+ width: 50%;
838
+ margin: auto;
839
+ }
840
+ </style>
841
+ <script>
842
+ window.addEventListener('load', function() {
843
+ if ( typeof jQuery !== 'undefined' ) {
844
+ jQuery(document).on( 'click focus', '.edgtf-fullscreen-search-inner input', function(e) {
845
+ e.preventDefault();
846
+ e.stopImmediatePropagation();
847
+ return false;
848
+ } );
849
+ }
850
+ }, false);
851
+ </script>
852
+ <?php }
853
+
854
  /*
855
  * Storefront theme search form layout
856
  */
922
 
923
  <?php }
924
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
925
  /*
926
  * Porto theme seamless integration
927
  */
1095
  $selectors[] = '.warpper-mobile-search form';
1096
  }
1097
 
1098
+ if ( 'Walker' === $this->current_theme ) {
1099
+ $selectors[] = '.edgtf-page-header form, .edgtf-mobile-header form, .edgtf-fullscreen-search-form';
1100
+ }
1101
+
1102
  // WCFM - WooCommerce Multivendor Marketplace
1103
  if ( class_exists( 'WCFMmp' ) ) {
1104
  $selectors[] = '#wcfmmp-store .woocommerce-product-search';
includes/modules/elementor-widget/class-elementor-aws-init.php CHANGED
@@ -1,6 +1,6 @@
1
  <?php
2
  /**
3
- * AWS plugin elementor widgets init
4
  */
5
 
6
  if ( ! defined( 'ABSPATH' ) ) {
@@ -38,9 +38,22 @@ if ( ! class_exists( 'AWS_Elementor_Init' ) ) :
38
  * Constructor
39
  */
40
  public function __construct() {
 
41
  add_action( 'elementor/widgets/widgets_registered', array( $this, 'register_elementor_widgets' ) );
42
  add_action( 'elementor/editor/after_enqueue_styles', array( $this, 'filter_editor_styles' ) );
43
  add_action( 'elementor/preview/enqueue_styles', array( $this, 'filter_editor_styles' ) );
 
 
 
 
 
 
 
 
 
 
 
 
44
  }
45
 
46
  /**
@@ -62,6 +75,126 @@ if ( ! class_exists( 'AWS_Elementor_Init' ) ) :
62
  );
63
 
64
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
65
 
66
  }
67
 
1
  <?php
2
  /**
3
+ * AWS plugin elementor integrations init
4
  */
5
 
6
  if ( ! defined( 'ABSPATH' ) ) {
38
  * Constructor
39
  */
40
  public function __construct() {
41
+
42
  add_action( 'elementor/widgets/widgets_registered', array( $this, 'register_elementor_widgets' ) );
43
  add_action( 'elementor/editor/after_enqueue_styles', array( $this, 'filter_editor_styles' ) );
44
  add_action( 'elementor/preview/enqueue_styles', array( $this, 'filter_editor_styles' ) );
45
+
46
+ if ( AWS()->get_settings( 'seamless' ) === 'true' ) {
47
+
48
+ add_filter( 'elementor/widget/render_content', array( $this, 'elementor_render_content' ), 10, 2 );
49
+
50
+ // Elementor pro
51
+ if ( defined( 'ELEMENTOR_PRO_VERSION' ) ) {
52
+ add_action( 'wp_footer', array( $this, 'elementor_pro_popup' ) );
53
+ }
54
+
55
+ }
56
+
57
  }
58
 
59
  /**
75
  );
76
 
77
  }
78
+
79
+ /*
80
+ * Elementor replace search form widget
81
+ */
82
+ public function elementor_render_content( $content, $widget ) {
83
+ if ( method_exists( $widget, 'get_name' ) && $widget->get_name() === 'search-form' ) {
84
+ if ( method_exists( $widget, 'get_settings' ) ) {
85
+ $settings = $widget->get_settings();
86
+ if ( is_array( $settings ) && isset( $settings['skin'] ) && $settings['skin'] === 'full_screen' ) {
87
+ $content = '<style>
88
+ .elementor-search-form--skin-full_screen .elementor-search-form__container {
89
+ overflow: hidden;
90
+ }
91
+ .elementor-search-form--full-screen .aws-container {
92
+ width: 100%;
93
+ }
94
+ .elementor-search-form--full-screen .aws-container .aws-search-form {
95
+ height: auto !important;
96
+ }
97
+ .elementor-search-form--full-screen .aws-container .aws-search-form .aws-search-btn.aws-form-btn {
98
+ display: none;
99
+ }
100
+ .elementor-search-form--full-screen .aws-container .aws-search-field {
101
+ border-bottom: 1px solid #fff !important;
102
+ font-size: 50px !important;
103
+ text-align: center !important;
104
+ line-height: 1.5 !important;
105
+ color: #7a7a7a !important;
106
+ }
107
+ .elementor-search-form--full-screen .aws-container .aws-search-field:focus {
108
+ background-color: transparent !important;
109
+ }
110
+ </style>' . $content;
111
+ $content = str_replace( array( '<form', '</form>' ), array( '<div', '</div>' ), $content );
112
+ $content = preg_replace( '/(<input[\S\s]*?elementor-search-form__input[\S\s]*?\>)/i', aws_get_search_form( false ), $content );
113
+ return $content;
114
+ }
115
+ }
116
+ return aws_get_search_form( false );
117
+ }
118
+
119
+ // Elementskit plugin header search
120
+ if ( method_exists( $widget, 'get_name' ) && $widget->get_name() === 'elementskit-header-search' ) {
121
+ $content = '<style>
122
+ .ekit-search-panel .aws-container .aws-search-form {
123
+ height: 50px;
124
+ }
125
+ .ekit-search-panel .aws-container .aws-search-field {
126
+ border-radius: 50px !important;
127
+ }
128
+ .ekit-search-panel .aws-container .aws-search-form .aws-search-btn.aws-form-btn,
129
+ .ekit-search-panel .aws-container .aws-search-form .aws-form-btn:last-of-type {
130
+ width: 60px;
131
+ }
132
+ .ekit-search-panel .aws-container .aws-search-form,
133
+ .ekit-search-panel .aws-container .aws-search-form .aws-form-btn,
134
+ .ekit-search-panel .aws-container .aws-search-field {
135
+ background: transparent;
136
+ }
137
+ .ekit-search-panel .aws-container .aws-search-form .aws-main-filter .aws-main-filter__current,
138
+ .ekit-search-panel .aws-container .aws-search-form .aws-search-btn_icon,
139
+ .ekit-search-panel .aws-container .aws-search-field,
140
+ .ekit-search-panel .aws-container .aws-search-field::-webkit-input-placeholder {
141
+ color: #fff;
142
+ }
143
+ .ekit-search-panel .aws-container .aws-search-field,
144
+ .ekit-search-panel .aws-container .aws-search-form .aws-form-btn{
145
+ border: 2px solid #fff;
146
+ }
147
+ .ekit-search-panel .aws-container .aws-search-field {
148
+ padding-left: 20px;
149
+ }
150
+ .ekit-search-panel .aws-container[data-buttons-order="2"] .aws-search-field {
151
+ border-top-right-radius: 0 !important;
152
+ border-bottom-right-radius: 0 !important;
153
+ }
154
+ .ekit-search-panel .aws-container[data-buttons-order="2"] .aws-search-form .aws-search-btn {
155
+ border-top-left-radius: 0 !important;
156
+ border-bottom-left-radius: 0 !important;
157
+ border-top-right-radius: 50px !important;
158
+ border-bottom-right-radius: 50px !important;
159
+ }
160
+ .ekit-search-panel .aws-container[data-buttons-order="3"] .aws-search-field {
161
+ border-top-left-radius: 0 !important;
162
+ border-bottom-left-radius: 0 !important;
163
+ }
164
+ .ekit-search-panel .aws-container[data-buttons-order="3"] .aws-search-form .aws-search-btn {
165
+ border-top-left-radius: 50px !important;
166
+ border-bottom-left-radius: 50px !important;
167
+ border-top-right-radius: 0 !important;
168
+ border-bottom-right-radius: 0 !important;
169
+ }
170
+ </style>' . $content;
171
+ $content = preg_replace( '/<form[\S\s]*?<\/form>/i', aws_get_search_form( false ), $content );
172
+ }
173
+
174
+ return $content;
175
+
176
+ }
177
+
178
+ /*
179
+ * Elementor popup search form init
180
+ */
181
+ public function elementor_pro_popup() { ?>
182
+
183
+ <script>
184
+ window.addEventListener('load', function() {
185
+ if (window.jQuery) {
186
+ jQuery( document ).on( 'elementor/popup/show', function() {
187
+ window.setTimeout(function(){
188
+ jQuery('.elementor-container .aws-container').each( function() {
189
+ jQuery(this).aws_search();
190
+ });
191
+ }, 1000);
192
+ } );
193
+ }
194
+ }, false);
195
+ </script>
196
+
197
+ <?php }
198
 
199
  }
200
 
languages/advanced-woo-search.pot CHANGED
@@ -540,4 +540,145 @@ msgid "Support Forums"
540
  msgstr ""
541
 
542
  msgid "Contact Form"
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
543
  msgstr ""
540
  msgstr ""
541
 
542
  msgid "Contact Form"
543
+ msgstr ""
544
+
545
+ msgid "Premium Version"
546
+ msgstr ""
547
+
548
+ msgid "Premium"
549
+ msgstr ""
550
+
551
+ msgid "Upgrade to the"
552
+ msgstr ""
553
+
554
+ msgid "Premium plugin version"
555
+ msgstr ""
556
+
557
+ msgid "to have all available features!"
558
+ msgstr ""
559
+
560
+ msgid "30-day money back guarantee"
561
+ msgstr ""
562
+
563
+ msgid "Priority support"
564
+ msgstr ""
565
+
566
+ msgid "1 year of support and updates"
567
+ msgstr ""
568
+
569
+ msgid "Premium Features"
570
+ msgstr ""
571
+
572
+ msgid "New Search Sources"
573
+ msgstr ""
574
+
575
+ msgid "Search additionally inside %sproduct attributes%s, %staxonomies%s and %scustom fields%s. Inside the plugin settings page it is possible to choose some specific sources that must be available for search ( for example only several product attributes ) or just search for all of them."
576
+ msgstr ""
577
+
578
+ msgid "Learn more"
579
+ msgstr ""
580
+
581
+ msgid "Product Variations Support"
582
+ msgstr ""
583
+
584
+ msgid "Search and show inside search results %svariable product%s, %sproduct variations%s or %sboth%s. With the variable products will be displayed all attributes that belong to that specific variation."
585
+ msgstr ""
586
+
587
+ msgid "Archive Pages Search"
588
+ msgstr ""
589
+
590
+ msgid "Search for WooCommerce product %scustom taxonomies%s and %sattributes archive pages%s. Display them right inside search results list along with the product search results."
591
+ msgstr ""
592
+
593
+ msgid "Users Search"
594
+ msgstr ""
595
+
596
+ msgid "Search for website users and display them right inside the search results box. Choose what role the user must have to be available for search."
597
+ msgstr ""
598
+
599
+ msgid "Search Form Filters"
600
+ msgstr ""
601
+
602
+ msgid "For each search form you can create a unique set of tabs. These tabs have their own %sset of settings%s and work as %sfilters%s for your search results."
603
+ msgstr ""
604
+
605
+ msgid "Search Form Instances"
606
+ msgstr ""
607
+
608
+ msgid "Unlimited amount of search form instances with totally different settings and products look. You can create totally different search forms for any of your needs. Each instance is %sindependent%s and has its own %sset of settings%s."
609
+ msgstr ""
610
+
611
+ msgid "Search Logic Change"
612
+ msgstr ""
613
+
614
+ msgid "Switch from %sOR%s to %sAND%s search logic. Choose from %spartial%s or %sexact match%s search."
615
+ msgstr ""
616
+
617
+ msgid "Add to Cart Button"
618
+ msgstr ""
619
+
620
+ msgid "Display %sAdd to Cart%s button right inside the search results. This makes it possible to add the product to the cart without visiting the product page. This button works perfect also and with product variations."
621
+ msgstr ""
622
+
623
+ msgid "Search Results Layouts"
624
+ msgstr ""
625
+
626
+ msgid "Choose between several %spredefined search results layouts%s. For example you can display all products in search results in a grid or in column one by one."
627
+ msgstr ""
628
+
629
+ msgid "Exclude/Include Products Filters"
630
+ msgstr ""
631
+
632
+ msgid "Option to exclude or include products from search results by %sproduct ids%s, %staxonomies%s or %sattributes%s. Show only those products that you want. This option works great with the search form filters."
633
+ msgstr ""
634
+
635
+ msgid "ACF Plugin Support"
636
+ msgstr ""
637
+
638
+ msgid "All fields that were created with the help of %sAdvanced Custom Fields%s plugin are available for search. Also use a special build-in filters to display any ACF field value right inside the search results list."
639
+ msgstr ""
640
+
641
+ msgid "You will benefit from our full support for any issues you have with this plugin."
642
+ msgstr ""
643
+
644
+ msgid "Frequently Asked Questions"
645
+ msgstr ""
646
+
647
+ msgid "Do you offer refunds?"
648
+ msgstr ""
649
+
650
+ msgid "If you\'re not completely happy with your purchase and we\'re unable to resolve the issue, let us know and we\'ll refund the full purchase price. Refunds can be processed within 30 days of the original purchase."
651
+ msgstr ""
652
+
653
+ msgid "What payment methods do you accept?"
654
+ msgstr ""
655
+
656
+ msgid "Checkout is powered FastSpring company. They supports major credit and debit cards, PayPal, and a variety of other mainstream payment methods, so there’s plenty to pick from."
657
+ msgstr ""
658
+
659
+ msgid "Do you offer support if I need help?"
660
+ msgstr ""
661
+
662
+ msgid "Yes! You will benefit of our full support for any issues you have with this plugin."
663
+ msgstr ""
664
+
665
+ msgid "I have other pre-sale questions, can you help?"
666
+ msgstr ""
667
+
668
+ msgid "Yes! You can ask us any question through our"
669
+ msgstr ""
670
+
671
+ msgid "contact form."
672
+ msgstr ""
673
+
674
+ msgid "Website Links:"
675
+ msgstr ""
676
+
677
+ msgid "Plugin home page"
678
+ msgstr ""
679
+
680
+ msgid "Features"
681
+ msgstr ""
682
+
683
+ msgid "Pricing"
684
  msgstr ""
readme.txt CHANGED
@@ -4,7 +4,7 @@ Donate link: https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_i
4
  Tags: widget, plugin, woocommerce, search, product search, woocommerce search, ajax search, live search, custom search, ajax, shortcode, better search, relevance search, relevant search, search by sku, search plugin, shop, store, wordpress search, wp ajax search, wp search, wp search plugin, sidebar, ecommerce, merketing, products, category search, instant-search, search highlight, woocommerce advanced search, woocommerce live search, WooCommerce Plugin, woocommerce product search
5
  Requires at least: 4.0
6
  Tested up to: 5.6
7
- Stable tag: 2.17
8
  License: GPLv2 or later
9
  License URI: http://www.gnu.org/licenses/gpl-2.0.html
10
 
@@ -112,6 +112,14 @@ Yep. This plugin is always compatible with the latest version of Woocommerce?
112
 
113
  == Changelog ==
114
 
 
 
 
 
 
 
 
 
115
  = 2.17 ( 2020-12-14 ) =
116
  * Dev - Specify global $product variable for search results items
117
  * Dev - Add aws_show_mobile_layout js filter
4
  Tags: widget, plugin, woocommerce, search, product search, woocommerce search, ajax search, live search, custom search, ajax, shortcode, better search, relevance search, relevant search, search by sku, search plugin, shop, store, wordpress search, wp ajax search, wp search, wp search plugin, sidebar, ecommerce, merketing, products, category search, instant-search, search highlight, woocommerce advanced search, woocommerce live search, WooCommerce Plugin, woocommerce product search
5
  Requires at least: 4.0
6
  Tested up to: 5.6
7
+ Stable tag: 2.18
8
  License: GPLv2 or later
9
  License URI: http://www.gnu.org/licenses/gpl-2.0.html
10
 
112
 
113
  == Changelog ==
114
 
115
+ = 2.18 ( 2021-01-04 ) =
116
+ * Add - Support for Walker WordPress theme
117
+ * Update - Elementor plugin support. Add integration with Elementskit plugin header search
118
+ * Update - Search results styles. Fit search results box to search form width
119
+ * Update - Admin menu item position
120
+ * Update - Add Premium tab inside plugin settings page
121
+ * Dev - Update aws_show_mobile_layout filter. Change it to aws_show_modal_layout and give option to use modal layout on desktop
122
+
123
  = 2.17 ( 2020-12-14 ) =
124
  * Dev - Specify global $product variable for search results items
125
  * Dev - Add aws_show_mobile_layout js filter