CTX Feed – WooCommerce Product Feed Manager Plugin - Version 4.4.34

Version Description

(2021-11-02) = * Added: Google Remarketing Tag tracking support added. * Added: Quantity sell attribute added for facebook. * Fixed: Product category sequence issue fixed. * Fixed: Skroutz.gr availability string issue fixed. * Fixed: Tab display conflict with 3rd party plugin issue fixed. * Fixed: Group product price issue fixed.

Download this release

Release Info

Developer wahid0003
Plugin Icon 128x128 CTX Feed – WooCommerce Product Feed Manager Plugin
Version 4.4.34
Comparing to
See all releases

Code changes from version 4.4.33 to 4.4.34

README.txt CHANGED
@@ -5,14 +5,14 @@ Tags: Product Feed, WooCommerce, Google Shopping, Google Merchant, Facebook Cata
5
  Requires at least: 4.4
6
  Tested Up To: 5.8
7
  Requires PHP: 5.6
8
- Stable tag: 4.4.33
9
  License: GPLv2 or later
10
  License URI: http://www.gnu.org/licenses/gpl-2.0.html
11
 
12
- Generate error-free woocommerce product feed for any marketing channel like Google Shopping, Facebook Catalog, Bing, Pinterest, Instagram & 100+ more channels.
13
 
14
  == Description ==
15
- Easily create the most optimized and error-free product feeds for your WooCommerce store targeting the leading global and local product marketing channels like Google Shopping or Google Merchant, Facebook Dynamic Product Ads, Instagram Shopping Ads, Pinterest Shopping Ads, eBay Ads, Bing Ads, PriceRunner, Rakuten, PriceSpy, Kelko, and more.
16
 
17
  **WooCommerce Product Feed Pro (CTX Feed)** is a WooCommerce product feed generator plugin for WooCommerce powered stores. This plugin currently supports more than 100+ marketing channels. So, you can target your desired marketing channels, price comparison sites, and/or affiliate networks.
18
 
@@ -317,6 +317,7 @@ Product meta and taxonomies are very common, but what if you wanted to add them
317
  * <a target="_blank" href="https://www.facebook.com/business/a/online-sales/dynamic-product-ads">Facebook Catalog Feed</a>
318
  * <a target="_blank" href="https://help.pinterest.com/en/business/article/data-source-specification">Pinterest Catalog Feed</a>
319
  * <a target="_blank" href="https://help.pinterest.com/en/business/article/before-you-get-started-with-catalogs">Pinterest RSS Feed</a>
 
320
  * <a target="_blank" href="https://feedonomics.com/blog/local-inventory-ads-on-microsoft-advertising-aka-bing-ads/">Bing Local Inventory Feed</a>
321
  * <a target="_blank" href="https://advertising.amazon.com/">Amazon Seller Ad</a>
322
  * <a target="_blank" href="http://www.ebaycommercenetwork.com/">eBay Commerce Network</a>
@@ -516,6 +517,14 @@ Using pro version:
516
 
517
  == Changelog ==
518
 
 
 
 
 
 
 
 
 
519
  = 4.4.33 (2021-10-22) =
520
  * Fixed: Unit & Currency postfix issue.
521
 
5
  Requires at least: 4.4
6
  Tested Up To: 5.8
7
  Requires PHP: 5.6
8
+ Stable tag: 4.4.34
9
  License: GPLv2 or later
10
  License URI: http://www.gnu.org/licenses/gpl-2.0.html
11
 
12
+ Generate error-free woocommerce product feed for any marketing channel like Google Shopping, Facebook Catalog, Bing, Pinterest, Instagram, TikTok & 100+ more channels.
13
 
14
  == Description ==
15
+ Easily create the most optimized and error-free product feeds for your WooCommerce store targeting the leading global and local product marketing channels like Google Shopping or Google Merchant, Facebook Dynamic Product Ads, Instagram Shopping Ads, Pinterest Shopping Ads, TikTok, eBay Ads, Bing Ads, PriceRunner, Rakuten, PriceSpy, Kelko, and more.
16
 
17
  **WooCommerce Product Feed Pro (CTX Feed)** is a WooCommerce product feed generator plugin for WooCommerce powered stores. This plugin currently supports more than 100+ marketing channels. So, you can target your desired marketing channels, price comparison sites, and/or affiliate networks.
18
 
317
  * <a target="_blank" href="https://www.facebook.com/business/a/online-sales/dynamic-product-ads">Facebook Catalog Feed</a>
318
  * <a target="_blank" href="https://help.pinterest.com/en/business/article/data-source-specification">Pinterest Catalog Feed</a>
319
  * <a target="_blank" href="https://help.pinterest.com/en/business/article/before-you-get-started-with-catalogs">Pinterest RSS Feed</a>
320
+ * <a target="_blank" href="https://ads.tiktok.com/help/article?aid=10001006">TikTok Ads</a>
321
  * <a target="_blank" href="https://feedonomics.com/blog/local-inventory-ads-on-microsoft-advertising-aka-bing-ads/">Bing Local Inventory Feed</a>
322
  * <a target="_blank" href="https://advertising.amazon.com/">Amazon Seller Ad</a>
323
  * <a target="_blank" href="http://www.ebaycommercenetwork.com/">eBay Commerce Network</a>
517
 
518
  == Changelog ==
519
 
520
+ = 4.4.34 (2021-11-02) =
521
+ * Added: Google Remarketing Tag tracking support added.
522
+ * Added: Quantity sell attribute added for facebook.
523
+ * Fixed: Product category sequence issue fixed.
524
+ * Fixed: Skroutz.gr availability string issue fixed.
525
+ * Fixed: Tab display conflict with 3rd party plugin issue fixed.
526
+ * Fixed: Group product price issue fixed.
527
+
528
  = 4.4.33 (2021-10-22) =
529
  * Fixed: Unit & Currency postfix issue.
530
 
admin/css/woo-feed-admin.css CHANGED
@@ -340,6 +340,7 @@ div#wf-tab-content1 .dashicons {
340
  z-index: 2;
341
  width: 100%;
342
  font-size: 0.9rem;
 
343
  left: 0;
344
  }
345
  #providerPageWrapper .wf_tabs li .wf-tab-content .feed-actions {
340
  z-index: 2;
341
  width: 100%;
342
  font-size: 0.9rem;
343
+ display: block;
344
  left: 0;
345
  }
346
  #providerPageWrapper .wf_tabs li .wf-tab-content .feed-actions {
admin/css/woo-feed-admin.min.css CHANGED
@@ -1 +1 @@
1
- .wpf_spin{-webkit-animation:spin 1s infinite linear;animation:spin 1s infinite linear}.wpf_spin.reverse_spin{animation-direction:reverse}.wpf_regenerate.disabled{color:#737373;box-shadow:none;cursor:not-allowed}@-webkit-keyframes spin{0%{-webkit-transform:rotate(0);transform:rotate(0)}100%{-webkit-transform:rotate(359deg);transform:rotate(359deg)}}@keyframes spin{0%{-webkit-transform:rotate(0);transform:rotate(0)}100%{-webkit-transform:rotate(359deg);transform:rotate(359deg)}}.webappick-info{color:#42a5fa}.wfbtn{background:#3498db;background-image:linear-gradient(125deg,#3cb0fd 0,#152f8c 140%);border-radius:3px;box-shadow:inset 0 1px 3px #666;font-family:Arial,sans-serif;color:#fff;font-size:20px;padding:10px 20px 10px 20px;border:solid #2b698f 0;text-decoration:none}.wfbtn:hover{background:#3cb0fd;background-image:linear-gradient(to bottom,#3cb0fd,#3498db);text-decoration:none}.woo_feed_manage_list_table .wf_update_interval_btn{background:linear-gradient(125deg,#3cb0fd 0,#6c5ce7 140%);border:none}.woo_feed_manage_list_table .wf_update_interval_btn:hover{background:linear-gradient(125deg,#3cb0fd 0,#6c5ce7 140%)}.woo-feed-promotion{position:relative;display:none}.woo-feed-promotion .woo-feed-campaign-close-button{position:absolute;top:50%;-webkit-transform:translateY(-50%);transform:translateY(-50%);right:15px;width:24px;height:24px;border-radius:12px;background:#595d6b;line-height:24px;color:#fff;cursor:pointer;transition:.3s ease}.woo-feed-promotion .woo-feed-campaign-close-button:hover{background:#fff;color:#d61e48}.wftooltip{display:none;position:absolute;border:1px solid #333;background-color:#161616;border-radius:5px;padding:10px;color:#fff;font-size:12px}.feed-actions .makeFeedResponse{width:70%;color:green}.woo-feed-mapping-input{width:100%}.requiredIn{color:red}.generalInput{width:200px}.generalInput:not(.selectize-control){margin:5px auto}.error{color:red}.widefat td input,.widefat td select{max-width:100%}.woo-feed-btn-bg-gradient-blue,[data-class=woo-feed-btn-bg-gradient-blue]{background:linear-gradient(125deg,#3cb0fd 0,#6c5ce7 140%)!important;border:none;outline:0;border-width:0!important;box-shadow:none!important;transition:1s lenear;font-weight:500;color:#fff!important}.woo-feed-btn-bg-gradient-blue:hover,[data-class=woo-feed-btn-bg-gradient-blue]:hover{background:#3cb0fd!important}.woo-feed-btn-bg-gradient-red{background:linear-gradient(125deg,#eb4d4b 0,#ff9671 140%)!important;border:none;outline:0;border-width:0!important;box-shadow:none!important;transition:1s lenear;font-weight:500;color:#fff!important}.woo-feed-btn-bg-gradient-red:hover{background:#fc5c65!important}.woo-feed-btn-bg-gradient-purple{background:linear-gradient(67.36deg,#9733ee 3.09%,#da22ff 64.97%)!important;border:none;outline:0;border-width:0!important;box-shadow:none!important;transition:1s lenear;font-weight:500;color:#fff!important}.woo-feed-btn-bg-gradient-purple:hover{background:#a203fb!important}.woo-feed-light-btn-bg-gradient-blue{background:linear-gradient(125deg,#3cb0fd 0,#6c5ce7 140%)!important}#wf_newRow{margin-left:0}.mtable tbody tr{height:25px;border:1px solid #ccc;text-align:left;-ms-flex-align:baseline;align-items:baseline;font-weight:700}.mtable th:nth-child(1){width:17px}.mtable th:nth-child(2){width:160px}.mtable th:nth-child(3){width:100px}.mtable th:nth-child(4){width:100px}.mtable th:nth-child(5){width:150px}.mtable th:nth-child(6){width:100px}.mtable th:nth-child(7){width:150px}.mtable th:nth-child(8){width:90px}.mtable th:nth-child(9){width:29px}.mtable2 tbody tr{height:25px;border:1px solid #ccc;text-align:left;-ms-flex-align:baseline;align-items:baseline;font-weight:700}.mtable2 th:nth-child(1){width:30px}.mtable2 th:nth-child(2){width:150px}.mtable2 th:nth-child(3){width:230px}.mtable2 th:nth-child(4){width:220px}.mtable2 th:nth-child(7){width:50px}.mtable2 th:nth-child(8){width:50px}.mtable2 th:nth-child(9){width:29px}.wp-admin select.wf_mattributes{width:150px;left:0;height:25px}div#wf-tab-content1 select:not([name^=output_type]){width:100%}div#wf-tab-content1 input{width:100%}div#wf-tab-content1 .dashicons{vertical-align:middle}.wf_attributes{width:150px;left:0}.wf_compare{max-width:245px;left:0}.wf_ps{width:100px;left:0}.wf_sortedtable{cursor:move}.sorted_table{position:relative}.sorted_table .dragged{position:absolute;opacity:.8;z-index:9999;background:#fff;width:100%;display:table}.sorted_table tbody tr.placeholder td{border:1px dashed #2cc185;height:46px}.wfnoempty{width:120px}.woofeed-body-content #providerPage{display:-ms-flexbox;display:flex;-ms-flex-direction:column-reverse;flex-direction:column-reverse}#providerPageWrapper{display:-ms-flexbox;display:flex;-ms-flex-direction:column-reverse;flex-direction:column-reverse}#providerPageWrapper .wf_tabs{position:relative;margin:0 auto;width:100%;list-style:none}#providerPageWrapper .wf_tabs:after{display:table;clear:both;content:""}#providerPageWrapper .wf_tabs li{background:#fff;float:left;display:none;border:2px solid #ccc}#providerPageWrapper .wf_tabs li.active{display:block}#providerPageWrapper .wf_tabs li .wf-tab-content{z-index:2;width:100%;font-size:.9rem;left:0}#providerPageWrapper .wf_tabs li .wf-tab-content .feed-actions{border:none;border-top:2px solid #ccc}#providerPageWrapper #tabName{display:-ms-flexbox;display:flex;-ms-flex-pack:start;justify-content:flex-start;-ms-flex-align:start;align-items:flex-start}#providerPageWrapper #tabName .tab-name{min-width:300px;border:2px solid #ccc;border-bottom:none}#providerPageWrapper #tabName .tab-name input[type=radio]{display:none}#providerPageWrapper #tabName .tab-name label.activate{background:#2cc185;color:#fff}.wf-tab-name{display:block;padding:15px;font-size:15px;font-weight:700;line-height:1;background:#fff;cursor:pointer;position:relative;text-align:center;text-transform:uppercase;color:#2cc185}.wf-tab-name:hover{background:#2cc185;color:#fff}.wf_tabs [id^=tab]:checked+label{background:#2cc185;color:#fff}.wf_tabs [id^=tab]:checked~[id^=wf-tab-content]{display:block}div#wf-tab-content2 table:first-child{padding:10px 0}div#wf-tab-content2 table:first-child td:nth-child(1){width:260px}div#wf-tab-content2 table:first-child td:nth-child(2){width:260px}table.feed-actions tr td:last-child{text-align:right}select.selectize{display:none}body.no-js select.selectize{display:block!important}.wp-list-table .option_name .wf_feed_option_name_link{font-weight:700;color:#30336b}.wp-list-table #option_name a{color:#32373c}.selectize-dropdown .active{background-color:#edf9ff}.selectize-dropdown .create{padding:5px 8px}.wapk-selectize-item{background:#0073aa!important;color:#f1f1f1!important;border-color:#0073aa!important;padding-left:5px;padding-right:5px;border-radius:3px}.selectize-google-category .selectize-input{padding-right:30px}.selectize-google-category .selectize-dropdown-content{padding:0 8px}.selectize-google-category .selectize-dropdown-content .wapk-selectize-item{color:#000!important;background-color:#edf0f2!important;margin-bottom:3px!important;padding:3px 8px!important;transition-duration:.6s}.selectize-google-category .selectize-dropdown-content .wapk-selectize-item.active{background-color:#a2c8e1!important;transition-duration:.6s}.selectize-input.full #googleTaxonomyId-selectized{opacity:0;position:absolute;left:-10000px}.selectize-dropdown [data-selectable].option{cursor:default}.selectize-control.plugin-remove_button [data-value] .remove{border-left:1px solid #f1f1f1!important}.selectize-dropdown .optgroup-header{font-weight:700;background:#efefef;color:#5a5a5a}.selectize-dropdown [data-selectable].option{cursor:pointer}.wf_status_wrap label{width:55px;height:28px;box-sizing:border-box;float:left;border-radius:100px;position:relative;cursor:pointer;transition:.3s ease;background:linear-gradient(125deg,#e2e2e2 0,#ccc 140%)}input[class=woo_feed_status_input]:checked+label{background:linear-gradient(125deg,#3cb0fd 0,#6c5ce7 140%)}input[class=woo_feed_status_input]:checked+label:before{left:29px}.wf_status_wrap label:before{transition:.3s ease;content:"";width:20px;height:20px;position:absolute;background:#fff;left:6px;top:4px;box-sizing:border-box;color:#000;border-radius:100px;box-shadow:0 1.5px 2px 0 #000}.view span.dashicons.dashicons-external{color:#22a6b3}.view span.dashicons.dashicons-sos{color:#22a6b3}.view span.dashicons.dashicons-download{color:#ee5253}.view span.dashicons.dashicons-media-code{color:#576574}.column-url,.widefat td.column-url,.widefat th.column-url{color:#1e8f9a;font-weight:700}.feed-progress-container{width:100%;color:#fff;text-align:center;font-weight:300}.feed-progress-bar{width:100%;background:#eee;padding:3px;border-radius:50px;box-shadow:inset 0 1px 3px rgba(0,0,0,.2)}.feed-progress-bar-fill{height:20px;display:block;background:linear-gradient(to right top,#10ac84,#13b389,#15ba8f,#18c194,#1ac89a,#13cba1,#0acfa9,#00d2b0,#00d2ba,#00d2c3,#00d2cb,#00d2d3);width:0;border-radius:50px;transition:width .8s ease}.feed-progress-status{float:left;font-weight:700;color:#00008b}.feed-progress-percentage{text-align:right;font-weight:bolder;color:#1dd1a1;font-family:"Arial Black",sans-serif;font-size:large}#wpbody-content.woofeed-body-content{overflow:visible!important}.clippy{position:relative;width:13px;margin-top:-3px;margin-left:3px;top:3px}.column-url .clippy{display:none}.column-url:hover .clippy{display:inline-block}.tooltipped{position:relative}.tooltipped:after{position:absolute;z-index:1000000;display:none;padding:5px 8px;font:normal normal 11px/1.5 Helvetica,arial,nimbussansl,liberationsans,freesans,clean,sans-serif,"Segoe UI Emoji","Segoe UI Symbol";color:#fff;text-align:center;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-wrap:break-word;white-space:pre;pointer-events:none;content:attr(aria-label);background:rgba(0,0,0,.8);border-radius:3px;-webkit-font-smoothing:subpixel-antialiased}.tooltipped:before{position:absolute;z-index:1000001;display:none;width:0;height:0;color:rgba(0,0,0,.8);pointer-events:none;content:"";border:5px solid transparent}.tooltipped:hover:before{display:inline-block;text-decoration:none}.tooltipped:hover:after{display:inline-block;text-decoration:none}.tooltipped:active:before{display:inline-block;text-decoration:none}.tooltipped:active:after{display:inline-block;text-decoration:none}.tooltipped:focus:before{display:inline-block;text-decoration:none}.tooltipped:focus:after{display:inline-block;text-decoration:none}.tooltipped-multiline:hover:after{display:table-cell}.tooltipped-multiline:active:after{display:table-cell}.tooltipped-multiline:focus:after{display:table-cell}.tooltipped-multiline:after{width:-webkit-max-content;width:-moz-max-content;width:max-content;max-width:250px;word-break:break-word;word-wrap:normal;white-space:pre-line;border-collapse:separate}.tooltipped-s:after{top:100%;right:50%;margin-top:5px;-webkit-transform:translateX(50%);transform:translateX(50%)}.tooltipped-s:before{top:auto;right:50%;bottom:-5px;margin-right:-5px;border-bottom-color:rgba(0,0,0,.8)}.tooltipped-se:after{top:100%;margin-top:5px;right:auto;left:50%;margin-left:-15px}.tooltipped-se:before{top:auto;right:50%;bottom:-5px;margin-right:-5px;border-bottom-color:rgba(0,0,0,.8)}.tooltipped-sw:after{top:100%;right:50%;margin-top:5px;margin-right:-15px}.tooltipped-sw:before{top:auto;right:50%;bottom:-5px;margin-right:-5px;border-bottom-color:rgba(0,0,0,.8)}.tooltipped-n:after{right:50%;bottom:100%;margin-bottom:5px;-webkit-transform:translateX(50%);transform:translateX(50%)}.tooltipped-n:before{top:-5px;right:50%;bottom:auto;margin-right:-5px;border-top-color:rgba(0,0,0,.8)}.tooltipped-ne:after{bottom:100%;margin-bottom:5px;right:auto;left:50%;margin-left:-15px}.tooltipped-ne:before{top:-5px;right:50%;bottom:auto;margin-right:-5px;border-top-color:rgba(0,0,0,.8)}.tooltipped-nw:after{right:50%;bottom:100%;margin-bottom:5px;margin-right:-15px}.tooltipped-nw:before{top:-5px;right:50%;bottom:auto;margin-right:-5px;border-top-color:rgba(0,0,0,.8)}.tooltipped-w:after{right:100%;bottom:50%;margin-right:5px;-webkit-transform:translateY(50%);transform:translateY(50%)}.tooltipped-w:before{top:50%;bottom:50%;left:-5px;margin-top:-5px;border-left-color:rgba(0,0,0,.8)}.tooltipped-e:after{bottom:50%;left:100%;margin-left:5px;-webkit-transform:translateY(50%);transform:translateY(50%)}.tooltipped-e:before{top:50%;right:-5px;bottom:50%;margin-top:-5px;border-right-color:rgba(0,0,0,.8)}.tooltipped-multiline.tooltipped-s:after{right:auto;left:50%;-webkit-transform:translateX(-50%);transform:translateX(-50%)}.tooltipped-multiline.tooltipped-n:after{right:auto;left:50%;-webkit-transform:translateX(-50%);transform:translateX(-50%)}.tooltipped-multiline.tooltipped-w:after{right:100%}.tooltipped-multiline.tooltipped-e:after{right:100%}.tooltipped-sticky:before{display:inline-block}.tooltipped-sticky:after{display:inline-block}.tooltipped-sticky.tooltipped-multiline:after{display:table-cell}.fullscreen-overlay-enabled.dark-theme .tooltipped:after{color:#000;background:rgba(255,255,255,.8)}.fullscreen-overlay-enabled.dark-theme .tooltipped .tooltipped-s:before{border-bottom-color:rgba(255,255,255,.8)}.fullscreen-overlay-enabled.dark-theme .tooltipped .tooltipped-se:before{border-bottom-color:rgba(255,255,255,.8)}.fullscreen-overlay-enabled.dark-theme .tooltipped .tooltipped-sw:before{border-bottom-color:rgba(255,255,255,.8)}.fullscreen-overlay-enabled.dark-theme .tooltipped.tooltipped-n:before{border-top-color:rgba(255,255,255,.8)}.fullscreen-overlay-enabled.dark-theme .tooltipped.tooltipped-ne:before{border-top-color:rgba(255,255,255,.8)}.fullscreen-overlay-enabled.dark-theme .tooltipped.tooltipped-nw:before{border-top-color:rgba(255,255,255,.8)}.fullscreen-overlay-enabled.dark-theme .tooltipped.tooltipped-e:before{border-right-color:rgba(255,255,255,.8)}.fullscreen-overlay-enabled.dark-theme .tooltipped.tooltipped-w:before{border-left-color:rgba(255,255,255,.8)}@media screen and (min-width:0\0){.tooltipped-multiline:after{width:250px}}ul.tracker_collection_list{list-style:initial;padding:initial;margin:-10px 0 0 30px;font-size:11px!important}ul.tracker_collection_list li{margin:0}table.wf-info-table,table.wf-rate-table{vertical-align:middle;text-align:center;max-width:100%;font-weight:500;margin-top:10px}table.wf-info-table th,table.wf-rate-table th{text-align:center}table.wf-info-table th .woo-feed-top-header,table.wf-rate-table th .woo-feed-top-header{display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;-ms-flex-align:center;align-items:center}table.wf-info-table th .woo-feed-top-header .get-woo-feed-pro,table.wf-rate-table th .woo-feed-top-header .get-woo-feed-pro{margin-left:20px}table.wf-info-table th .woo-feed-top-header .get-woo-feed-pro img,table.wf-rate-table th .woo-feed-top-header .get-woo-feed-pro img{width:172px}table.wf-info-table th .woo-feed-top-header .woo-feed-top-buttons,table.wf-rate-table th .woo-feed-top-header .woo-feed-top-buttons{float:right;display:-ms-flexbox;display:flex;border-radius:7px;-ms-flex-pack:center;justify-content:center;-ms-flex-align:center;align-items:center}table.wf-info-table th .woo-feed-top-header .woo-feed-top-buttons a,table.wf-rate-table th .woo-feed-top-header .woo-feed-top-buttons a{padding:8px 20px;background:#576574;color:#fff;box-sizing:border-box;display:inline-block;transition:.3s ease}table.wf-info-table th .woo-feed-top-header .woo-feed-top-buttons a.woo-feed-doc-link,table.wf-rate-table th .woo-feed-top-header .woo-feed-top-buttons a.woo-feed-doc-link{background:#576574;border-top-left-radius:5px;border-bottom-left-radius:5px}table.wf-info-table th .woo-feed-top-header .woo-feed-top-buttons a.woo-feed-video-link,table.wf-rate-table th .woo-feed-top-header .woo-feed-top-buttons a.woo-feed-video-link{background:#ee5253}table.wf-info-table th .woo-feed-top-header .woo-feed-top-buttons a.woo-feed-support-link,table.wf-rate-table th .woo-feed-top-header .woo-feed-top-buttons a.woo-feed-support-link{background:#22a6b3;border-top-right-radius:5px;border-bottom-right-radius:5px}table.wf-info-table th .woo-feed-top-header .woo-feed-top-buttons a span.dashicons,table.wf-rate-table th .woo-feed-top-header .woo-feed-top-buttons a span.dashicons{font-size:18px;line-height:1.2}table.wf-info-table th .woo-feed-top-header .woo-feed-top-buttons a:hover,table.wf-rate-table th .woo-feed-top-header .woo-feed-top-buttons a:hover{background:#30336b;box-shadow:0 0 33px 0 rgba(0,0,0,.12)}table.wf-info-table strong,table.wf-rate-table strong{font-weight:700}table.wf-info-table th:first-child img{margin:0 0 -5px 5px}table.wf-rate-table a{color:#0073aa}table.wf-rate-table a.review-star:after{content:"\f155\f155\f155\f155\f155"!important;font-family:dashicons;font-size:10px;font-weight:100;text-rendering:auto;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:#0073aa;text-decoration:underline}#adminmenu #toplevel_page_webappick-manage-feeds div.wp-menu-image::before{content:"";background:url(../images/woo-feed-icon.svg) no-repeat center center;background-size:20px 20px;opacity:.6}#adminmenu #toplevel_page_webappick-manage-feeds:hover div.wp-menu-image::before{opacity:1}#adminmenu #toplevel_page_webappick-manage-feeds.wp-has-current-submenu div.wp-menu-image::before{opacity:1}.wapk-admin,.wapk-admin *{box-sizing:border-box}.wapk-admin{position:relative;display:block;-webkit-hyphens:manual;-ms-hyphens:manual;-moz-hyphens:manual;hyphens:manual;color:#1b2730;margin:0 0 0 -10px}@media screen and (min-width:783px){.wapk-admin{margin:0 0 0 -20px}}.text-center{text-align:center}.wapk-admin h1,.wapk-admin h2,.wapk-admin h3,.wapk-admin h4,.wapk-admin h5,.wapk-admin h6,.wapk-admin p{color:#1b2730}.wapk-admin sup{vertical-align:baseline;position:relative;top:-6px}.wapk-admin sub{vertical-align:baseline;position:relative;top:4px}.wapk-admin .wapk-section{margin:10px 20px 0 22px;position:relative;display:block}.wapk-admin .wapk-section [class$=icon32]+h2{font-size:23px;font-weight:400;margin:0;padding:9px 0 4px 0;line-height:1.3}.wapk-admin .wapk-section h1{font-size:23px;font-weight:400;margin:0;padding:9px 0 4px 0;line-height:1.3}.wapk-admin .wapk-section>h2:first-child{font-size:23px;font-weight:400;margin:0;padding:9px 0 4px 0;line-height:1.3}.wapk-admin>.notice{margin:10px 20px 0 22px;position:relative;display:block}.wapk-admin span.help{display:block;float:left;width:100%;font-size:.9em;color:#636363;margin-top:5px;font-weight:500}.wapk-admin span.help .dashicons{width:11px;height:12px;font-size:inherit;vertical-align:middle}.clear:after{content:"";display:table;clear:both}.wapk-feed-docs .postbox{width:355px;margin-right:20px;display:inline-block;vertical-align:top}.wapk-feed-docs .postbox .hndle{font-size:14px;padding:8px 12px;margin:0;line-height:1.4;cursor:pointer}.wapk-feed-docs .postbox .dashicons{color:#ccc}.wapk-feed-docs .postbox a{text-decoration:none}.wapk-feed-docs .postbox .inside{margin-bottom:0}.wapk-feed-docs .postbox ul{margin-bottom:0}.wapk-feed-docs .postbox .toggle-indicator:before{content:"\f142";display:inline-block;font:400 20px/1 dashicons;speak:none;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-decoration:none!important}.wapk-feed-docs .postbox li{width:100%;display:block;float:left}.wapk-feed-docs .postbox li span{display:inline-block;float:left;margin-right:4px}.wapk-feed-docs .postbox li a{display:inline-block;float:left;width:calc(100% - 24px)}.wapk-feed-docs .postbox.closed .toggle-indicator:before{content:"\f140"}.wapk-section #post-body.columns-2 #side-sortables{min-height:196px}#poststuff #feed_merchant_info .inside{margin:0;padding:0}#feed_merchant_info ul.data{margin-left:24px;margin-top:5px}#feed_merchant_info ul.data li{margin-bottom:5px}.merchant-info-section{padding:6px 10px 8px}.merchant-info-section.woo-feed-open-file{text-align:center}.merchant-info-section.woo-feed-open-file a{line-height:1.5;text-decoration:none}.generateFeed .wf-tab-content table:first-child{border:none;box-shadow:none}.generateFeed table th{font-weight:700}@media only screen and (max-width:850px){.wapk-feed-docs .postbox{display:block;width:auto;float:none;margin-right:auto}}.wp-submenu li span.woo-feed-docs{font-weight:700;color:#f18500}.wp-submenu li:hover span.woo-feed-docs{color:#ce7304}.wp-submenu li.current span.woo-feed-docs{color:#ce7304}.wapk-admin .wapk-feed-docs .postbox .hndle{cursor:default}.wapk-cta{position:relative;display:-ms-flexbox;display:flex;width:100%;padding:100px 15px;background:linear-gradient(45deg,#6cd5ff 33%,#c2efef 100%);-ms-flex-pack:center;justify-content:center;-ms-flex-align:center;align-items:center}.wapk-cta-icon .dashicons{font-size:100px;width:100px;height:auto;margin:0 10px -8px 0;color:#02658c}.wapk-cta-content{width:50%}.wapk-cta-content h2{font-size:2em;margin:.5em 0}.wapk-cta-action a.wapk-button{font-size:24px;height:auto!important;padding:10px 20px}@media (max-width:600px){.wapk-cta{display:block;text-align:center;padding:4em 0}.wapk-cta-content{width:100%;margin:2em 0}}.wapk-button{color:#00d4d4;border-color:#00d4d4;display:inline-block;text-decoration:none;font-size:13px;line-height:2.15384615;min-height:30px;margin:0;padding:0 10px;cursor:pointer;border-width:1px;border-style:solid;-webkit-appearance:none;border-radius:3px;white-space:nowrap;box-sizing:border-box}.wapk-button>svg{width:15px;margin-left:5px;fill:#00d4d4}.wapk-button>.dashicons{color:#00d4d4}.wapk-button:hover{border-color:#0bb;color:#0bb}.wapk-button:hover>svg{fill:#0bb}.wapk-button:hover>.dashicons{color:#0bb}.wapk-button:focus{border-color:#00d4d4;color:#0bb;box-shadow:0 0 0 1px #00d4d4}.wapk-button:focus>svg{fill:#0bb}.wapk-button:focus>.dashicons{color:#0bb}.wapk-button:active{background:#0bb;border-color:#0bb}.wapk-button-secondary{color:#00d4d4;border-color:#00d4d4;display:inline-block;text-decoration:none;font-size:13px;line-height:2.15384615;min-height:30px;margin:0;padding:0 10px;cursor:pointer;border-width:1px;border-style:solid;-webkit-appearance:none;border-radius:3px;white-space:nowrap;box-sizing:border-box}.wapk-button-secondary>svg{width:15px;margin-left:5px;fill:#00d4d4}.wapk-button-secondary>.dashicons{color:#00d4d4}.wapk-button-secondary:hover{border-color:#0bb;color:#0bb}.wapk-button-secondary:hover>svg{fill:#0bb}.wapk-button-secondary:hover>.dashicons{color:#0bb}.wapk-button-secondary:focus{border-color:#00d4d4;color:#0bb;box-shadow:0 0 0 1px #00d4d4}.wapk-button-secondary:focus>svg{fill:#0bb}.wapk-button-secondary:focus>.dashicons{color:#0bb}.wapk-button-primary{display:inline-block;text-decoration:none;font-size:13px;line-height:2.15384615;min-height:30px;margin:0;padding:0 10px;cursor:pointer;border-width:1px;border-style:solid;-webkit-appearance:none;border-radius:3px;white-space:nowrap;box-sizing:border-box;background:#00d4d4;border-color:#00d4d4;color:#fff;box-shadow:0 1px 0 #0bb;text-shadow:0 -1px 1px #0bb,1px 0 1px #0bb,0 1px 1px #0bb,-1px 0 1px #0bb}.wapk-button-primary>svg{fill:#fff}.wapk-button-primary:hover{background:#00e3e3;border-color:#00c5c5;color:#fff}.wapk-button-primary:hover>svg{fill:#fff}.wapk-button-primary:focus{background:#00e3e3;border-color:#00c5c5;color:#fff;box-shadow:0 0 0 1px #fff,0 0 0 3px #00d4d4}.wapk-button-primary:focus>svg{fill:#fff}.wapk-button-primary:active{background:#0bb;border-color:#0bb;color:#fff}.wapk-button-primary:active>svg{fill:#fff}.wapk-button-primary:disabled{color:#c7d1d1!important;background:#2ff!important;border-color:#2ff!important;text-shadow:none!important}.wapk-button-primary:disabled>svg{fill:#c7d1d1!important}.wapk-button.hover{border-color:#0bb;color:#0bb}.wapk-button.hover>svg{fill:#0bb}.wapk-button.hover>.dashicons{color:#0bb}.wapk-button.focus{border-color:#00d4d4;color:#0bb;box-shadow:0 0 0 1px #00d4d4}.wapk-button.focus>svg{fill:#0bb}.wapk-button.focus>.dashicons{color:#0bb}.wapk-button.active{border-color:#0bb;color:#0bb;box-shadow:inset 0 2px 5px -3px #0bb}.wapk-button.active:focus{border-color:#0bb;color:#0bb;box-shadow:inset 0 2px 5px -3px #0bb}.wapk-button.active:focus>svg{fill:#0bb}.wapk-button.active:focus>.dashicons{color:#0bb}.wapk-button.active:hover{border-color:#0bb;color:#0bb;box-shadow:inset 0 2px 5px -3px #0bb}.wapk-button.active:hover>svg{fill:#0bb}.wapk-button.active:hover>.dashicons{color:#0bb}.wapk-button.active>svg{fill:#0bb}.wapk-button.active>.dashicons{color:#0bb}.wapk-button-primary.active{background:#00d4d4;color:#fff;border-color:#088;box-shadow:inset 0 2px 5px -3px #000}.wapk-button-primary.active:focus{background:#00d4d4;color:#fff;border-color:#088;box-shadow:inset 0 2px 5px -3px #000}.wapk-button-primary.active:focus>svg{fill:#fff}.wapk-button-primary.active:hover{background:#00d4d4;color:#fff;border-color:#088;box-shadow:inset 0 2px 5px -3px #000}.wapk-button-primary.active:hover>svg{fill:#fff}.wapk-button-primary.active>svg{fill:#fff}.wapk-button-primary[disabled]{color:#c7d1d1!important;background:#2ff!important;border-color:#2ff!important;text-shadow:none!important}.wapk-button-primary[disabled]>svg{fill:#c7d1d1!important}.wapk-button-primary.wapk-button-primary-disabled{color:#c7d1d1!important;background:#2ff!important;border-color:#2ff!important;text-shadow:none!important}.wapk-button-primary.wapk-button-primary-disabled>svg{fill:#c7d1d1!important}.wapk-button-primary.disabled{color:#c7d1d1!important;background:#2ff!important;border-color:#2ff!important;text-shadow:none!important}.wapk-button-primary.disabled>svg{fill:#c7d1d1!important}.wapk-button-primary.wapk-button-hero{box-shadow:0 2px 0 #0bb}.wapk-button-primary.wapk-button-hero:focus{box-shadow:0 2px 0 #0bb,0 1px 0 #00c5c5,0 0 2px 1px #0ee}.wapk-button-primary.wapk-button-hero:active{box-shadow:inset 0 3px 0 #00a1a1}.wapk-button-primary.wapk-button-hero.active{box-shadow:inset 0 3px 0 #00a1a1}.wapk-button-primary.wapk-button-hero.active:focus,.wapk-button-primary.wapk-button-hero.active:hover{box-shadow:inset 0 3px 0 #00a1a1}.wapk-button-group>.wapk-button.active{border-color:#00d4d4}.wapk-button.wapk-button-xl{height:30px;line-height:28px;padding:0 12px 2px}.wapk-button-group.wapk-button-xl .wapk-button{height:30px;line-height:28px;padding:0 12px 2px}.wapk-button.wapk-button-hero{font-size:18px;height:50px;line-height:48px;padding:0 36px;min-height:46px}.wapk-button-group.wapk-button-hero .wapk-button{font-size:18px;height:50px;line-height:48px;padding:0 36px;min-height:46px}@media screen and (min-width:782px){th#provider,th#status{width:80px}th#type{width:50px}th#option_name{width:100px}td.option_name.column-option_name>span:first-child{display:none}th#last_updated{width:90px}th#view{width:135px}}@media screen and (min-width:960px){th#provider,th#status{width:100px}th#type{width:80px}th#option_name{width:150px}th#last_updated{width:140px}}@media screen and (max-width:782px){table.wf-info-table{margin-top:10px}table.wf-info-table th:first-child img{margin:0 auto;display:block}.wapk-button.wapk-button-xl{padding:6px 14px;line-height:normal;font-size:14px;vertical-align:middle;height:auto;margin-bottom:4px}}.wapk-feed-docs .wapk-feed-cta{margin:0}.campaign_configurator{background:#fff;padding:20px 0}.campaign_configurator table{margin:0 auto;width:51%;min-width:574px;border:none;box-shadow:none}.campaign_configurator th{min-width:120px}@media screen and (max-width:782px){.campaign_configurator{padding:0}.campaign_configurator table{width:auto;min-width:auto;max-width:100%}.campaign_configurator th{min-width:auto}}#wf-tab-content-config td>input:not([type=checkbox]):not([type=radio]),#wf-tab-content-config td>select,#wf-tab-content-config td>textarea{width:100%!important}.woo-feed-filters td>div:nth-child(2n):not(.clear):not(.selectize):not(.counter){width:120px;display:block}.woo-feed-filters td>div:not(.clear){float:left;margin-right:10px}.woo-feed-filters tr>td:first-child{width:290px;padding-left:40px}.woo-feed-filters,.woo-feed-ftp{margin:15px auto 25px}.wf_clean_cache_wrapper{display:-ms-flexbox;display:flex;margin-left:auto}@-webkit-keyframes LoaderClockWise{from{-webkit-transform:rotate(0);transform:rotate(0)}to{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}@keyframes LoaderClockWise{from{-webkit-transform:rotate(0);transform:rotate(0)}to{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}.woo-feed-cache-loader{width:18px;margin-right:5px;animation:LoaderClockWise 1s linear infinite;-webkit-animation:LoaderClockWise 1s linear infinite;display:none}.woo-feed-table-heading .woo-feed-table-heading-title{float:left;margin-right:auto;display:inline-block;line-height:30px}.woo-feed-table-heading .wf_clean_cache_wrapper{float:right;font-weight:400}.wf_clean_cache_wrapper button{background:linear-gradient(125deg,#eb4d4b 0,#ff9671 140%);color:#fff;border:none;font-weight:500;display:inline-block;text-decoration:none;font-size:13px;line-height:2.15384615;min-height:30px;margin:0;padding:0 10px;border-radius:3px;cursor:pointer;outline:0}.wf_clean_cache_wrapper button:hover{background:#ff7979;color:#fff}input[type=submit][data-id=wf_action_submit]{background:linear-gradient(125deg,#3cb0fd 0,#6c5ce7 140%);color:#fff;border:1px;padding:0 20px}input[type=submit][data-id=wf_action_submit]:hover{background:linear-gradient(125deg,#3cb0fd 0,#6c5ce7 140%);color:#fff}.woo-import-popup-body #TB_window{width:500px!important}.woo-import-popup-body #TB_window #TB_title{border:none;background:#fff;text-align:center;display:-ms-flexbox;display:flex;-ms-flex-pack:center;justify-content:center;-ms-flex-align:center;align-items:center;height:35px!important}.woo-import-popup-body #TB_window #TB_title #TB_ajaxWindowTitle{color:#30336b;font-weight:700}.woo-import-popup-body #TB_window #TB_closeWindowButton{top:-14.5px;right:-14.5px;border:none;outline:0}.woo-import-popup-body #TB_window #TB_closeWindowButton .tb-close-icon{background:#ff5e55;color:#fff;border-radius:50%}.woo-import-popup-body #TB_window #TB_closeWindowButton:focus{outline:0;border:0}.woo-import-popup-body #TB_window #TB_ajaxContent{position:relative;width:100%!important;height:auto!important;border:none;box-sizing:border-box;overflow:hidden;background:#f7fcff;padding:30px 20px}.woo-import-popup-body #TB_window #TB_ajaxContent:before{content:"";width:115%;display:block;background:#4bcffa;position:absolute;height:130%;z-index:0;left:-36%;top:-85px;-webkit-transform:rotate(115deg);transform:rotate(115deg)}.woo-import-popup-body #TB_window #TB_ajaxContent table{border:none;position:relative;z-index:1;border-radius:3px;text-align:center;padding:20px;box-shadow:0 12px 20px -17px #000}.woo-import-popup-body #TB_window #TB_ajaxContent table input{width:60%}.woo-import-popup-body #TB_window #TB_ajaxContent table input:focus{outline:2px solid #68b8f7}.woo-import-popup-body #TB_window #TB_ajaxContent table input[type=file]{padding:3px 0;cursor:pointer}.woo-import-popup-body #TB_window #TB_ajaxContent table input[type=text]{border-radius:25px;font-size:14px;padding:1px 20px;text-align:center}.woo-import-popup-body #TB_window #TB_ajaxContent table input[type=submit]{background:#17c0eb;border-radius:25px;border:0;box-shadow:1px 4px 7px -3px #45364a;font-weight:600;transition:.3s ease}.woo-import-popup-body #TB_window #TB_ajaxContent table input[type=submit]:hover{-webkit-transform:translateY(-2px);transform:translateY(-2px)}.woo-feed-notice{position:relative}.woo-feed-notice .woo-feed-review-notice-logo{width:90px;height:90px;float:left;margin-right:5px;background:url(../images/woo-feed-logo.svg) no-repeat}.woo-feed-notice .woo-feed-review-btn-dismiss{display:-ms-flexbox;display:flex;-ms-flex-pack:center;justify-content:center;-ms-flex-line-pack:center;align-content:center;position:absolute;top:7px;right:7px;background:0 0;border:none;cursor:pointer}.woo-feed-notice .woo-feed-review-btn-dismiss span{line-height:18px}.woo-feed-notice .woo-feed-review-btn-dismiss:before{background:0 0;color:#787c82;content:"\f153";display:block;font:normal 16px/20px dashicons;speak:never;height:20px;text-align:center;width:20px;-webkit-font-smoothing:antialiased}.woo-feed-notice .woo-feed-review-btn-dismiss:hover:before{color:#d63638}.woo-feed-status-table-wrapper .woo-feed-status-table{width:100%;max-width:900px;border-collapse:collapse;border-spacing:.5rem;box-shadow:0 0 20px rgba(0,0,0,.1)}.woo-feed-status-table-wrapper .woo-feed-status-table tr:nth-child(even){background:#f1f1f1}.woo-feed-status-table-wrapper .woo-feed-status-table tr:nth-child(odd){background:#fafafc}.woo-feed-status-table-wrapper .woo-feed-status-table tr th{background:#353b48;color:#fff}.woo-feed-status-table-wrapper .woo-feed-status-table tr th.woo-feed-status-message-header{display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;-ms-flex-align:center;align-items:center}.woo-feed-status-table-wrapper .woo-feed-status-table tr th.woo-feed-status-message-header #woo-feed-copy-status-btn{background:linear-gradient(125deg,#3cb0fd 0,#6c5ce7 140%);border:none}.woo-feed-status-table-wrapper .woo-feed-status-table tr td,.woo-feed-status-table-wrapper .woo-feed-status-table tr th{padding:.5rem 20px;text-align:left}.woo-feed-status-table-wrapper .woo-feed-status-table tr td.woo-feed-status-page-btn-group{display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;-ms-flex-align:center;align-items:center}.woo-feed-status-table-wrapper .woo-feed-status-table tr td.woo-feed-status-page-btn-group .wf_clean_cache_wrapper{margin:initial}.woo-feed-status-table-wrapper .woo-feed-status-table tr td.woo-feed-status-page-btn-group button,.woo-feed-status-table-wrapper .woo-feed-status-table tr td.woo-feed-status-page-btn-group input[type=button]{height:38px;padding:0 30px;font-size:16px;font-weight:500;border:none;outline:0}input[id^=woo_feed_identifier_]{display:block;width:100%!important}#taxonomy-woo-feed-brand #newwoo-feed-brand_parent,.taxonomy-woo-feed-brand .form-field.term-parent-wrap{display:none}.wapk-admin .switch{position:relative;display:inline-block;width:55px;height:28px}.wapk-admin .switch input{opacity:0;width:0;height:0}.wapk-admin .slider{position:absolute;cursor:pointer;top:0;left:0;right:0;bottom:0;background-color:#ccc;transition:.4s}.wapk-admin .slider:before{position:absolute;content:"";height:20px;width:20px;left:4px;bottom:4px;background-color:#fff;transition:.4s}.wapk-admin input:checked+.slider{background:linear-gradient(125deg,#3cb0fd 0,#6c5ce7 140%)}.wapk-admin input:focus+.slider{box-shadow:0 0 1px #2196f3}.wapk-admin input:checked+.slider:before{-webkit-transform:translateX(26px);transform:translateX(26px)}.wapk-admin .slider.round{border-radius:34px}.wapk-admin .slider.round:before{border-radius:50%}span[id*=cat-map-]{cursor:pointer;position:relative;top:5px}
1
+ .wpf_spin{-webkit-animation:spin 1s infinite linear;animation:spin 1s infinite linear}.wpf_spin.reverse_spin{animation-direction:reverse}.wpf_regenerate.disabled{color:#737373;box-shadow:none;cursor:not-allowed}@-webkit-keyframes spin{0%{-webkit-transform:rotate(0);transform:rotate(0)}100%{-webkit-transform:rotate(359deg);transform:rotate(359deg)}}@keyframes spin{0%{-webkit-transform:rotate(0);transform:rotate(0)}100%{-webkit-transform:rotate(359deg);transform:rotate(359deg)}}.webappick-info{color:#42a5fa}.wfbtn{background:#3498db;background-image:linear-gradient(125deg,#3cb0fd 0,#152f8c 140%);border-radius:3px;box-shadow:inset 0 1px 3px #666;font-family:Arial,sans-serif;color:#fff;font-size:20px;padding:10px 20px 10px 20px;border:solid #2b698f 0;text-decoration:none}.wfbtn:hover{background:#3cb0fd;background-image:linear-gradient(to bottom,#3cb0fd,#3498db);text-decoration:none}.woo_feed_manage_list_table .wf_update_interval_btn{background:linear-gradient(125deg,#3cb0fd 0,#6c5ce7 140%);border:none}.woo_feed_manage_list_table .wf_update_interval_btn:hover{background:linear-gradient(125deg,#3cb0fd 0,#6c5ce7 140%)}.woo-feed-promotion{position:relative;display:none}.woo-feed-promotion .woo-feed-campaign-close-button{position:absolute;top:50%;-webkit-transform:translateY(-50%);transform:translateY(-50%);right:15px;width:24px;height:24px;border-radius:12px;background:#595d6b;line-height:24px;color:#fff;cursor:pointer;transition:.3s ease}.woo-feed-promotion .woo-feed-campaign-close-button:hover{background:#fff;color:#d61e48}.wftooltip{display:none;position:absolute;border:1px solid #333;background-color:#161616;border-radius:5px;padding:10px;color:#fff;font-size:12px}.feed-actions .makeFeedResponse{width:70%;color:green}.woo-feed-mapping-input{width:100%}.requiredIn{color:red}.generalInput{width:200px}.generalInput:not(.selectize-control){margin:5px auto}.error{color:red}.widefat td input,.widefat td select{max-width:100%}.woo-feed-btn-bg-gradient-blue,[data-class=woo-feed-btn-bg-gradient-blue]{background:linear-gradient(125deg,#3cb0fd 0,#6c5ce7 140%)!important;border:none;outline:0;border-width:0!important;box-shadow:none!important;transition:1s lenear;font-weight:500;color:#fff!important}.woo-feed-btn-bg-gradient-blue:hover,[data-class=woo-feed-btn-bg-gradient-blue]:hover{background:#3cb0fd!important}.woo-feed-btn-bg-gradient-red{background:linear-gradient(125deg,#eb4d4b 0,#ff9671 140%)!important;border:none;outline:0;border-width:0!important;box-shadow:none!important;transition:1s lenear;font-weight:500;color:#fff!important}.woo-feed-btn-bg-gradient-red:hover{background:#fc5c65!important}.woo-feed-btn-bg-gradient-purple{background:linear-gradient(67.36deg,#9733ee 3.09%,#da22ff 64.97%)!important;border:none;outline:0;border-width:0!important;box-shadow:none!important;transition:1s lenear;font-weight:500;color:#fff!important}.woo-feed-btn-bg-gradient-purple:hover{background:#a203fb!important}.woo-feed-light-btn-bg-gradient-blue{background:linear-gradient(125deg,#3cb0fd 0,#6c5ce7 140%)!important}#wf_newRow{margin-left:0}.mtable tbody tr{height:25px;border:1px solid #ccc;text-align:left;-ms-flex-align:baseline;align-items:baseline;font-weight:700}.mtable th:nth-child(1){width:17px}.mtable th:nth-child(2){width:160px}.mtable th:nth-child(3){width:100px}.mtable th:nth-child(4){width:100px}.mtable th:nth-child(5){width:150px}.mtable th:nth-child(6){width:100px}.mtable th:nth-child(7){width:150px}.mtable th:nth-child(8){width:90px}.mtable th:nth-child(9){width:29px}.mtable2 tbody tr{height:25px;border:1px solid #ccc;text-align:left;-ms-flex-align:baseline;align-items:baseline;font-weight:700}.mtable2 th:nth-child(1){width:30px}.mtable2 th:nth-child(2){width:150px}.mtable2 th:nth-child(3){width:230px}.mtable2 th:nth-child(4){width:220px}.mtable2 th:nth-child(7){width:50px}.mtable2 th:nth-child(8){width:50px}.mtable2 th:nth-child(9){width:29px}.wp-admin select.wf_mattributes{width:150px;left:0;height:25px}div#wf-tab-content1 select:not([name^=output_type]){width:100%}div#wf-tab-content1 input{width:100%}div#wf-tab-content1 .dashicons{vertical-align:middle}.wf_attributes{width:150px;left:0}.wf_compare{max-width:245px;left:0}.wf_ps{width:100px;left:0}.wf_sortedtable{cursor:move}.sorted_table{position:relative}.sorted_table .dragged{position:absolute;opacity:.8;z-index:9999;background:#fff;width:100%;display:table}.sorted_table tbody tr.placeholder td{border:1px dashed #2cc185;height:46px}.wfnoempty{width:120px}.woofeed-body-content #providerPage{display:-ms-flexbox;display:flex;-ms-flex-direction:column-reverse;flex-direction:column-reverse}#providerPageWrapper{display:-ms-flexbox;display:flex;-ms-flex-direction:column-reverse;flex-direction:column-reverse}#providerPageWrapper .wf_tabs{position:relative;margin:0 auto;width:100%;list-style:none}#providerPageWrapper .wf_tabs:after{display:table;clear:both;content:""}#providerPageWrapper .wf_tabs li{background:#fff;float:left;display:none;border:2px solid #ccc}#providerPageWrapper .wf_tabs li.active{display:block}#providerPageWrapper .wf_tabs li .wf-tab-content{z-index:2;width:100%;font-size:.9rem;display:block;left:0}#providerPageWrapper .wf_tabs li .wf-tab-content .feed-actions{border:none;border-top:2px solid #ccc}#providerPageWrapper #tabName{display:-ms-flexbox;display:flex;-ms-flex-pack:start;justify-content:flex-start;-ms-flex-align:start;align-items:flex-start}#providerPageWrapper #tabName .tab-name{min-width:300px;border:2px solid #ccc;border-bottom:none}#providerPageWrapper #tabName .tab-name input[type=radio]{display:none}#providerPageWrapper #tabName .tab-name label.activate{background:#2cc185;color:#fff}.wf-tab-name{display:block;padding:15px;font-size:15px;font-weight:700;line-height:1;background:#fff;cursor:pointer;position:relative;text-align:center;text-transform:uppercase;color:#2cc185}.wf-tab-name:hover{background:#2cc185;color:#fff}.wf_tabs [id^=tab]:checked+label{background:#2cc185;color:#fff}.wf_tabs [id^=tab]:checked~[id^=wf-tab-content]{display:block}div#wf-tab-content2 table:first-child{padding:10px 0}div#wf-tab-content2 table:first-child td:nth-child(1){width:260px}div#wf-tab-content2 table:first-child td:nth-child(2){width:260px}table.feed-actions tr td:last-child{text-align:right}select.selectize{display:none}body.no-js select.selectize{display:block!important}.wp-list-table .option_name .wf_feed_option_name_link{font-weight:700;color:#30336b}.wp-list-table #option_name a{color:#32373c}.selectize-dropdown .active{background-color:#edf9ff}.selectize-dropdown .create{padding:5px 8px}.wapk-selectize-item{background:#0073aa!important;color:#f1f1f1!important;border-color:#0073aa!important;padding-left:5px;padding-right:5px;border-radius:3px}.selectize-google-category .selectize-input{padding-right:30px}.selectize-google-category .selectize-dropdown-content{padding:0 8px}.selectize-google-category .selectize-dropdown-content .wapk-selectize-item{color:#000!important;background-color:#edf0f2!important;margin-bottom:3px!important;padding:3px 8px!important;transition-duration:.6s}.selectize-google-category .selectize-dropdown-content .wapk-selectize-item.active{background-color:#a2c8e1!important;transition-duration:.6s}.selectize-input.full #googleTaxonomyId-selectized{opacity:0;position:absolute;left:-10000px}.selectize-dropdown [data-selectable].option{cursor:default}.selectize-control.plugin-remove_button [data-value] .remove{border-left:1px solid #f1f1f1!important}.selectize-dropdown .optgroup-header{font-weight:700;background:#efefef;color:#5a5a5a}.selectize-dropdown [data-selectable].option{cursor:pointer}.wf_status_wrap label{width:55px;height:28px;box-sizing:border-box;float:left;border-radius:100px;position:relative;cursor:pointer;transition:.3s ease;background:linear-gradient(125deg,#e2e2e2 0,#ccc 140%)}input[class=woo_feed_status_input]:checked+label{background:linear-gradient(125deg,#3cb0fd 0,#6c5ce7 140%)}input[class=woo_feed_status_input]:checked+label:before{left:29px}.wf_status_wrap label:before{transition:.3s ease;content:"";width:20px;height:20px;position:absolute;background:#fff;left:6px;top:4px;box-sizing:border-box;color:#000;border-radius:100px;box-shadow:0 1.5px 2px 0 #000}.view span.dashicons.dashicons-external{color:#22a6b3}.view span.dashicons.dashicons-sos{color:#22a6b3}.view span.dashicons.dashicons-download{color:#ee5253}.view span.dashicons.dashicons-media-code{color:#576574}.column-url,.widefat td.column-url,.widefat th.column-url{color:#1e8f9a;font-weight:700}.feed-progress-container{width:100%;color:#fff;text-align:center;font-weight:300}.feed-progress-bar{width:100%;background:#eee;padding:3px;border-radius:50px;box-shadow:inset 0 1px 3px rgba(0,0,0,.2)}.feed-progress-bar-fill{height:20px;display:block;background:linear-gradient(to right top,#10ac84,#13b389,#15ba8f,#18c194,#1ac89a,#13cba1,#0acfa9,#00d2b0,#00d2ba,#00d2c3,#00d2cb,#00d2d3);width:0;border-radius:50px;transition:width .8s ease}.feed-progress-status{float:left;font-weight:700;color:#00008b}.feed-progress-percentage{text-align:right;font-weight:bolder;color:#1dd1a1;font-family:"Arial Black",sans-serif;font-size:large}#wpbody-content.woofeed-body-content{overflow:visible!important}.clippy{position:relative;width:13px;margin-top:-3px;margin-left:3px;top:3px}.column-url .clippy{display:none}.column-url:hover .clippy{display:inline-block}.tooltipped{position:relative}.tooltipped:after{position:absolute;z-index:1000000;display:none;padding:5px 8px;font:normal normal 11px/1.5 Helvetica,arial,nimbussansl,liberationsans,freesans,clean,sans-serif,"Segoe UI Emoji","Segoe UI Symbol";color:#fff;text-align:center;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-wrap:break-word;white-space:pre;pointer-events:none;content:attr(aria-label);background:rgba(0,0,0,.8);border-radius:3px;-webkit-font-smoothing:subpixel-antialiased}.tooltipped:before{position:absolute;z-index:1000001;display:none;width:0;height:0;color:rgba(0,0,0,.8);pointer-events:none;content:"";border:5px solid transparent}.tooltipped:hover:before{display:inline-block;text-decoration:none}.tooltipped:hover:after{display:inline-block;text-decoration:none}.tooltipped:active:before{display:inline-block;text-decoration:none}.tooltipped:active:after{display:inline-block;text-decoration:none}.tooltipped:focus:before{display:inline-block;text-decoration:none}.tooltipped:focus:after{display:inline-block;text-decoration:none}.tooltipped-multiline:hover:after{display:table-cell}.tooltipped-multiline:active:after{display:table-cell}.tooltipped-multiline:focus:after{display:table-cell}.tooltipped-multiline:after{width:-webkit-max-content;width:-moz-max-content;width:max-content;max-width:250px;word-break:break-word;word-wrap:normal;white-space:pre-line;border-collapse:separate}.tooltipped-s:after{top:100%;right:50%;margin-top:5px;-webkit-transform:translateX(50%);transform:translateX(50%)}.tooltipped-s:before{top:auto;right:50%;bottom:-5px;margin-right:-5px;border-bottom-color:rgba(0,0,0,.8)}.tooltipped-se:after{top:100%;margin-top:5px;right:auto;left:50%;margin-left:-15px}.tooltipped-se:before{top:auto;right:50%;bottom:-5px;margin-right:-5px;border-bottom-color:rgba(0,0,0,.8)}.tooltipped-sw:after{top:100%;right:50%;margin-top:5px;margin-right:-15px}.tooltipped-sw:before{top:auto;right:50%;bottom:-5px;margin-right:-5px;border-bottom-color:rgba(0,0,0,.8)}.tooltipped-n:after{right:50%;bottom:100%;margin-bottom:5px;-webkit-transform:translateX(50%);transform:translateX(50%)}.tooltipped-n:before{top:-5px;right:50%;bottom:auto;margin-right:-5px;border-top-color:rgba(0,0,0,.8)}.tooltipped-ne:after{bottom:100%;margin-bottom:5px;right:auto;left:50%;margin-left:-15px}.tooltipped-ne:before{top:-5px;right:50%;bottom:auto;margin-right:-5px;border-top-color:rgba(0,0,0,.8)}.tooltipped-nw:after{right:50%;bottom:100%;margin-bottom:5px;margin-right:-15px}.tooltipped-nw:before{top:-5px;right:50%;bottom:auto;margin-right:-5px;border-top-color:rgba(0,0,0,.8)}.tooltipped-w:after{right:100%;bottom:50%;margin-right:5px;-webkit-transform:translateY(50%);transform:translateY(50%)}.tooltipped-w:before{top:50%;bottom:50%;left:-5px;margin-top:-5px;border-left-color:rgba(0,0,0,.8)}.tooltipped-e:after{bottom:50%;left:100%;margin-left:5px;-webkit-transform:translateY(50%);transform:translateY(50%)}.tooltipped-e:before{top:50%;right:-5px;bottom:50%;margin-top:-5px;border-right-color:rgba(0,0,0,.8)}.tooltipped-multiline.tooltipped-s:after{right:auto;left:50%;-webkit-transform:translateX(-50%);transform:translateX(-50%)}.tooltipped-multiline.tooltipped-n:after{right:auto;left:50%;-webkit-transform:translateX(-50%);transform:translateX(-50%)}.tooltipped-multiline.tooltipped-w:after{right:100%}.tooltipped-multiline.tooltipped-e:after{right:100%}.tooltipped-sticky:before{display:inline-block}.tooltipped-sticky:after{display:inline-block}.tooltipped-sticky.tooltipped-multiline:after{display:table-cell}.fullscreen-overlay-enabled.dark-theme .tooltipped:after{color:#000;background:rgba(255,255,255,.8)}.fullscreen-overlay-enabled.dark-theme .tooltipped .tooltipped-s:before{border-bottom-color:rgba(255,255,255,.8)}.fullscreen-overlay-enabled.dark-theme .tooltipped .tooltipped-se:before{border-bottom-color:rgba(255,255,255,.8)}.fullscreen-overlay-enabled.dark-theme .tooltipped .tooltipped-sw:before{border-bottom-color:rgba(255,255,255,.8)}.fullscreen-overlay-enabled.dark-theme .tooltipped.tooltipped-n:before{border-top-color:rgba(255,255,255,.8)}.fullscreen-overlay-enabled.dark-theme .tooltipped.tooltipped-ne:before{border-top-color:rgba(255,255,255,.8)}.fullscreen-overlay-enabled.dark-theme .tooltipped.tooltipped-nw:before{border-top-color:rgba(255,255,255,.8)}.fullscreen-overlay-enabled.dark-theme .tooltipped.tooltipped-e:before{border-right-color:rgba(255,255,255,.8)}.fullscreen-overlay-enabled.dark-theme .tooltipped.tooltipped-w:before{border-left-color:rgba(255,255,255,.8)}@media screen and (min-width:0\0){.tooltipped-multiline:after{width:250px}}ul.tracker_collection_list{list-style:initial;padding:initial;margin:-10px 0 0 30px;font-size:11px!important}ul.tracker_collection_list li{margin:0}table.wf-info-table,table.wf-rate-table{vertical-align:middle;text-align:center;max-width:100%;font-weight:500;margin-top:10px}table.wf-info-table th,table.wf-rate-table th{text-align:center}table.wf-info-table th .woo-feed-top-header,table.wf-rate-table th .woo-feed-top-header{display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;-ms-flex-align:center;align-items:center}table.wf-info-table th .woo-feed-top-header .get-woo-feed-pro,table.wf-rate-table th .woo-feed-top-header .get-woo-feed-pro{margin-left:20px}table.wf-info-table th .woo-feed-top-header .get-woo-feed-pro img,table.wf-rate-table th .woo-feed-top-header .get-woo-feed-pro img{width:172px}table.wf-info-table th .woo-feed-top-header .woo-feed-top-buttons,table.wf-rate-table th .woo-feed-top-header .woo-feed-top-buttons{float:right;display:-ms-flexbox;display:flex;border-radius:7px;-ms-flex-pack:center;justify-content:center;-ms-flex-align:center;align-items:center}table.wf-info-table th .woo-feed-top-header .woo-feed-top-buttons a,table.wf-rate-table th .woo-feed-top-header .woo-feed-top-buttons a{padding:8px 20px;background:#576574;color:#fff;box-sizing:border-box;display:inline-block;transition:.3s ease}table.wf-info-table th .woo-feed-top-header .woo-feed-top-buttons a.woo-feed-doc-link,table.wf-rate-table th .woo-feed-top-header .woo-feed-top-buttons a.woo-feed-doc-link{background:#576574;border-top-left-radius:5px;border-bottom-left-radius:5px}table.wf-info-table th .woo-feed-top-header .woo-feed-top-buttons a.woo-feed-video-link,table.wf-rate-table th .woo-feed-top-header .woo-feed-top-buttons a.woo-feed-video-link{background:#ee5253}table.wf-info-table th .woo-feed-top-header .woo-feed-top-buttons a.woo-feed-support-link,table.wf-rate-table th .woo-feed-top-header .woo-feed-top-buttons a.woo-feed-support-link{background:#22a6b3;border-top-right-radius:5px;border-bottom-right-radius:5px}table.wf-info-table th .woo-feed-top-header .woo-feed-top-buttons a span.dashicons,table.wf-rate-table th .woo-feed-top-header .woo-feed-top-buttons a span.dashicons{font-size:18px;line-height:1.2}table.wf-info-table th .woo-feed-top-header .woo-feed-top-buttons a:hover,table.wf-rate-table th .woo-feed-top-header .woo-feed-top-buttons a:hover{background:#30336b;box-shadow:0 0 33px 0 rgba(0,0,0,.12)}table.wf-info-table strong,table.wf-rate-table strong{font-weight:700}table.wf-info-table th:first-child img{margin:0 0 -5px 5px}table.wf-rate-table a{color:#0073aa}table.wf-rate-table a.review-star:after{content:"\f155\f155\f155\f155\f155"!important;font-family:dashicons;font-size:10px;font-weight:100;text-rendering:auto;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:#0073aa;text-decoration:underline}#adminmenu #toplevel_page_webappick-manage-feeds div.wp-menu-image::before{content:"";background:url(../images/woo-feed-icon.svg) no-repeat center center;background-size:20px 20px;opacity:.6}#adminmenu #toplevel_page_webappick-manage-feeds:hover div.wp-menu-image::before{opacity:1}#adminmenu #toplevel_page_webappick-manage-feeds.wp-has-current-submenu div.wp-menu-image::before{opacity:1}.wapk-admin,.wapk-admin *{box-sizing:border-box}.wapk-admin{position:relative;display:block;-webkit-hyphens:manual;-ms-hyphens:manual;-moz-hyphens:manual;hyphens:manual;color:#1b2730;margin:0 0 0 -10px}@media screen and (min-width:783px){.wapk-admin{margin:0 0 0 -20px}}.text-center{text-align:center}.wapk-admin h1,.wapk-admin h2,.wapk-admin h3,.wapk-admin h4,.wapk-admin h5,.wapk-admin h6,.wapk-admin p{color:#1b2730}.wapk-admin sup{vertical-align:baseline;position:relative;top:-6px}.wapk-admin sub{vertical-align:baseline;position:relative;top:4px}.wapk-admin .wapk-section{margin:10px 20px 0 22px;position:relative;display:block}.wapk-admin .wapk-section [class$=icon32]+h2{font-size:23px;font-weight:400;margin:0;padding:9px 0 4px 0;line-height:1.3}.wapk-admin .wapk-section h1{font-size:23px;font-weight:400;margin:0;padding:9px 0 4px 0;line-height:1.3}.wapk-admin .wapk-section>h2:first-child{font-size:23px;font-weight:400;margin:0;padding:9px 0 4px 0;line-height:1.3}.wapk-admin>.notice{margin:10px 20px 0 22px;position:relative;display:block}.wapk-admin span.help{display:block;float:left;width:100%;font-size:.9em;color:#636363;margin-top:5px;font-weight:500}.wapk-admin span.help .dashicons{width:11px;height:12px;font-size:inherit;vertical-align:middle}.clear:after{content:"";display:table;clear:both}.wapk-feed-docs .postbox{width:355px;margin-right:20px;display:inline-block;vertical-align:top}.wapk-feed-docs .postbox .hndle{font-size:14px;padding:8px 12px;margin:0;line-height:1.4;cursor:pointer}.wapk-feed-docs .postbox .dashicons{color:#ccc}.wapk-feed-docs .postbox a{text-decoration:none}.wapk-feed-docs .postbox .inside{margin-bottom:0}.wapk-feed-docs .postbox ul{margin-bottom:0}.wapk-feed-docs .postbox .toggle-indicator:before{content:"\f142";display:inline-block;font:400 20px/1 dashicons;speak:none;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-decoration:none!important}.wapk-feed-docs .postbox li{width:100%;display:block;float:left}.wapk-feed-docs .postbox li span{display:inline-block;float:left;margin-right:4px}.wapk-feed-docs .postbox li a{display:inline-block;float:left;width:calc(100% - 24px)}.wapk-feed-docs .postbox.closed .toggle-indicator:before{content:"\f140"}.wapk-section #post-body.columns-2 #side-sortables{min-height:196px}#poststuff #feed_merchant_info .inside{margin:0;padding:0}#feed_merchant_info ul.data{margin-left:24px;margin-top:5px}#feed_merchant_info ul.data li{margin-bottom:5px}.merchant-info-section{padding:6px 10px 8px}.merchant-info-section.woo-feed-open-file{text-align:center}.merchant-info-section.woo-feed-open-file a{line-height:1.5;text-decoration:none}.generateFeed .wf-tab-content table:first-child{border:none;box-shadow:none}.generateFeed table th{font-weight:700}@media only screen and (max-width:850px){.wapk-feed-docs .postbox{display:block;width:auto;float:none;margin-right:auto}}.wp-submenu li span.woo-feed-docs{font-weight:700;color:#f18500}.wp-submenu li:hover span.woo-feed-docs{color:#ce7304}.wp-submenu li.current span.woo-feed-docs{color:#ce7304}.wapk-admin .wapk-feed-docs .postbox .hndle{cursor:default}.wapk-cta{position:relative;display:-ms-flexbox;display:flex;width:100%;padding:100px 15px;background:linear-gradient(45deg,#6cd5ff 33%,#c2efef 100%);-ms-flex-pack:center;justify-content:center;-ms-flex-align:center;align-items:center}.wapk-cta-icon .dashicons{font-size:100px;width:100px;height:auto;margin:0 10px -8px 0;color:#02658c}.wapk-cta-content{width:50%}.wapk-cta-content h2{font-size:2em;margin:.5em 0}.wapk-cta-action a.wapk-button{font-size:24px;height:auto!important;padding:10px 20px}@media (max-width:600px){.wapk-cta{display:block;text-align:center;padding:4em 0}.wapk-cta-content{width:100%;margin:2em 0}}.wapk-button{color:#00d4d4;border-color:#00d4d4;display:inline-block;text-decoration:none;font-size:13px;line-height:2.15384615;min-height:30px;margin:0;padding:0 10px;cursor:pointer;border-width:1px;border-style:solid;-webkit-appearance:none;border-radius:3px;white-space:nowrap;box-sizing:border-box}.wapk-button>svg{width:15px;margin-left:5px;fill:#00d4d4}.wapk-button>.dashicons{color:#00d4d4}.wapk-button:hover{border-color:#0bb;color:#0bb}.wapk-button:hover>svg{fill:#0bb}.wapk-button:hover>.dashicons{color:#0bb}.wapk-button:focus{border-color:#00d4d4;color:#0bb;box-shadow:0 0 0 1px #00d4d4}.wapk-button:focus>svg{fill:#0bb}.wapk-button:focus>.dashicons{color:#0bb}.wapk-button:active{background:#0bb;border-color:#0bb}.wapk-button-secondary{color:#00d4d4;border-color:#00d4d4;display:inline-block;text-decoration:none;font-size:13px;line-height:2.15384615;min-height:30px;margin:0;padding:0 10px;cursor:pointer;border-width:1px;border-style:solid;-webkit-appearance:none;border-radius:3px;white-space:nowrap;box-sizing:border-box}.wapk-button-secondary>svg{width:15px;margin-left:5px;fill:#00d4d4}.wapk-button-secondary>.dashicons{color:#00d4d4}.wapk-button-secondary:hover{border-color:#0bb;color:#0bb}.wapk-button-secondary:hover>svg{fill:#0bb}.wapk-button-secondary:hover>.dashicons{color:#0bb}.wapk-button-secondary:focus{border-color:#00d4d4;color:#0bb;box-shadow:0 0 0 1px #00d4d4}.wapk-button-secondary:focus>svg{fill:#0bb}.wapk-button-secondary:focus>.dashicons{color:#0bb}.wapk-button-primary{display:inline-block;text-decoration:none;font-size:13px;line-height:2.15384615;min-height:30px;margin:0;padding:0 10px;cursor:pointer;border-width:1px;border-style:solid;-webkit-appearance:none;border-radius:3px;white-space:nowrap;box-sizing:border-box;background:#00d4d4;border-color:#00d4d4;color:#fff;box-shadow:0 1px 0 #0bb;text-shadow:0 -1px 1px #0bb,1px 0 1px #0bb,0 1px 1px #0bb,-1px 0 1px #0bb}.wapk-button-primary>svg{fill:#fff}.wapk-button-primary:hover{background:#00e3e3;border-color:#00c5c5;color:#fff}.wapk-button-primary:hover>svg{fill:#fff}.wapk-button-primary:focus{background:#00e3e3;border-color:#00c5c5;color:#fff;box-shadow:0 0 0 1px #fff,0 0 0 3px #00d4d4}.wapk-button-primary:focus>svg{fill:#fff}.wapk-button-primary:active{background:#0bb;border-color:#0bb;color:#fff}.wapk-button-primary:active>svg{fill:#fff}.wapk-button-primary:disabled{color:#c7d1d1!important;background:#2ff!important;border-color:#2ff!important;text-shadow:none!important}.wapk-button-primary:disabled>svg{fill:#c7d1d1!important}.wapk-button.hover{border-color:#0bb;color:#0bb}.wapk-button.hover>svg{fill:#0bb}.wapk-button.hover>.dashicons{color:#0bb}.wapk-button.focus{border-color:#00d4d4;color:#0bb;box-shadow:0 0 0 1px #00d4d4}.wapk-button.focus>svg{fill:#0bb}.wapk-button.focus>.dashicons{color:#0bb}.wapk-button.active{border-color:#0bb;color:#0bb;box-shadow:inset 0 2px 5px -3px #0bb}.wapk-button.active:focus{border-color:#0bb;color:#0bb;box-shadow:inset 0 2px 5px -3px #0bb}.wapk-button.active:focus>svg{fill:#0bb}.wapk-button.active:focus>.dashicons{color:#0bb}.wapk-button.active:hover{border-color:#0bb;color:#0bb;box-shadow:inset 0 2px 5px -3px #0bb}.wapk-button.active:hover>svg{fill:#0bb}.wapk-button.active:hover>.dashicons{color:#0bb}.wapk-button.active>svg{fill:#0bb}.wapk-button.active>.dashicons{color:#0bb}.wapk-button-primary.active{background:#00d4d4;color:#fff;border-color:#088;box-shadow:inset 0 2px 5px -3px #000}.wapk-button-primary.active:focus{background:#00d4d4;color:#fff;border-color:#088;box-shadow:inset 0 2px 5px -3px #000}.wapk-button-primary.active:focus>svg{fill:#fff}.wapk-button-primary.active:hover{background:#00d4d4;color:#fff;border-color:#088;box-shadow:inset 0 2px 5px -3px #000}.wapk-button-primary.active:hover>svg{fill:#fff}.wapk-button-primary.active>svg{fill:#fff}.wapk-button-primary[disabled]{color:#c7d1d1!important;background:#2ff!important;border-color:#2ff!important;text-shadow:none!important}.wapk-button-primary[disabled]>svg{fill:#c7d1d1!important}.wapk-button-primary.wapk-button-primary-disabled{color:#c7d1d1!important;background:#2ff!important;border-color:#2ff!important;text-shadow:none!important}.wapk-button-primary.wapk-button-primary-disabled>svg{fill:#c7d1d1!important}.wapk-button-primary.disabled{color:#c7d1d1!important;background:#2ff!important;border-color:#2ff!important;text-shadow:none!important}.wapk-button-primary.disabled>svg{fill:#c7d1d1!important}.wapk-button-primary.wapk-button-hero{box-shadow:0 2px 0 #0bb}.wapk-button-primary.wapk-button-hero:focus{box-shadow:0 2px 0 #0bb,0 1px 0 #00c5c5,0 0 2px 1px #0ee}.wapk-button-primary.wapk-button-hero:active{box-shadow:inset 0 3px 0 #00a1a1}.wapk-button-primary.wapk-button-hero.active{box-shadow:inset 0 3px 0 #00a1a1}.wapk-button-primary.wapk-button-hero.active:focus,.wapk-button-primary.wapk-button-hero.active:hover{box-shadow:inset 0 3px 0 #00a1a1}.wapk-button-group>.wapk-button.active{border-color:#00d4d4}.wapk-button.wapk-button-xl{height:30px;line-height:28px;padding:0 12px 2px}.wapk-button-group.wapk-button-xl .wapk-button{height:30px;line-height:28px;padding:0 12px 2px}.wapk-button.wapk-button-hero{font-size:18px;height:50px;line-height:48px;padding:0 36px;min-height:46px}.wapk-button-group.wapk-button-hero .wapk-button{font-size:18px;height:50px;line-height:48px;padding:0 36px;min-height:46px}@media screen and (min-width:782px){th#provider,th#status{width:80px}th#type{width:50px}th#option_name{width:100px}td.option_name.column-option_name>span:first-child{display:none}th#last_updated{width:90px}th#view{width:135px}}@media screen and (min-width:960px){th#provider,th#status{width:100px}th#type{width:80px}th#option_name{width:150px}th#last_updated{width:140px}}@media screen and (max-width:782px){table.wf-info-table{margin-top:10px}table.wf-info-table th:first-child img{margin:0 auto;display:block}.wapk-button.wapk-button-xl{padding:6px 14px;line-height:normal;font-size:14px;vertical-align:middle;height:auto;margin-bottom:4px}}.wapk-feed-docs .wapk-feed-cta{margin:0}.campaign_configurator{background:#fff;padding:20px 0}.campaign_configurator table{margin:0 auto;width:51%;min-width:574px;border:none;box-shadow:none}.campaign_configurator th{min-width:120px}@media screen and (max-width:782px){.campaign_configurator{padding:0}.campaign_configurator table{width:auto;min-width:auto;max-width:100%}.campaign_configurator th{min-width:auto}}#wf-tab-content-config td>input:not([type=checkbox]):not([type=radio]),#wf-tab-content-config td>select,#wf-tab-content-config td>textarea{width:100%!important}.woo-feed-filters td>div:nth-child(2n):not(.clear):not(.selectize):not(.counter){width:120px;display:block}.woo-feed-filters td>div:not(.clear){float:left;margin-right:10px}.woo-feed-filters tr>td:first-child{width:290px;padding-left:40px}.woo-feed-filters,.woo-feed-ftp{margin:15px auto 25px}.wf_clean_cache_wrapper{display:-ms-flexbox;display:flex;margin-left:auto}@-webkit-keyframes LoaderClockWise{from{-webkit-transform:rotate(0);transform:rotate(0)}to{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}@keyframes LoaderClockWise{from{-webkit-transform:rotate(0);transform:rotate(0)}to{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}.woo-feed-cache-loader{width:18px;margin-right:5px;animation:LoaderClockWise 1s linear infinite;-webkit-animation:LoaderClockWise 1s linear infinite;display:none}.woo-feed-table-heading .woo-feed-table-heading-title{float:left;margin-right:auto;display:inline-block;line-height:30px}.woo-feed-table-heading .wf_clean_cache_wrapper{float:right;font-weight:400}.wf_clean_cache_wrapper button{background:linear-gradient(125deg,#eb4d4b 0,#ff9671 140%);color:#fff;border:none;font-weight:500;display:inline-block;text-decoration:none;font-size:13px;line-height:2.15384615;min-height:30px;margin:0;padding:0 10px;border-radius:3px;cursor:pointer;outline:0}.wf_clean_cache_wrapper button:hover{background:#ff7979;color:#fff}input[type=submit][data-id=wf_action_submit]{background:linear-gradient(125deg,#3cb0fd 0,#6c5ce7 140%);color:#fff;border:1px;padding:0 20px}input[type=submit][data-id=wf_action_submit]:hover{background:linear-gradient(125deg,#3cb0fd 0,#6c5ce7 140%);color:#fff}.woo-import-popup-body #TB_window{width:500px!important}.woo-import-popup-body #TB_window #TB_title{border:none;background:#fff;text-align:center;display:-ms-flexbox;display:flex;-ms-flex-pack:center;justify-content:center;-ms-flex-align:center;align-items:center;height:35px!important}.woo-import-popup-body #TB_window #TB_title #TB_ajaxWindowTitle{color:#30336b;font-weight:700}.woo-import-popup-body #TB_window #TB_closeWindowButton{top:-14.5px;right:-14.5px;border:none;outline:0}.woo-import-popup-body #TB_window #TB_closeWindowButton .tb-close-icon{background:#ff5e55;color:#fff;border-radius:50%}.woo-import-popup-body #TB_window #TB_closeWindowButton:focus{outline:0;border:0}.woo-import-popup-body #TB_window #TB_ajaxContent{position:relative;width:100%!important;height:auto!important;border:none;box-sizing:border-box;overflow:hidden;background:#f7fcff;padding:30px 20px}.woo-import-popup-body #TB_window #TB_ajaxContent:before{content:"";width:115%;display:block;background:#4bcffa;position:absolute;height:130%;z-index:0;left:-36%;top:-85px;-webkit-transform:rotate(115deg);transform:rotate(115deg)}.woo-import-popup-body #TB_window #TB_ajaxContent table{border:none;position:relative;z-index:1;border-radius:3px;text-align:center;padding:20px;box-shadow:0 12px 20px -17px #000}.woo-import-popup-body #TB_window #TB_ajaxContent table input{width:60%}.woo-import-popup-body #TB_window #TB_ajaxContent table input:focus{outline:2px solid #68b8f7}.woo-import-popup-body #TB_window #TB_ajaxContent table input[type=file]{padding:3px 0;cursor:pointer}.woo-import-popup-body #TB_window #TB_ajaxContent table input[type=text]{border-radius:25px;font-size:14px;padding:1px 20px;text-align:center}.woo-import-popup-body #TB_window #TB_ajaxContent table input[type=submit]{background:#17c0eb;border-radius:25px;border:0;box-shadow:1px 4px 7px -3px #45364a;font-weight:600;transition:.3s ease}.woo-import-popup-body #TB_window #TB_ajaxContent table input[type=submit]:hover{-webkit-transform:translateY(-2px);transform:translateY(-2px)}.woo-feed-notice{position:relative}.woo-feed-notice .woo-feed-review-notice-logo{width:90px;height:90px;float:left;margin-right:5px;background:url(../images/woo-feed-logo.svg) no-repeat}.woo-feed-notice .woo-feed-review-btn-dismiss{display:-ms-flexbox;display:flex;-ms-flex-pack:center;justify-content:center;-ms-flex-line-pack:center;align-content:center;position:absolute;top:7px;right:7px;background:0 0;border:none;cursor:pointer}.woo-feed-notice .woo-feed-review-btn-dismiss span{line-height:18px}.woo-feed-notice .woo-feed-review-btn-dismiss:before{background:0 0;color:#787c82;content:"\f153";display:block;font:normal 16px/20px dashicons;speak:never;height:20px;text-align:center;width:20px;-webkit-font-smoothing:antialiased}.woo-feed-notice .woo-feed-review-btn-dismiss:hover:before{color:#d63638}.woo-feed-status-table-wrapper .woo-feed-status-table{width:100%;max-width:900px;border-collapse:collapse;border-spacing:.5rem;box-shadow:0 0 20px rgba(0,0,0,.1)}.woo-feed-status-table-wrapper .woo-feed-status-table tr:nth-child(even){background:#f1f1f1}.woo-feed-status-table-wrapper .woo-feed-status-table tr:nth-child(odd){background:#fafafc}.woo-feed-status-table-wrapper .woo-feed-status-table tr th{background:#353b48;color:#fff}.woo-feed-status-table-wrapper .woo-feed-status-table tr th.woo-feed-status-message-header{display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;-ms-flex-align:center;align-items:center}.woo-feed-status-table-wrapper .woo-feed-status-table tr th.woo-feed-status-message-header #woo-feed-copy-status-btn{background:linear-gradient(125deg,#3cb0fd 0,#6c5ce7 140%);border:none}.woo-feed-status-table-wrapper .woo-feed-status-table tr td,.woo-feed-status-table-wrapper .woo-feed-status-table tr th{padding:.5rem 20px;text-align:left}.woo-feed-status-table-wrapper .woo-feed-status-table tr td.woo-feed-status-page-btn-group{display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;-ms-flex-align:center;align-items:center}.woo-feed-status-table-wrapper .woo-feed-status-table tr td.woo-feed-status-page-btn-group .wf_clean_cache_wrapper{margin:initial}.woo-feed-status-table-wrapper .woo-feed-status-table tr td.woo-feed-status-page-btn-group button,.woo-feed-status-table-wrapper .woo-feed-status-table tr td.woo-feed-status-page-btn-group input[type=button]{height:38px;padding:0 30px;font-size:16px;font-weight:500;border:none;outline:0}input[id^=woo_feed_identifier_]{display:block;width:100%!important}#taxonomy-woo-feed-brand #newwoo-feed-brand_parent,.taxonomy-woo-feed-brand .form-field.term-parent-wrap{display:none}.wapk-admin .switch{position:relative;display:inline-block;width:55px;height:28px}.wapk-admin .switch input{opacity:0;width:0;height:0}.wapk-admin .slider{position:absolute;cursor:pointer;top:0;left:0;right:0;bottom:0;background-color:#ccc;transition:.4s}.wapk-admin .slider:before{position:absolute;content:"";height:20px;width:20px;left:4px;bottom:4px;background-color:#fff;transition:.4s}.wapk-admin input:checked+.slider{background:linear-gradient(125deg,#3cb0fd 0,#6c5ce7 140%)}.wapk-admin input:focus+.slider{box-shadow:0 0 1px #2196f3}.wapk-admin input:checked+.slider:before{-webkit-transform:translateX(26px);transform:translateX(26px)}.wapk-admin .slider.round{border-radius:34px}.wapk-admin .slider.round:before{border-radius:50%}span[id*=cat-map-]{cursor:pointer;position:relative;top:5px}
admin/css/woo-feed-admin.scss CHANGED
@@ -376,6 +376,7 @@ div#wf-tab-content1 {
376
  z-index: 2;
377
  width: 100%;
378
  font-size: 0.9rem;
 
379
  //position: absolute;
380
  left: 0;
381
 
376
  z-index: 2;
377
  width: 100%;
378
  font-size: 0.9rem;
379
+ display: block;
380
  //position: absolute;
381
  left: 0;
382
 
admin/js/woo-feed-google-remarketing.js ADDED
@@ -0,0 +1,20 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ (function($, wp) {
2
+
3
+ "use strict";
4
+ $(document).ready(function(){
5
+ if( typeof gtag === "function" ){
6
+ $(this.body).on( 'added_to_cart', function( event, fragments, cart_hash, button ){
7
+ var product_id = button.data('product_id');
8
+ wp.ajax.post('add_to_cart_google_remarketing', {product_id: product_id})
9
+ .done(function(response){
10
+ response = JSON.parse( response );
11
+ gtag( 'event', 'add_to_cart', response );
12
+ })
13
+ .fail(function (){
14
+ console.log( "Request Failed!" );
15
+ });
16
+ } );
17
+ }
18
+ });
19
+
20
+ })(jQuery, wp);
admin/js/woo-feed-google-remarketing.min.js ADDED
@@ -0,0 +1,2 @@
 
 
1
+ "use strict";!function(t,d){t(document).ready(function(){"function"==typeof gtag&&t(this.body).on("added_to_cart",function(t,o,n,a){a=a.data("product_id");d.ajax.post("add_to_cart_google_remarketing",{product_id:a}).done(function(t){t=JSON.parse(t),gtag("event","add_to_cart",t)}).fail(function(){console.log("Request Failed!")})})})}(jQuery,wp);
2
+ //# sourceMappingURL=woo-feed-google-remarketing.min.js.map
admin/js/woo-feed-google-remarketing.min.js.map ADDED
@@ -0,0 +1 @@
 
1
+ {"version":3,"sources":["woo-feed-google-remarketing.js"],"names":["$","wp","document","ready","gtag","body","on","event","fragments","cart_hash","product_id","button","data","post","response","JSON","parse","fail","console","jQuery"],"mappings":"cAAA,SAACA,EAAAC,GAEGD,EAAAE,UAAAC,MAAA,WAEQ,mBAAAC,MADPJ,EAAAA,KAAWG,MAAZE,GAAkBC,gBAAA,SAAUC,EAAAA,EAAAC,EAAAC,GACbL,EAAPM,EAAgBC,KAAYC,cACrBP,EAAAA,KAAMC,KAAIO,iCAAA,CAAkCL,WAAAA,IAAAA,KAC3CE,SAAaC,GACJG,EAAAA,KAAAC,MAAAC,GAA+CN,KAAAA,QAAAA,cAAAA,KAClDO,KACSF,WACIG,QAAAA,IAAA,yBAVvC,CAGIC,OAAAlB","file":"woo-feed-google-remarketing.min.js","sourcesContent":["(function($, wp) {\n\n \"use strict\";\n $(document).ready(function(){\n if( typeof gtag === \"function\" ){\n $(this.body).on( 'added_to_cart', function( event, fragments, cart_hash, button ){\n var product_id = button.data('product_id');\n wp.ajax.post('add_to_cart_google_remarketing', {product_id: product_id})\n .done(function(response){\n response = JSON.parse( response );\n gtag( 'event', 'add_to_cart', response );\n })\n .fail(function (){\n console.log( \"Request Failed!\" );\n });\n } );\n }\n });\n\n})(jQuery, wp);"]}
admin/partials/woo-feed-settings.php CHANGED
@@ -122,6 +122,8 @@ $settings = woo_feed_get_options( 'all' );
122
  <p class="description"><?php esc_html_e( 'Turn off when you don\'t want to override default WooCommerce Product Schema', 'woo-feed' ); ?></p>
123
  </td>
124
  </tr>
 
 
125
  <tr>
126
  <td><label for="disable_pixel"><?php esc_html_e( 'Disable/Enable Facebook Pixel', 'woo-feed' ); ?></label></td>
127
  <td>
@@ -141,6 +143,35 @@ $settings = woo_feed_get_options( 'all' );
141
  <p class="description"><?php esc_html_e( 'Insert your Facebook Pixel ID', 'woo-feed' ); ?></p>
142
  </td>
143
  </tr>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
144
  <tr>
145
  <th scope="row"><label for="allow_all_shipping"><?php esc_html_e( 'Add Shipping/Tax info for all countries to feed (Google Shopping)', 'woo-feed' ); ?></label></th>
146
  <td>
122
  <p class="description"><?php esc_html_e( 'Turn off when you don\'t want to override default WooCommerce Product Schema', 'woo-feed' ); ?></p>
123
  </td>
124
  </tr>
125
+
126
+ <!-- Facebook Pixel settings-->
127
  <tr>
128
  <td><label for="disable_pixel"><?php esc_html_e( 'Disable/Enable Facebook Pixel', 'woo-feed' ); ?></label></td>
129
  <td>
143
  <p class="description"><?php esc_html_e( 'Insert your Facebook Pixel ID', 'woo-feed' ); ?></p>
144
  </td>
145
  </tr>
146
+
147
+ <!-- Google Remarketing settings-->
148
+ <tr>
149
+ <td><label for="disable_remarketing"><?php esc_html_e( 'Disable/Enable Google Remarketing', 'woo-feed' ); ?></label></td>
150
+ <td>
151
+ <label for="disable_pixel">
152
+ <select name="disable_remarketing" id="disable_remarketing">
153
+ <option value="disable"<?php selected( $settings['disable_remarketing'], 'disable' ); ?>><?php esc_html_e( 'Disabled', 'woo-feed' ); ?></option>
154
+ <option value="enable"<?php selected( $settings['disable_remarketing'], 'enable' ); ?>><?php esc_html_e( 'Enabled', 'woo-feed' ); ?></option>
155
+ </select>
156
+ </label>
157
+ <p class="description"><?php esc_html_e( 'Disables or Enables Google Remarketing', 'woo-feed' ); ?></p>
158
+ </td>
159
+ </tr>
160
+ <tr>
161
+ <th scope="row"><label for="remarketing_id"><?php esc_html_e( 'Google Remarketing ID', 'woo-feed' ); ?></label></th>
162
+ <td>
163
+ <input class="regular-text" type="text" name="remarketing_id" id="remarketing_id" value="<?php echo esc_attr( $settings['remarketing_id'] ); ?>">
164
+ <p class="description"><?php esc_html_e( 'Insert your Google Remarketing ID', 'woo-feed' ); ?></p>
165
+ </td>
166
+ </tr>
167
+ <tr>
168
+ <th scope="row"><label for="remarketing_label"><?php esc_html_e( 'Google Remarketing Label', 'woo-feed' ); ?></label></th>
169
+ <td>
170
+ <input class="regular-text" type="text" name="remarketing_label" id="remarketing_label" value="<?php echo esc_attr( $settings['remarketing_label'] ); ?>">
171
+ <p class="description"><?php esc_html_e( 'Insert your Google Remarketing Label', 'woo-feed' ); ?></p>
172
+ </td>
173
+ </tr>
174
+
175
  <tr>
176
  <th scope="row"><label for="allow_all_shipping"><?php esc_html_e( 'Add Shipping/Tax info for all countries to feed (Google Shopping)', 'woo-feed' ); ?></label></th>
177
  <td>
includes/Tracker/Base.php ADDED
@@ -0,0 +1,79 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * Base class for tracking WooCommerce
4
+ *
5
+ * @since 4.4.34
6
+ */
7
+ namespace WebAppick\Feed\Tracker;
8
+
9
+ abstract Class Base{
10
+
11
+ /**
12
+ * If the current instance is active or not.
13
+ * @var bool $active
14
+ *
15
+ * @since 4.4.34
16
+ */
17
+ protected $active = false;
18
+
19
+ /**
20
+ * Corresponding ID of the tracker
21
+ * @var string $id
22
+ *
23
+ * @since 4.4.34
24
+ */
25
+ protected $id = '';
26
+
27
+ /*
28
+ * Settings store
29
+ * @var array $settings
30
+ */
31
+ protected $settings;
32
+
33
+ /*
34
+ * Common tracker initialization
35
+ *
36
+ * @return void
37
+ * @since 4.4.34
38
+ */
39
+ public function __construct(){
40
+
41
+ // Loading settings
42
+ $this->settings = woo_feed_get_options( 'all' );
43
+
44
+ if( $this->is_active() ){
45
+
46
+ add_action( 'wp_enqueue_scripts', [ &$this, 'frontend_script' ] );
47
+
48
+ }
49
+
50
+ }
51
+
52
+ /**
53
+ * Decides which event to trigger
54
+ *
55
+ * @return void
56
+ * @since 4.4.34
57
+ */
58
+ public function trigger_event(){
59
+
60
+ $event = 'page_view';
61
+
62
+ if( is_product() ){
63
+ $event = 'product_view';
64
+ if( isset( $_POST[ 'add-to-cart' ] ) ){
65
+ $event = 'add_to_cart';
66
+ }
67
+ } else if( is_wc_endpoint_url('order-received') ){
68
+ $event = 'order_received';
69
+ } else if( is_checkout() ){
70
+ $event = 'initiate_checkout';
71
+ }
72
+
73
+ if( method_exists( get_class($this), $event ) ){
74
+ $this->$event();
75
+ }
76
+
77
+ }
78
+
79
+ }
includes/Tracker/Facebook/Pixel.php CHANGED
@@ -5,11 +5,14 @@
5
  * @since 4.4.27
6
  */
7
  namespace WebAppick\Feed\Tracker\Facebook;
 
8
 
9
- class Pixel{
10
-
11
- protected $active = false;
12
- protected $id = '';
 
 
13
 
14
  /**
15
  * Initializes facebook pixel
@@ -19,25 +22,33 @@ class Pixel{
19
  */
20
  public function __construct(){
21
 
22
- // Loading settings
23
- $settings = woo_feed_get_options( 'all' );
24
-
25
- $this->id = $settings['pixel_id'];
26
- $this->active = $settings['disable_pixel'] == 'enable' && ! empty( $this->id );
27
 
28
- if( $this->active ){
29
-
30
- add_action( 'wp_enqueue_scripts', [ &$this, 'frontend_script' ] );
31
 
32
  add_action( 'wp_head', [ &$this, 'add_pixel_script' ] );
33
  add_action( 'woo_feed_after_pixel_init', [ &$this, 'trigger_event' ], 11 );
34
 
35
- // Ajax add to cart
36
- add_action( 'wp_ajax_add_to_cart_facebook_pixel', [ &$this, 'product_add_to_cart_data' ] );
37
- add_action( 'wp_ajax_nopriv_add_to_cart_facebook_pixel', [ &$this, 'product_add_to_cart_data' ] );
38
-
39
  }
40
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
41
  }
42
 
43
  /**
@@ -48,7 +59,7 @@ class Pixel{
48
  */
49
  public function frontend_script(){
50
 
51
- wp_enqueue_script( 'woo-feed-facebook-pixel,', WOO_FEED_PLUGIN_URL . 'admin/js/woo-feed-facebook-pixel.js', ['jquery', 'wp-util'], '1.0.0', true );
52
 
53
  }
54
 
@@ -59,6 +70,7 @@ class Pixel{
59
  * @since 4.4.27
60
  */
61
  public function add_pixel_script() {
 
62
  // @ToDo Language Code check. Currently passing all to `en_US`
63
  ?>
64
  <!-- Facebook Pixel Code -->
@@ -92,39 +104,13 @@ class Pixel{
92
  <?php
93
  }
94
 
95
- /**
96
- * Decides which event to trigger
97
- *
98
- * @return void
99
- * @since 4.4.27
100
- */
101
- public function trigger_event(){
102
- $event = 'PageView';
103
-
104
- if( is_product() ){
105
- $event = 'ViewContent';
106
- if( isset( $_POST[ 'add-to-cart' ] ) ){
107
- $event = 'AddToCart';
108
- }
109
- } else if( is_wc_endpoint_url('order-received') ){
110
- $event = 'Purchase';
111
- } else if( is_checkout() ){
112
- $event = 'InitiateCheckout';
113
- }
114
-
115
- if( method_exists( Pixel::class, $event ) ){
116
- $this->$event();
117
- }
118
-
119
- }
120
-
121
  /**
122
  * Pageview event
123
  *
124
  * @return void
125
  * @since 4.4.27
126
  */
127
- protected function PageView(){
128
  ?>
129
  fbq( 'track', 'PageView' );
130
  <?php
@@ -136,7 +122,7 @@ class Pixel{
136
  * @return void
137
  * @since 4.4.27
138
  */
139
- protected function ViewContent(){
140
  global $post;
141
  $_product = wc_get_product( (int) $post->ID );
142
  $data = [
@@ -181,7 +167,7 @@ class Pixel{
181
  * @return void
182
  * @since 4.4.27
183
  */
184
- protected function AddToCart(){
185
 
186
  $product_id = intval( esc_attr( $_POST['add-to-cart'] ) );
187
  if( $product_id ){
@@ -208,7 +194,7 @@ class Pixel{
208
  * @return void
209
  * @since 4.4.27
210
  */
211
- protected function InitiateCheckout(){
212
  ?>
213
  fbq( 'track', 'InitiateCheckout' );
214
  <?php
@@ -220,7 +206,7 @@ class Pixel{
220
  * @return void
221
  * @since 4.4.27
222
  */
223
- protected function Purchase(){
224
  global $wp_query;
225
  $order = wc_get_order( $wp_query->query_vars['order-received'] );
226
  $data = [
5
  * @since 4.4.27
6
  */
7
  namespace WebAppick\Feed\Tracker\Facebook;
8
+ use \WebAppick\Feed\Tracker\Base as Base;
9
 
10
+ /*
11
+ * Class to specify facebook pixel events
12
+ *
13
+ * @since 4.4.34
14
+ */
15
+ class Pixel extends Base{
16
 
17
  /**
18
  * Initializes facebook pixel
22
  */
23
  public function __construct(){
24
 
25
+ parent::__construct();
 
 
 
 
26
 
27
+ if( $this->is_active() ){
 
 
28
 
29
  add_action( 'wp_head', [ &$this, 'add_pixel_script' ] );
30
  add_action( 'woo_feed_after_pixel_init', [ &$this, 'trigger_event' ], 11 );
31
 
 
 
 
 
32
  }
33
 
34
+ // Ajax add to cart
35
+ add_action( 'wp_ajax_add_to_cart_facebook_pixel', [ &$this, 'product_add_to_cart_data' ] );
36
+ add_action( 'wp_ajax_nopriv_add_to_cart_facebook_pixel', [ &$this, 'product_add_to_cart_data' ] );
37
+
38
+ }
39
+
40
+ /**
41
+ * Checks if the corresponding tracker is active or not.
42
+ *
43
+ * @return bool
44
+ * @since 4.4.34
45
+ */
46
+ protected function is_active(){
47
+
48
+ $this->id = $this->settings['pixel_id'];
49
+ $this->active = $this->settings['disable_pixel'] == 'enable' && ! empty( $this->id );
50
+
51
+ return $this->active;
52
  }
53
 
54
  /**
59
  */
60
  public function frontend_script(){
61
 
62
+ wp_enqueue_script( 'woo-feed-facebook-pixel,', WOO_FEED_PLUGIN_URL . 'admin/js/woo-feed-facebook-pixel.min.js', ['jquery', 'wp-util'], '1.0.0', true );
63
 
64
  }
65
 
70
  * @since 4.4.27
71
  */
72
  public function add_pixel_script() {
73
+
74
  // @ToDo Language Code check. Currently passing all to `en_US`
75
  ?>
76
  <!-- Facebook Pixel Code -->
104
  <?php
105
  }
106
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
107
  /**
108
  * Pageview event
109
  *
110
  * @return void
111
  * @since 4.4.27
112
  */
113
+ protected function page_view(){
114
  ?>
115
  fbq( 'track', 'PageView' );
116
  <?php
122
  * @return void
123
  * @since 4.4.27
124
  */
125
+ protected function product_view(){
126
  global $post;
127
  $_product = wc_get_product( (int) $post->ID );
128
  $data = [
167
  * @return void
168
  * @since 4.4.27
169
  */
170
+ protected function add_to_cart(){
171
 
172
  $product_id = intval( esc_attr( $_POST['add-to-cart'] ) );
173
  if( $product_id ){
194
  * @return void
195
  * @since 4.4.27
196
  */
197
+ protected function initiate_checkout(){
198
  ?>
199
  fbq( 'track', 'InitiateCheckout' );
200
  <?php
206
  * @return void
207
  * @since 4.4.27
208
  */
209
+ protected function order_received(){
210
  global $wp_query;
211
  $order = wc_get_order( $wp_query->query_vars['order-received'] );
212
  $data = [
includes/Tracker/Google/Remarketing.php ADDED
@@ -0,0 +1,209 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * Managing Google remarketing events
4
+ *
5
+ * @since 4.4.34
6
+ */
7
+
8
+ namespace WebAppick\Feed\Tracker\Google;
9
+ use \WebAppick\Feed\Tracker\Base as Base;
10
+
11
+ /*
12
+ * Class to specify google remarketing events
13
+ *
14
+ * @since 4.4.34
15
+ */
16
+ class Remarketing extends Base{
17
+
18
+ /*
19
+ * Conversion lable for google remarketing
20
+ * @var string $send_to
21
+ *
22
+ * @since 4.4.34
23
+ */
24
+ public $send_to;
25
+
26
+ /*
27
+ * Initializes google remarketing
28
+ *
29
+ * @return void
30
+ * @since 4.4.34
31
+ */
32
+ public function __construct(){
33
+ parent::__construct();
34
+
35
+ if( $this->is_active() ){
36
+
37
+ add_action( 'wp_head', [ &$this, 'add_remarketing_script' ] );
38
+ add_action( 'woo_feed_after_remarketing_init', [ &$this, 'trigger_event' ], 11 );
39
+
40
+ }
41
+
42
+ // Ajax add to cart
43
+ add_action( 'wp_ajax_add_to_cart_google_remarketing', [ &$this, 'product_add_to_cart_data' ] );
44
+ add_action( 'wp_ajax_nopriv_add_to_cart_google_remarketing', [ &$this, 'product_add_to_cart_data' ] );
45
+ }
46
+
47
+ /*
48
+ * Checks if Google remarketing's necessary data is available.
49
+ * @param void
50
+ *
51
+ * @return void
52
+ * @since 4.4.34
53
+ */
54
+ protected function is_active(){
55
+
56
+ $this->id = $this->settings['remarketing_id'];
57
+ $this->send_to = $this->settings['remarketing_label'];
58
+ $this->active = $this->settings['disable_remarketing'] == 'enable' && ! empty( $this->id ) && !empty( $this->send_to );
59
+
60
+ return $this->active;
61
+
62
+ }
63
+
64
+ /*
65
+ * Add necessary scripts to initialize Google Remarketing
66
+ * @param void
67
+ *
68
+ * @return void
69
+ * @since 4.4.34
70
+ */
71
+ public function add_remarketing_script(){
72
+
73
+ ?>
74
+
75
+ <!-- Global site tag (gtag.js) -->
76
+ <script async src="https://www.googletagmanager.com/gtag/js?id=AW-951598697"></script>
77
+ <script>
78
+ window.dataLayer = window.dataLayer || [];
79
+ function gtag(){dataLayer.push(arguments);}
80
+ gtag('js', new Date());
81
+ gtag('config', '<?php echo $this->id; ?>');
82
+
83
+ <?php
84
+ /**
85
+ * Action after remarketing has been initialized in a page on page header. Every event should be fired in this hook
86
+ */
87
+ do_action( 'woo_feed_after_remarketing_init' );
88
+ ?>
89
+
90
+ </script>
91
+
92
+ <?php
93
+
94
+ }
95
+
96
+ /**
97
+ * Loads Google Remarketing assets
98
+ *
99
+ * @return void
100
+ * @since 4.4.34
101
+ */
102
+ public function frontend_script(){
103
+
104
+ wp_enqueue_script( 'woo-feed-google-remarketing,', WOO_FEED_PLUGIN_URL . 'admin/js/woo-feed-google-remarketing.min.js', ['jquery', 'wp-util'], '1.0.0', true );
105
+
106
+ }
107
+
108
+ /**
109
+ * Item View event
110
+ *
111
+ * @return void
112
+ * @since 4.4.34
113
+ */
114
+ protected function product_view(){
115
+ global $post;
116
+ $_product = wc_get_product( (int) $post->ID );
117
+ $data = [
118
+ 'send_to' => $this->send_to,
119
+ 'value' => $_product->get_price(),
120
+ 'items' => [
121
+ [
122
+ 'id' => $_product->get_ID()
123
+ ],
124
+ ]
125
+ ];
126
+ ?>
127
+ gtag( 'event', 'view_item', <?php echo json_encode( $data ); ?> );
128
+ <?php
129
+ }
130
+
131
+ /**
132
+ * AddToCart event
133
+ *
134
+ * @return void
135
+ * @since 4.4.34
136
+ */
137
+ protected function add_to_cart(){
138
+
139
+ $product_id = intval( esc_attr( $_POST['add-to-cart'] ) );
140
+ if( $product_id ){
141
+ $_product = wc_get_product( $product_id );
142
+
143
+ $data = [
144
+ 'send_to' => $this->send_to,
145
+ 'value' => $_product->get_price(),
146
+ 'items' => [
147
+ [
148
+ 'id' => $_product->get_ID()
149
+ ],
150
+ ]
151
+ ];
152
+ }
153
+ ?>
154
+ gtag( 'event', 'add_to_cart', <?php echo json_encode($data); ?> );
155
+ <?php
156
+
157
+ }
158
+
159
+ /**
160
+ * Sends json product details on Ajax Add to cart button.
161
+ *
162
+ * @return void
163
+ * @since 4.4.34
164
+ */
165
+ public function product_add_to_cart_data(){
166
+
167
+ $product_id = intval( esc_attr( $_POST['product_id'] ) );
168
+ $_product = wc_get_product( $product_id );
169
+
170
+ $data = [
171
+ 'send_to' => $this->send_to,
172
+ 'value' => $_product->get_price(),
173
+ 'items' => [
174
+ [
175
+ 'id' => $_product->get_ID()
176
+ ]
177
+ ],
178
+ ];
179
+
180
+ wp_send_json_success( json_encode( $data ) );
181
+ }
182
+
183
+ /**
184
+ * Purchase event
185
+ *
186
+ * @return void
187
+ * @since 4.4.34
188
+ */
189
+ protected function order_received(){
190
+ global $wp_query;
191
+ $order = wc_get_order( $wp_query->query_vars['order-received'] );
192
+
193
+ $product_ids = [];
194
+ $items = $order->get_items();
195
+ foreach( $items as $item ){
196
+ $product_ids[] = [ 'id' => $item->get_product_id() ];
197
+ }
198
+
199
+ $data = [
200
+ 'send_to' => $this->send_to,
201
+ 'value' => $order->get_total(),
202
+ 'items' => $product_ids
203
+ ];
204
+ ?>
205
+ gtag( 'event', 'purchase', <?php echo json_encode( $data ); ?> );
206
+ <?php
207
+ }
208
+
209
+ }
includes/classes/class-woo-feed-default-attributes.php CHANGED
@@ -334,6 +334,7 @@ class Woo_Feed_Default_Attributes {
334
  'availability_date' => array( 'g:availability_date', true ),
335
  'tax_category' => array( 'g:tax_category', true ),
336
  'included_destination' => array( 'g:included_destination', true ),
 
337
  );
338
  public $facebookCSVTXTAttribute
339
  = array(
@@ -408,6 +409,7 @@ class Woo_Feed_Default_Attributes {
408
  'availability_date' => array( 'availability date', true ),
409
  'tax_category' => array( 'tax category', true ),
410
  'included_destination' => array( 'included destination', true ),
 
411
  );
412
  public $pinterestXMLAttribute
413
  = array(
334
  'availability_date' => array( 'g:availability_date', true ),
335
  'tax_category' => array( 'g:tax_category', true ),
336
  'included_destination' => array( 'g:included_destination', true ),
337
+ 'quantity_to_sell_on_facebook' => array( 'g:quantity_to_sell_on_facebook', true ),
338
  );
339
  public $facebookCSVTXTAttribute
340
  = array(
409
  'availability_date' => array( 'availability date', true ),
410
  'tax_category' => array( 'tax category', true ),
411
  'included_destination' => array( 'included destination', true ),
412
+ 'quantity_to_sell_on_facebook' => array( 'quantity_to_sell_on_facebook', true ),
413
  );
414
  public $pinterestXMLAttribute
415
  = array(
includes/classes/class-woo-feed-products-v3.php CHANGED
@@ -2164,7 +2164,13 @@ class Woo_Feed_Products_v3
2164
 
2165
  $product_type = woo_feed_strip_all_tags(wc_get_product_category_list($id, $separator));
2166
 
2167
- return apply_filters('woo_feed_filter_product_local_category', $product_type, $product, $this->config);
 
 
 
 
 
 
2168
  }
2169
 
2170
  /**
@@ -3209,7 +3215,7 @@ class Woo_Feed_Products_v3
3209
  }
3210
 
3211
  $get_price = $this->get_price_by_product_type($product, $type, $tax);
3212
- if (!empty($price)) {
3213
  $price += $get_price;
3214
  }
3215
  }
2164
 
2165
  $product_type = woo_feed_strip_all_tags(wc_get_product_category_list($id, $separator));
2166
 
2167
+ $term_list = get_the_terms( $id, 'product_cat' );
2168
+ $col = array_column( $term_list, "term_id" );
2169
+ array_multisort( $col, SORT_ASC, $term_list );
2170
+ $term_list = array_column( $term_list, "name" );
2171
+ $term_list = implode( $separator, $term_list );
2172
+
2173
+ return apply_filters('woo_feed_filter_product_local_category', $term_list, $product, $this->config);
2174
  }
2175
 
2176
  /**
3215
  }
3216
 
3217
  $get_price = $this->get_price_by_product_type($product, $type, $tax);
3218
+ if (!empty($get_price)) {
3219
  $price += $get_price;
3220
  }
3221
  }
includes/classes/class-woo-feed-shipping.php CHANGED
@@ -147,28 +147,14 @@ class Woo_Feed_Shipping {
147
  continue 2;
148
  }
149
 
150
- foreach ( $shipping_methods as $method ) {
151
  if ( 'yes' === $method->enabled ) {
152
-
153
  if ( empty( $shipping['country'] ) ) {
154
  $shipping['service'] = $zone['zone_name'] . " " . $method->title;
155
  } else {
156
  $shipping['service'] = $zone['zone_name'] . " " . $method->title . " " . $shipping['country'];
157
  }
158
 
159
- //when only_local_pickup_shipping is disabled then skip the local pickup method
160
- if ( "local_pickup" === $method->id ) {
161
- if ( isset($this->settings) && is_array($this->settings) ) {
162
- if ( array_key_exists('only_local_pickup_shipping', $this->settings) ) {
163
- $allow_local_pickup = $this->settings['only_local_pickup_shipping'];
164
- if ( ! empty($allow_local_pickup) && 'no' === $allow_local_pickup ) {
165
- unset( $shipping );
166
- continue 3;
167
- }
168
- }
169
- }
170
- }
171
-
172
  //when only_free_shipping is enabled and shipping is not free shipping then skip the shipping method
173
  // if( isset($this->settings) && is_array($this->settings) ) {
174
  // if( array_key_exists('only_free_shipping', $this->settings) ) {
@@ -181,6 +167,7 @@ class Woo_Feed_Shipping {
181
  // }
182
  // }
183
  // }
 
184
  if ( "free_shipping" === $method->id ) {
185
  $minimum_fee = $method->min_amount;
186
 
@@ -208,15 +195,71 @@ class Woo_Feed_Shipping {
208
 
209
 
210
  }else {
211
- $shipping_cost = $this->get_shipping_cost($shipping);
212
- $shipping['price'] = $shipping_cost;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
213
  }
214
- }else {
215
  unset( $shipping );
216
  continue 3;
217
- }
218
- }
219
- $shipping_info[] = $shipping;
 
 
 
 
220
  }
221
  }
222
 
@@ -232,7 +275,7 @@ class Woo_Feed_Shipping {
232
  * @since 5.2.0
233
  * @return mixed $shipping_cost shipping cost
234
  */
235
- private function get_shipping_cost( $shipping ) {
236
  // Set shipping cost
237
  $shipping_cost = 0;
238
  $tax = 0;
@@ -259,7 +302,25 @@ class Woo_Feed_Shipping {
259
  $woocommerce->customer->set_shipping_state("");
260
  }
261
 
262
- $woocommerce->cart->add_to_cart( $this->product->get_id(), 1 );
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
263
 
264
  // Read cart and get shipping costs
265
  foreach ( $woocommerce->cart->get_cart() as $cart_item_key => $cart_item ) {
@@ -267,6 +328,11 @@ class Woo_Feed_Shipping {
267
  $tax = $woocommerce->cart->get_shipping_tax();
268
  }
269
 
 
 
 
 
 
270
  $shipping_cost = $shipping_cost + $tax;
271
 
272
  // Make sure to empty the cart again
147
  continue 2;
148
  }
149
 
150
+ foreach ( $shipping_methods as $key => $method ) {
151
  if ( 'yes' === $method->enabled ) {
 
152
  if ( empty( $shipping['country'] ) ) {
153
  $shipping['service'] = $zone['zone_name'] . " " . $method->title;
154
  } else {
155
  $shipping['service'] = $zone['zone_name'] . " " . $method->title . " " . $shipping['country'];
156
  }
157
 
 
 
 
 
 
 
 
 
 
 
 
 
 
158
  //when only_free_shipping is enabled and shipping is not free shipping then skip the shipping method
159
  // if( isset($this->settings) && is_array($this->settings) ) {
160
  // if( array_key_exists('only_free_shipping', $this->settings) ) {
167
  // }
168
  // }
169
  // }
170
+
171
  if ( "free_shipping" === $method->id ) {
172
  $minimum_fee = $method->min_amount;
173
 
195
 
196
 
197
  }else {
198
+ $shipping_method['id'] = $method->id;
199
+ $shipping_method['instance_id'] = $method->instance_id;
200
+
201
+ if( isset($shipping_method['id']) && $shipping_method['instance_id'] && 'table_rate' === $shipping_method['id'] ) {
202
+ // When Woocommerce Table Rate plugin by Woocommerce is active
203
+ if( is_plugin_active('woocommerce-table-rate-shipping/woocommerce-table-rate-shipping.php') ) {
204
+ $wc_table_rate = new WC_Shipping_Table_Rate($shipping_method['instance_id']);
205
+ $matching_rates = $wc_table_rate->query_rates( array(
206
+ 'price' => $this->product->get_price(),
207
+ 'weight' => (float) $this->product->get_weight(),
208
+ 'count' => 1,
209
+ 'count_in_class' => 1,
210
+ 'shipping_class_id' => $this->product->get_shipping_class_id()
211
+ ) );
212
+ $table_rate_ids = wp_list_pluck($matching_rates, 'rate_id');
213
+
214
+ if( isset($table_rate_ids) && is_array($table_rate_ids) ) {
215
+ foreach ($table_rate_ids as $id) {
216
+ $shipping_method['table_rate_id'] = $id;
217
+ $shipping_cost = $this->get_shipping_cost($shipping, $shipping_method);
218
+ $shipping['price'] = $shipping_cost;
219
+ $shipping_info[] = $shipping;
220
+ }
221
+
222
+ if ( isset($method) ) {
223
+ unset($method);
224
+ continue;
225
+ }
226
+ }
227
+ }
228
+
229
+ } else {
230
+
231
+ //when only_local_pickup_shipping is disabled then skip the local pickup method
232
+ if ( "local_pickup" === $method->id ) {
233
+ if ( isset($this->settings) && is_array($this->settings) ) {
234
+ if ( array_key_exists('only_local_pickup_shipping', $this->settings) ) {
235
+ $allow_local_pickup = $this->settings['only_local_pickup_shipping'];
236
+ if ( ! empty($allow_local_pickup) && 'no' === $allow_local_pickup ) {
237
+ if ( isset($method) ) {
238
+ unset($method);
239
+ continue;
240
+ }
241
+ }
242
+ }
243
+ }
244
+ }
245
+
246
+
247
+ if( isset($shipping) && !empty($shipping) ) {
248
+ $shipping_cost = $this->get_shipping_cost($shipping, $shipping_method);
249
+ $shipping['price'] = $shipping_cost;
250
+ }
251
+ }
252
  }
253
+ }else {
254
  unset( $shipping );
255
  continue 3;
256
+ }
257
+
258
+ if( isset($shipping) ) {
259
+ $shipping_info[] = $shipping;
260
+ }
261
+ }
262
+
263
  }
264
  }
265
 
275
  * @since 5.2.0
276
  * @return mixed $shipping_cost shipping cost
277
  */
278
+ private function get_shipping_cost( $shipping, $method ) {
279
  // Set shipping cost
280
  $shipping_cost = 0;
281
  $tax = 0;
302
  $woocommerce->customer->set_shipping_state("");
303
  }
304
 
305
+ // set shipping method in the cart
306
+ if( isset($method['id'] ) && $method['instance_id'] ) {
307
+ $chosen_ship_method_id = $method['id'] . ':' . $method['instance_id'];
308
+ $chosen_ship_method_id = apply_filters('woo_feed_filter_chosen_method_id', $chosen_ship_method_id, $shipping, $method);
309
+ WC()->session->set('chosen_shipping_methods', array( $chosen_ship_method_id ) );
310
+ }
311
+
312
+ // get product id
313
+ if( "variation" === $this->product->get_type() ) {
314
+ $id = $this->product->get_parent_id();
315
+ } elseif( "grouped" === $this->product->get_type() ) {
316
+ $id = $this->product->get_children();
317
+ $id = reset($id);
318
+ } else{
319
+ $id = $this->product->get_id();
320
+ }
321
+
322
+ // add product to cart
323
+ $woocommerce->cart->add_to_cart( $id, 1 );
324
 
325
  // Read cart and get shipping costs
326
  foreach ( $woocommerce->cart->get_cart() as $cart_item_key => $cart_item ) {
328
  $tax = $woocommerce->cart->get_shipping_tax();
329
  }
330
 
331
+ // reset chosen shipping methods in the cart
332
+ if( isset($method['id'] ) && $method['instance_id'] ) {
333
+ WC()->session->set('chosen_shipping_methods', array( '' ) );
334
+ }
335
+
336
  $shipping_cost = $shipping_cost + $tax;
337
 
338
  // Make sure to empty the cart again
includes/helper.php CHANGED
@@ -2375,6 +2375,9 @@ if (!function_exists('woo_feed_get_options')) {
2375
  'disable_brand' => 'enable',
2376
  'disable_pixel' => 'enable',
2377
  'pixel_id' => '',
 
 
 
2378
  'allow_all_shipping' => 'no',
2379
  'only_free_shipping' => 'yes',
2380
  'only_local_pickup_shipping' => 'no',
@@ -2501,6 +2504,31 @@ if (!function_exists('woo_feed_save_options')) {
2501
  }
2502
  unset($args['pixel_id']);
2503
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
2504
  if (array_key_exists('allow_all_shipping', $args)) {
2505
  $data['allow_all_shipping'] = strtolower($args['allow_all_shipping']);
2506
  if (!in_array($data['allow_all_shipping'], array('yes', 'no'))) {
@@ -3899,6 +3927,17 @@ if( !function_exists( 'woo_feed_facebook_pixel_init' ) ){
3899
 
3900
  }
3901
 
 
 
 
 
 
 
 
 
 
 
 
3902
  if (!function_exists('woo_feed_filter_dropdown_attributes')) {
3903
  /**
3904
  * Woo Feed Filter Dropdown Attributes
@@ -3945,6 +3984,15 @@ if (!function_exists('woo_feed_filter_dropdown_attributes')) {
3945
  $filtered_attributes = array_merge($filtered_attributes, $snapchat_additional_attr);
3946
  }
3947
 
 
 
 
 
 
 
 
 
 
3948
  return $filtered_attributes;
3949
  }
3950
 
@@ -5310,7 +5358,7 @@ if (!function_exists('woo_feed_availability_attribute_value_modify')) {
5310
  */
5311
  function woo_feed_availability_attribute_value_modify($attribute_value, $product, $feed_config)
5312
  {
5313
- if ('skroutz' === $feed_config['provider'] || 'bestprice' === $feed_config['provider']) {
5314
  if ('in stock' === $attribute_value) {
5315
  return "Y";
5316
  }
@@ -5318,6 +5366,17 @@ if (!function_exists('woo_feed_availability_attribute_value_modify')) {
5318
  return "N";
5319
  }
5320
 
 
 
 
 
 
 
 
 
 
 
 
5321
  if ('pricerunner' === $feed_config['provider']) {
5322
  if ('in stock' === $attribute_value) {
5323
  return "Yes";
@@ -5512,6 +5571,27 @@ if( ! function_exists( 'woo_feed_filter_product_title' ) ) {
5512
  }
5513
  }
5514
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
5515
  #==== MERCHANT TEMPLATE OVERRIDE END ================#
5516
 
5517
  // Including pluggable functions file
2375
  'disable_brand' => 'enable',
2376
  'disable_pixel' => 'enable',
2377
  'pixel_id' => '',
2378
+ 'disable_remarketing' => 'disable',
2379
+ 'remarketing_id' => '',
2380
+ 'remarketing_label' => '',
2381
  'allow_all_shipping' => 'no',
2382
  'only_free_shipping' => 'yes',
2383
  'only_local_pickup_shipping' => 'no',
2504
  }
2505
  unset($args['pixel_id']);
2506
  }
2507
+
2508
+ if (array_key_exists('disable_remarketing', $args)) {
2509
+ $data['disable_remarketing'] = strtolower($args['disable_remarketing']);
2510
+ if (!in_array($data['disable_remarketing'], array('enable', 'disable'))) {
2511
+ $data['disable_remarketing'] = in_array($_data['disable_remarketing'], array('enable', 'disable')) ? $_data['disable_remarketing'] : $defaults['disable_remarketing'];
2512
+ }
2513
+ unset($args['disable_remarketing']);
2514
+ }
2515
+ if (array_key_exists('remarketing_id', $args)) {
2516
+ if (isset($args['remarketing_id']) && !empty($args['remarketing_id'])) {
2517
+ $data['remarketing_id'] = $args['remarketing_id'];
2518
+ } else {
2519
+ $data['remarketing_id'] = $defaults['remarketing_id'];
2520
+ }
2521
+ unset($args['remarketing_id']);
2522
+ }
2523
+ if (array_key_exists('remarketing_label', $args)) {
2524
+ if (isset($args['remarketing_label']) && !empty($args['remarketing_label'])) {
2525
+ $data['remarketing_label'] = $args['remarketing_label'];
2526
+ } else {
2527
+ $data['remarketing_label'] = $defaults['remarketing_label'];
2528
+ }
2529
+ unset($args['remarketing_label']);
2530
+ }
2531
+
2532
  if (array_key_exists('allow_all_shipping', $args)) {
2533
  $data['allow_all_shipping'] = strtolower($args['allow_all_shipping']);
2534
  if (!in_array($data['allow_all_shipping'], array('yes', 'no'))) {
3927
 
3928
  }
3929
 
3930
+ // Google Remarketing integration
3931
+ if( !function_exists( 'woo_feed_google_remarketing_init' ) ){
3932
+
3933
+ function woo_feed_google_remarketing_init(){
3934
+ new WebAppick\Feed\Tracker\Google\Remarketing();
3935
+ }
3936
+
3937
+ add_action( 'init', 'woo_feed_google_remarketing_init' );
3938
+
3939
+ }
3940
+
3941
  if (!function_exists('woo_feed_filter_dropdown_attributes')) {
3942
  /**
3943
  * Woo Feed Filter Dropdown Attributes
3984
  $filtered_attributes = array_merge($filtered_attributes, $snapchat_additional_attr);
3985
  }
3986
 
3987
+ //filtering attributes for facebook merchant
3988
+ if (in_array('facebook', $merchants)) {
3989
+ if (isset($filtered_attributes['excluded_destination'])) {
3990
+ $facebook_attributes = array();
3991
+ $facebook_attributes['quantity_to_sell_on_facebook'] = 'Quantity to sell on facebook [quantity_to_sell_on_facebook]';
3992
+ $filtered_attributes = woo_feed_array_insert_after($filtered_attributes, 'excluded_destination', $facebook_attributes);
3993
+ }
3994
+ }
3995
+
3996
  return $filtered_attributes;
3997
  }
3998
 
5358
  */
5359
  function woo_feed_availability_attribute_value_modify($attribute_value, $product, $feed_config)
5360
  {
5361
+ if ('bestprice' === $feed_config['provider']) {
5362
  if ('in stock' === $attribute_value) {
5363
  return "Y";
5364
  }
5366
  return "N";
5367
  }
5368
 
5369
+ if ( 'skroutz' === $feed_config['provider'] ) {
5370
+
5371
+ if ('in stock' === $attribute_value) {
5372
+ $in_stock_string = __('Delivery 1 to 3 days', 'woo-feed' );
5373
+ } else {
5374
+ $in_stock_string = __('Delivery up to 30 days', 'woo-feed' );
5375
+ }
5376
+
5377
+ return $in_stock_string;
5378
+ }
5379
+
5380
  if ('pricerunner' === $feed_config['provider']) {
5381
  if ('in stock' === $attribute_value) {
5382
  return "Yes";
5571
  }
5572
  }
5573
 
5574
+ if( ! function_exists( 'woo_feed_array_insert_after' ) ) {
5575
+ /**
5576
+ * Insert a value or key/value pair after a specific key in an array. If key doesn't exist, value is appended
5577
+ * to the end of the array.
5578
+ *
5579
+ * @param array $array
5580
+ * @param string $key
5581
+ * @param array $new
5582
+ *
5583
+ * @return array
5584
+ */
5585
+ function woo_feed_array_insert_after( array $array, $key, array $new ) {
5586
+ $keys = array_keys( $array );
5587
+ $index = array_search( $key, $keys, true );
5588
+ $pos = false === $index ? count( $array ) : $index + 1;
5589
+
5590
+ return array_merge( array_slice( $array, 0, $pos ), $new, array_slice( $array, $pos ) );
5591
+ }
5592
+
5593
+ }
5594
+
5595
  #==== MERCHANT TEMPLATE OVERRIDE END ================#
5596
 
5597
  // Including pluggable functions file
includes/template-configs.php CHANGED
@@ -3201,7 +3201,7 @@ return array(
3201
  '',
3202
  '',
3203
  ),
3204
- 'default' => array( '', '', '', '', '', '', '', '', $this->brand_pattern, 'Delivery up to 30 days' ),
3205
  'suffix' => array( '', '', '', '', '', '', '', '', '', '' ),
3206
  'output_type' => array( '1', '1', '8, 11', '1', '1', '1', '6', '1', '1', '1' ),
3207
  'limit' => array( '', '', '', '', '', '', '', '', '', '' ),
3201
  '',
3202
  '',
3203
  ),
3204
+ 'default' => array( '', '', '', '', '', '', '', '', $this->brand_pattern, 'Delivery 1 to 3 days' ),
3205
  'suffix' => array( '', '', '', '', '', '', '', '', '', '' ),
3206
  'output_type' => array( '1', '1', '8, 11', '1', '1', '1', '6', '1', '1', '1' ),
3207
  'limit' => array( '', '', '', '', '', '', '', '', '', '' ),
languages/woo-feed.pot CHANGED
@@ -16,7 +16,7 @@ msgstr ""
16
  msgid "Unauthorized Action."
17
  msgstr ""
18
 
19
- #: woo-feed.php:237, woo-feed.php:356, includes/helper.php:852, includes/helper.php:1903, includes/helper.php:2912, includes/helper.php:2941, includes/helper.php:3329, includes/helper.php:3527, includes/helper.php:3555, includes/helper.php:4912, includes/helper.php:5410
20
  msgid "Invalid Request."
21
  msgstr ""
22
 
@@ -76,7 +76,7 @@ msgstr ""
76
  msgid "Learn More.."
77
  msgstr ""
78
 
79
- #: admin/class-woo-feed-admin.php:152, includes/helper.php:3247, admin/partials/woo-feed-edit-config.php:66
80
  msgid "Select A Category"
81
  msgstr ""
82
 
@@ -168,7 +168,7 @@ msgstr ""
168
  msgid "mappings"
169
  msgstr ""
170
 
171
- #: admin/class-woo-feed-category-list.php:81, admin/class-woo-feed-category-list.php:122, admin/class-woo-feed-category-list.php:217, admin/class-woo-feed-manage-list.php:163, admin/class-woo-feed-manage-list.php:271, includes/helper.php:3608
172
  msgid "Edit"
173
  msgstr ""
174
 
@@ -188,7 +188,7 @@ msgstr ""
188
  msgid "Template"
189
  msgstr ""
190
 
191
- #: admin/class-woo-feed-category-list.php:250, admin/class-woo-feed-manage-list.php:318, admin/class-woo-feed-option-list.php:248, admin/partials/woo-feed-settings.php:208
192
  msgid "Action"
193
  msgstr ""
194
 
@@ -533,199 +533,207 @@ msgstr ""
533
  msgid " Imported"
534
  msgstr ""
535
 
536
- #: includes/helper.php:2876
537
  msgid "Brand"
538
  msgstr ""
539
 
540
- #: includes/helper.php:2877
541
  msgid "GTIN"
542
  msgstr ""
543
 
544
- #: includes/helper.php:2878
545
  msgid "MPN"
546
  msgstr ""
547
 
548
- #: includes/helper.php:2879
549
  msgid "EAN"
550
  msgstr ""
551
 
552
- #: includes/helper.php:2880
553
  msgid "ISBN"
554
  msgstr ""
555
 
556
- #: includes/helper.php:2881
557
  msgid "Age group"
558
  msgstr ""
559
 
560
- #: includes/helper.php:2882
561
  msgid "Gender"
562
  msgstr ""
563
 
564
- #: includes/helper.php:2883
565
  msgid "Material"
566
  msgstr ""
567
 
568
- #: includes/helper.php:2884
569
  msgid "Cost of good sold"
570
  msgstr ""
571
 
572
- #: includes/helper.php:2885, includes/classes/class-woo-feed-dropdown.php:332, libs/WebAppick/Attributes/AvailabilityDate.php:47, libs/WebAppick/Attributes/AvailabilityDate.php:77
573
  msgid "Availability Date"
574
  msgstr ""
575
 
576
- #: includes/helper.php:2886
577
  msgid "Unit"
578
  msgstr ""
579
 
580
- #: includes/helper.php:2887, includes/classes/class-woo-feed-dropdown.php:401
581
  msgid "Unit Price Measure"
582
  msgstr ""
583
 
584
- #: includes/helper.php:2888, includes/classes/class-woo-feed-dropdown.php:402
585
  msgid "Unit Price Base Measure"
586
  msgstr ""
587
 
588
- #: includes/helper.php:2889
589
  msgid "Custom field 0"
590
  msgstr ""
591
 
592
- #: includes/helper.php:2890
593
  msgid "Custom field 1"
594
  msgstr ""
595
 
596
- #: includes/helper.php:2891
597
  msgid "Custom field 2"
598
  msgstr ""
599
 
600
- #: includes/helper.php:2892
601
  msgid "Custom field 3"
602
  msgstr ""
603
 
604
- #: includes/helper.php:2893
605
  msgid "Custom field 4"
606
  msgstr ""
607
 
608
- #: includes/helper.php:2962, includes/helper.php:3054
609
  msgid "CUSTOM FIELDS by CTX Feed"
610
  msgstr ""
611
 
612
- #: includes/helper.php:2979
613
  msgid "Set product "
614
  msgstr ""
615
 
616
- #: includes/helper.php:2979
617
  msgid " here."
618
  msgstr ""
619
 
620
- #: includes/helper.php:3166
621
  msgid "Another category mapping exists with the same name."
622
  msgstr ""
623
 
624
- #: includes/helper.php:3175
625
  msgid "Failed To Add Mapping"
626
  msgstr ""
627
 
628
- #: includes/helper.php:3171
629
  msgid "Mapping Added Successfully"
630
  msgstr ""
631
 
632
- #: includes/helper.php:3140
633
  msgid "Mapping Not Changed"
634
  msgstr ""
635
 
636
- #: includes/helper.php:3150
637
  msgid "Failed To Updated Mapping"
638
  msgstr ""
639
 
640
- #: includes/helper.php:3146
641
  msgid "Mapping Updated Successfully"
642
  msgstr ""
643
 
644
- #: includes/helper.php:3267
645
  msgid "Copy this category to subcategories"
646
  msgstr ""
647
 
648
- #: includes/helper.php:3298
649
  msgid "Clear Cache"
650
  msgstr ""
651
 
652
- #: includes/helper.php:3523, includes/helper.php:3552
653
  msgid "Something is wrong."
654
  msgstr ""
655
 
656
- #: includes/helper.php:3521
657
  msgid "User meta updated successfully."
658
  msgstr ""
659
 
660
- #: includes/helper.php:3600, includes/helper.php:3602
661
  msgid "by CTX Feed"
662
  msgstr ""
663
 
664
- #: includes/helper.php:3603
665
  msgid "All"
666
  msgstr ""
667
 
668
- #: includes/helper.php:3604
669
  msgid "Parent"
670
  msgstr ""
671
 
672
- #: includes/helper.php:3605
673
  msgid "Parent:"
674
  msgstr ""
675
 
676
- #: includes/helper.php:3606
677
  msgid "New"
678
  msgstr ""
679
 
680
- #: includes/helper.php:3606, libs/WebAppick/AppServices/Insights.php:977
681
  msgid "Name"
682
  msgstr ""
683
 
684
- #: includes/helper.php:3607
685
  msgid "Add New"
686
  msgstr ""
687
 
688
- #: includes/helper.php:3609
689
  msgid "Update"
690
  msgstr ""
691
 
692
- #: includes/helper.php:3610
693
  msgid "Separate"
694
  msgstr ""
695
 
696
- #: includes/helper.php:3610
697
  msgid "with commas"
698
  msgstr ""
699
 
700
- #: includes/helper.php:3611
701
  msgid "Search"
702
  msgstr ""
703
 
704
- #: includes/helper.php:3612
705
  msgid "Add or remove"
706
  msgstr ""
707
 
708
- #: includes/helper.php:3613
709
  msgid "Choose from the most used"
710
  msgstr ""
711
 
712
- #: includes/helper.php:4614
713
  msgid "Option Successfully Added."
714
  msgstr ""
715
 
716
- #: includes/helper.php:4605
717
  msgid "Option Already Added."
718
  msgstr ""
719
 
720
- #: includes/helper.php:5418
 
 
 
 
 
 
 
 
721
  msgid "Feed data is empty. Can't duplicate feed."
722
  msgstr ""
723
 
724
- #: includes/helper.php:5434
725
  msgid "Unable to save the duplicate feed data."
726
  msgstr ""
727
 
728
- #: includes/helper.php:5444
729
  msgid "Feed Successfully Duplicated, but unable to generate the data file. Please click the \"Regenerate Button\""
730
  msgstr ""
731
 
@@ -970,11 +978,11 @@ msgstr ""
970
  msgid "Learn more about Campaign URL"
971
  msgstr ""
972
 
973
- #: admin/partials/woo-feed-edit-ftp.php:15, admin/partials/woo-feed-edit-ftp.php:19, admin/partials/woo-feed-settings.php:131, admin/partials/woo-feed-settings.php:150, admin/partials/woo-feed-settings.php:162, admin/partials/woo-feed-settings.php:174, admin/partials/woo-feed-settings.php:186
974
  msgid "Enabled"
975
  msgstr ""
976
 
977
- #: admin/partials/woo-feed-edit-ftp.php:18, admin/partials/woo-feed-settings.php:130, admin/partials/woo-feed-settings.php:149, admin/partials/woo-feed-settings.php:161, admin/partials/woo-feed-settings.php:173, admin/partials/woo-feed-settings.php:185
978
  msgid "Disabled"
979
  msgstr ""
980
 
@@ -1214,59 +1222,83 @@ msgstr ""
1214
  msgid "Turn off when you don't want to override default WooCommerce Product Schema"
1215
  msgstr ""
1216
 
1217
- #: admin/partials/woo-feed-settings.php:126
1218
  msgid "Disable/Enable Facebook Pixel"
1219
  msgstr ""
1220
 
1221
- #: admin/partials/woo-feed-settings.php:134
1222
  msgid "Disables or Enables Facebook Pixel ID’s for Variation"
1223
  msgstr ""
1224
 
1225
- #: admin/partials/woo-feed-settings.php:138
1226
  msgid "Facebook Pixel ID"
1227
  msgstr ""
1228
 
1229
- #: admin/partials/woo-feed-settings.php:141
1230
  msgid "Insert your Facebook Pixel ID"
1231
  msgstr ""
1232
 
1233
- #: admin/partials/woo-feed-settings.php:145
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1234
  msgid "Add Shipping/Tax info for all countries to feed (Google Shopping)"
1235
  msgstr ""
1236
 
1237
- #: admin/partials/woo-feed-settings.php:153
1238
  msgid "Disable or Enable all shipping to feed"
1239
  msgstr ""
1240
 
1241
- #: admin/partials/woo-feed-settings.php:157
1242
  msgid "Remove all other shipping classes when free shipping criteria are met (Google Shopping / Facebook only)"
1243
  msgstr ""
1244
 
1245
- #: admin/partials/woo-feed-settings.php:165
1246
  msgid "Disable or Enable all shipping when free shipping is exists"
1247
  msgstr ""
1248
 
1249
- #: admin/partials/woo-feed-settings.php:169
1250
  msgid "Remove the local pickup shipping zone from feed (Google Shopping)"
1251
  msgstr ""
1252
 
1253
- #: admin/partials/woo-feed-settings.php:177
1254
  msgid "Disable or Enable all shipping when local pickup shipping is exists"
1255
  msgstr ""
1256
 
1257
- #: admin/partials/woo-feed-settings.php:181
1258
  msgid "Enable FTP Upload"
1259
  msgstr ""
1260
 
1261
- #: admin/partials/woo-feed-settings.php:189
1262
  msgid "Disable or Enable FTP upload setting"
1263
  msgstr ""
1264
 
1265
- #: admin/partials/woo-feed-settings.php:197
1266
  msgid "Save Changes"
1267
  msgstr ""
1268
 
1269
- #: admin/partials/woo-feed-settings.php:207
1270
  msgid "Custom Fields"
1271
  msgstr ""
1272
 
16
  msgid "Unauthorized Action."
17
  msgstr ""
18
 
19
+ #: woo-feed.php:237, woo-feed.php:356, includes/helper.php:852, includes/helper.php:1903, includes/helper.php:2940, includes/helper.php:2969, includes/helper.php:3357, includes/helper.php:3555, includes/helper.php:3583, includes/helper.php:4960, includes/helper.php:5469
20
  msgid "Invalid Request."
21
  msgstr ""
22
 
76
  msgid "Learn More.."
77
  msgstr ""
78
 
79
+ #: admin/class-woo-feed-admin.php:152, includes/helper.php:3275, admin/partials/woo-feed-edit-config.php:66
80
  msgid "Select A Category"
81
  msgstr ""
82
 
168
  msgid "mappings"
169
  msgstr ""
170
 
171
+ #: admin/class-woo-feed-category-list.php:81, admin/class-woo-feed-category-list.php:122, admin/class-woo-feed-category-list.php:217, admin/class-woo-feed-manage-list.php:163, admin/class-woo-feed-manage-list.php:271, includes/helper.php:3636
172
  msgid "Edit"
173
  msgstr ""
174
 
188
  msgid "Template"
189
  msgstr ""
190
 
191
+ #: admin/class-woo-feed-category-list.php:250, admin/class-woo-feed-manage-list.php:318, admin/class-woo-feed-option-list.php:248, admin/partials/woo-feed-settings.php:239
192
  msgid "Action"
193
  msgstr ""
194
 
533
  msgid " Imported"
534
  msgstr ""
535
 
536
+ #: includes/helper.php:2904
537
  msgid "Brand"
538
  msgstr ""
539
 
540
+ #: includes/helper.php:2905
541
  msgid "GTIN"
542
  msgstr ""
543
 
544
+ #: includes/helper.php:2906
545
  msgid "MPN"
546
  msgstr ""
547
 
548
+ #: includes/helper.php:2907
549
  msgid "EAN"
550
  msgstr ""
551
 
552
+ #: includes/helper.php:2908
553
  msgid "ISBN"
554
  msgstr ""
555
 
556
+ #: includes/helper.php:2909
557
  msgid "Age group"
558
  msgstr ""
559
 
560
+ #: includes/helper.php:2910
561
  msgid "Gender"
562
  msgstr ""
563
 
564
+ #: includes/helper.php:2911
565
  msgid "Material"
566
  msgstr ""
567
 
568
+ #: includes/helper.php:2912
569
  msgid "Cost of good sold"
570
  msgstr ""
571
 
572
+ #: includes/helper.php:2913, includes/classes/class-woo-feed-dropdown.php:332, libs/WebAppick/Attributes/AvailabilityDate.php:47, libs/WebAppick/Attributes/AvailabilityDate.php:77
573
  msgid "Availability Date"
574
  msgstr ""
575
 
576
+ #: includes/helper.php:2914
577
  msgid "Unit"
578
  msgstr ""
579
 
580
+ #: includes/helper.php:2915, includes/classes/class-woo-feed-dropdown.php:401
581
  msgid "Unit Price Measure"
582
  msgstr ""
583
 
584
+ #: includes/helper.php:2916, includes/classes/class-woo-feed-dropdown.php:402
585
  msgid "Unit Price Base Measure"
586
  msgstr ""
587
 
588
+ #: includes/helper.php:2917
589
  msgid "Custom field 0"
590
  msgstr ""
591
 
592
+ #: includes/helper.php:2918
593
  msgid "Custom field 1"
594
  msgstr ""
595
 
596
+ #: includes/helper.php:2919
597
  msgid "Custom field 2"
598
  msgstr ""
599
 
600
+ #: includes/helper.php:2920
601
  msgid "Custom field 3"
602
  msgstr ""
603
 
604
+ #: includes/helper.php:2921
605
  msgid "Custom field 4"
606
  msgstr ""
607
 
608
+ #: includes/helper.php:2990, includes/helper.php:3082
609
  msgid "CUSTOM FIELDS by CTX Feed"
610
  msgstr ""
611
 
612
+ #: includes/helper.php:3007
613
  msgid "Set product "
614
  msgstr ""
615
 
616
+ #: includes/helper.php:3007
617
  msgid " here."
618
  msgstr ""
619
 
620
+ #: includes/helper.php:3194
621
  msgid "Another category mapping exists with the same name."
622
  msgstr ""
623
 
624
+ #: includes/helper.php:3203
625
  msgid "Failed To Add Mapping"
626
  msgstr ""
627
 
628
+ #: includes/helper.php:3199
629
  msgid "Mapping Added Successfully"
630
  msgstr ""
631
 
632
+ #: includes/helper.php:3168
633
  msgid "Mapping Not Changed"
634
  msgstr ""
635
 
636
+ #: includes/helper.php:3178
637
  msgid "Failed To Updated Mapping"
638
  msgstr ""
639
 
640
+ #: includes/helper.php:3174
641
  msgid "Mapping Updated Successfully"
642
  msgstr ""
643
 
644
+ #: includes/helper.php:3295
645
  msgid "Copy this category to subcategories"
646
  msgstr ""
647
 
648
+ #: includes/helper.php:3326
649
  msgid "Clear Cache"
650
  msgstr ""
651
 
652
+ #: includes/helper.php:3551, includes/helper.php:3580
653
  msgid "Something is wrong."
654
  msgstr ""
655
 
656
+ #: includes/helper.php:3549
657
  msgid "User meta updated successfully."
658
  msgstr ""
659
 
660
+ #: includes/helper.php:3628, includes/helper.php:3630
661
  msgid "by CTX Feed"
662
  msgstr ""
663
 
664
+ #: includes/helper.php:3631
665
  msgid "All"
666
  msgstr ""
667
 
668
+ #: includes/helper.php:3632
669
  msgid "Parent"
670
  msgstr ""
671
 
672
+ #: includes/helper.php:3633
673
  msgid "Parent:"
674
  msgstr ""
675
 
676
+ #: includes/helper.php:3634
677
  msgid "New"
678
  msgstr ""
679
 
680
+ #: includes/helper.php:3634, libs/WebAppick/AppServices/Insights.php:977
681
  msgid "Name"
682
  msgstr ""
683
 
684
+ #: includes/helper.php:3635
685
  msgid "Add New"
686
  msgstr ""
687
 
688
+ #: includes/helper.php:3637
689
  msgid "Update"
690
  msgstr ""
691
 
692
+ #: includes/helper.php:3638
693
  msgid "Separate"
694
  msgstr ""
695
 
696
+ #: includes/helper.php:3638
697
  msgid "with commas"
698
  msgstr ""
699
 
700
+ #: includes/helper.php:3639
701
  msgid "Search"
702
  msgstr ""
703
 
704
+ #: includes/helper.php:3640
705
  msgid "Add or remove"
706
  msgstr ""
707
 
708
+ #: includes/helper.php:3641
709
  msgid "Choose from the most used"
710
  msgstr ""
711
 
712
+ #: includes/helper.php:4662
713
  msgid "Option Successfully Added."
714
  msgstr ""
715
 
716
+ #: includes/helper.php:4653
717
  msgid "Option Already Added."
718
  msgstr ""
719
 
720
+ #: includes/helper.php:5374
721
+ msgid "Delivery up to 30 days"
722
+ msgstr ""
723
+
724
+ #: includes/helper.php:5372
725
+ msgid "Delivery 1 to 3 days"
726
+ msgstr ""
727
+
728
+ #: includes/helper.php:5477
729
  msgid "Feed data is empty. Can't duplicate feed."
730
  msgstr ""
731
 
732
+ #: includes/helper.php:5493
733
  msgid "Unable to save the duplicate feed data."
734
  msgstr ""
735
 
736
+ #: includes/helper.php:5503
737
  msgid "Feed Successfully Duplicated, but unable to generate the data file. Please click the \"Regenerate Button\""
738
  msgstr ""
739
 
978
  msgid "Learn more about Campaign URL"
979
  msgstr ""
980
 
981
+ #: admin/partials/woo-feed-edit-ftp.php:15, admin/partials/woo-feed-edit-ftp.php:19, admin/partials/woo-feed-settings.php:133, admin/partials/woo-feed-settings.php:154, admin/partials/woo-feed-settings.php:181, admin/partials/woo-feed-settings.php:193, admin/partials/woo-feed-settings.php:205, admin/partials/woo-feed-settings.php:217
982
  msgid "Enabled"
983
  msgstr ""
984
 
985
+ #: admin/partials/woo-feed-edit-ftp.php:18, admin/partials/woo-feed-settings.php:132, admin/partials/woo-feed-settings.php:153, admin/partials/woo-feed-settings.php:180, admin/partials/woo-feed-settings.php:192, admin/partials/woo-feed-settings.php:204, admin/partials/woo-feed-settings.php:216
986
  msgid "Disabled"
987
  msgstr ""
988
 
1222
  msgid "Turn off when you don't want to override default WooCommerce Product Schema"
1223
  msgstr ""
1224
 
1225
+ #: admin/partials/woo-feed-settings.php:128
1226
  msgid "Disable/Enable Facebook Pixel"
1227
  msgstr ""
1228
 
1229
+ #: admin/partials/woo-feed-settings.php:136
1230
  msgid "Disables or Enables Facebook Pixel ID’s for Variation"
1231
  msgstr ""
1232
 
1233
+ #: admin/partials/woo-feed-settings.php:140
1234
  msgid "Facebook Pixel ID"
1235
  msgstr ""
1236
 
1237
+ #: admin/partials/woo-feed-settings.php:143
1238
  msgid "Insert your Facebook Pixel ID"
1239
  msgstr ""
1240
 
1241
+ #: admin/partials/woo-feed-settings.php:149
1242
+ msgid "Disable/Enable Google Remarketing"
1243
+ msgstr ""
1244
+
1245
+ #: admin/partials/woo-feed-settings.php:157
1246
+ msgid "Disables or Enables Google Remarketing"
1247
+ msgstr ""
1248
+
1249
+ #: admin/partials/woo-feed-settings.php:161
1250
+ msgid "Google Remarketing ID"
1251
+ msgstr ""
1252
+
1253
+ #: admin/partials/woo-feed-settings.php:164
1254
+ msgid "Insert your Google Remarketing ID"
1255
+ msgstr ""
1256
+
1257
+ #: admin/partials/woo-feed-settings.php:168
1258
+ msgid "Google Remarketing Label"
1259
+ msgstr ""
1260
+
1261
+ #: admin/partials/woo-feed-settings.php:171
1262
+ msgid "Insert your Google Remarketing Label"
1263
+ msgstr ""
1264
+
1265
+ #: admin/partials/woo-feed-settings.php:176
1266
  msgid "Add Shipping/Tax info for all countries to feed (Google Shopping)"
1267
  msgstr ""
1268
 
1269
+ #: admin/partials/woo-feed-settings.php:184
1270
  msgid "Disable or Enable all shipping to feed"
1271
  msgstr ""
1272
 
1273
+ #: admin/partials/woo-feed-settings.php:188
1274
  msgid "Remove all other shipping classes when free shipping criteria are met (Google Shopping / Facebook only)"
1275
  msgstr ""
1276
 
1277
+ #: admin/partials/woo-feed-settings.php:196
1278
  msgid "Disable or Enable all shipping when free shipping is exists"
1279
  msgstr ""
1280
 
1281
+ #: admin/partials/woo-feed-settings.php:200
1282
  msgid "Remove the local pickup shipping zone from feed (Google Shopping)"
1283
  msgstr ""
1284
 
1285
+ #: admin/partials/woo-feed-settings.php:208
1286
  msgid "Disable or Enable all shipping when local pickup shipping is exists"
1287
  msgstr ""
1288
 
1289
+ #: admin/partials/woo-feed-settings.php:212
1290
  msgid "Enable FTP Upload"
1291
  msgstr ""
1292
 
1293
+ #: admin/partials/woo-feed-settings.php:220
1294
  msgid "Disable or Enable FTP upload setting"
1295
  msgstr ""
1296
 
1297
+ #: admin/partials/woo-feed-settings.php:228
1298
  msgid "Save Changes"
1299
  msgstr ""
1300
 
1301
+ #: admin/partials/woo-feed-settings.php:238
1302
  msgid "Custom Fields"
1303
  msgstr ""
1304
 
woo-feed.php CHANGED
@@ -10,7 +10,7 @@
10
  * Plugin Name: CTX Feed
11
  * Plugin URI: https://webappick.com/
12
  * Description: Easily generate woocommerce product feed for any marketing channel like Google Shopping(Merchant), Facebook Remarketing, Bing, eBay & more. Support 100+ Merchants.
13
- * Version: 4.4.33
14
  * Author: WebAppick
15
  * Author URI: https://webappick.com/
16
  * License: GPL v2
@@ -42,7 +42,7 @@ if ( ! defined( 'WOO_FEED_FREE_VERSION' ) ) {
42
  * @var string
43
  * @since 3.1.6
44
  */
45
- define( 'WOO_FEED_FREE_VERSION', '4.4.33' );
46
  }
47
 
48
  if ( ! defined( 'WOO_FEED_FREE_FILE' ) ) {
@@ -927,7 +927,10 @@ if ( ! function_exists( 'woo_feed_config_feed' ) ) {
927
  'disable_brand' => isset( $_POST['disable_brand'] ) ? sanitize_text_field( wp_unslash( $_POST['disable_brand'] ) ) : '',
928
  'disable_pixel' => isset( $_POST['disable_pixel'] ) ? sanitize_text_field( wp_unslash( $_POST['disable_pixel'] )) : '',
929
  'pixel_id' => isset( $_POST['pixel_id'] ) ? sanitize_text_field( wp_unslash( $_POST['pixel_id'] )) : '',
930
- 'allow_all_shipping' => isset( $_POST['allow_all_shipping'] ) ? sanitize_text_field( wp_unslash( $_POST['allow_all_shipping'] ) ) : '',
 
 
 
931
  'only_free_shipping' => isset( $_POST['only_free_shipping'] ) ? sanitize_text_field( wp_unslash( $_POST['only_free_shipping'] ) ) : '',
932
  'only_local_pickup_shipping' => isset( $_POST['only_local_pickup_shipping'] ) ? sanitize_text_field( wp_unslash( $_POST['only_local_pickup_shipping'] ) ) : '',
933
  'enable_ftp_upload' => isset( $_POST['enable_ftp_upload'] ) ? sanitize_text_field( wp_unslash( $_POST['enable_ftp_upload'] ) ) : '',
10
  * Plugin Name: CTX Feed
11
  * Plugin URI: https://webappick.com/
12
  * Description: Easily generate woocommerce product feed for any marketing channel like Google Shopping(Merchant), Facebook Remarketing, Bing, eBay & more. Support 100+ Merchants.
13
+ * Version: 4.4.34
14
  * Author: WebAppick
15
  * Author URI: https://webappick.com/
16
  * License: GPL v2
42
  * @var string
43
  * @since 3.1.6
44
  */
45
+ define( 'WOO_FEED_FREE_VERSION', '4.4.34' );
46
  }
47
 
48
  if ( ! defined( 'WOO_FEED_FREE_FILE' ) ) {
927
  'disable_brand' => isset( $_POST['disable_brand'] ) ? sanitize_text_field( wp_unslash( $_POST['disable_brand'] ) ) : '',
928
  'disable_pixel' => isset( $_POST['disable_pixel'] ) ? sanitize_text_field( wp_unslash( $_POST['disable_pixel'] )) : '',
929
  'pixel_id' => isset( $_POST['pixel_id'] ) ? sanitize_text_field( wp_unslash( $_POST['pixel_id'] )) : '',
930
+ 'disable_remarketing' => isset( $_POST['disable_remarketing'] ) ? sanitize_text_field( wp_unslash( $_POST['disable_remarketing'] )) : '',
931
+ 'remarketing_id' => isset( $_POST['remarketing_id'] ) ? sanitize_text_field( wp_unslash( $_POST['remarketing_id'] )) : '',
932
+ 'remarketing_label' => isset( $_POST['remarketing_label'] ) ? sanitize_text_field( wp_unslash( $_POST['remarketing_label'] )) : '',
933
+ 'allow_all_shipping' => isset( $_POST['allow_all_shipping'] ) ? sanitize_text_field( wp_unslash( $_POST['allow_all_shipping'] ) ) : '',
934
  'only_free_shipping' => isset( $_POST['only_free_shipping'] ) ? sanitize_text_field( wp_unslash( $_POST['only_free_shipping'] ) ) : '',
935
  'only_local_pickup_shipping' => isset( $_POST['only_local_pickup_shipping'] ) ? sanitize_text_field( wp_unslash( $_POST['only_local_pickup_shipping'] ) ) : '',
936
  'enable_ftp_upload' => isset( $_POST['enable_ftp_upload'] ) ? sanitize_text_field( wp_unslash( $_POST['enable_ftp_upload'] ) ) : '',