Version Description
(2021-11-26) = * Updated: Facebook new attribute added. * Added: Currency attribute has been added. * Fixed: Price suffix changing issue has been solved.
Download this release
Release Info
Developer | wahid0003 |
Plugin | CTX Feed – WooCommerce Product Feed Manager Plugin |
Version | 4.4.39 |
Comparing to | |
See all releases |
Code changes from version 4.4.38 to 4.4.39
- README.txt +6 -1
- admin/class-woo-feed-admin.php +12 -1
- admin/css/woo-feed-admin.css +0 -0
- admin/css/woo-feed-admin.min.css +0 -0
- admin/css/woo-feed-admin.scss +0 -0
- admin/js/woo-feed-admin.js +121 -30
- admin/js/woo-feed-admin.min.js +1 -1
- admin/js/woo-feed-admin.min.js.map +1 -1
- admin/partials/templates/taxonomies/fb_taxonomy.txt +2914 -0
- admin/partials/woo-feed-edit-config.php +7 -2
- includes/classes/class-woo-feed-default-attributes.php +93 -0
- includes/classes/class-woo-feed-dropdown.php +82 -12
- includes/classes/class-woo-feed-products-v3.php +131 -0
- includes/helper.php +6 -1
- includes/template-configs.php +8 -8
- languages/woo-feed.pot +216 -212
- woo-feed.php +22 -2
README.txt
CHANGED
@@ -5,7 +5,7 @@ Tags: Product Feed, WooCommerce, Google Shopping, Google Merchant, Facebook Cata
|
|
5 |
Requires at least: 4.4
|
6 |
Tested Up To: 5.8.2
|
7 |
Requires PHP: 5.6
|
8 |
-
Stable tag: 4.4.
|
9 |
License: GPLv2 or later
|
10 |
License URI: http://www.gnu.org/licenses/gpl-2.0.html
|
11 |
|
@@ -517,6 +517,11 @@ Using pro version:
|
|
517 |
|
518 |
== Changelog ==
|
519 |
|
|
|
|
|
|
|
|
|
|
|
520 |
= 4.4.38 (2021-11-19) =
|
521 |
* Fixed: Loyalty point attribute for Google shopping template not working issue fixed.
|
522 |
* Fixed: Product sale price override in schema issue fixed.
|
5 |
Requires at least: 4.4
|
6 |
Tested Up To: 5.8.2
|
7 |
Requires PHP: 5.6
|
8 |
+
Stable tag: 4.4.39
|
9 |
License: GPLv2 or later
|
10 |
License URI: http://www.gnu.org/licenses/gpl-2.0.html
|
11 |
|
517 |
|
518 |
== Changelog ==
|
519 |
|
520 |
+
= 4.4.39 (2021-11-26) =
|
521 |
+
* Updated: Facebook new attribute added.
|
522 |
+
* Added: Currency attribute has been added.
|
523 |
+
* Fixed: Price suffix changing issue has been solved.
|
524 |
+
|
525 |
= 4.4.38 (2021-11-19) =
|
526 |
* Fixed: Loyalty point attribute for Google shopping template not working issue fixed.
|
527 |
* Fixed: Product sale price override in schema issue fixed.
|
admin/class-woo-feed-admin.php
CHANGED
@@ -133,10 +133,21 @@ class Woo_Feed_Admin {
|
|
133 |
];
|
134 |
|
135 |
wp_register_script( $this->woo_feed, plugin_dir_url( __FILE__ ) . 'js/woo-feed-admin' . $ext, $feedScriptDependency, $this->version, false );
|
136 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
137 |
$js_opts = array(
|
138 |
'wpf_ajax_url' => admin_url( 'admin-ajax.php' ),
|
139 |
'wpf_debug' => woo_feed_is_debugging_enabled(),
|
|
|
140 |
'pages' => [
|
141 |
'list' => [
|
142 |
'feed' => esc_url( admin_url( 'admin.php?page=webappick-manage-feeds' ) ),
|
133 |
];
|
134 |
|
135 |
wp_register_script( $this->woo_feed, plugin_dir_url( __FILE__ ) . 'js/woo-feed-admin' . $ext, $feedScriptDependency, $this->version, false );
|
136 |
+
|
137 |
+
//get feed options with which feed is previously generated
|
138 |
+
$feed_rules = "";
|
139 |
+
if (isset($_GET['feed'])) {
|
140 |
+
$filename = str_replace('wf_feed_', '', wp_unslash($_GET['feed']));
|
141 |
+
$feed_options = maybe_unserialize(get_option('wf_feed_' . $filename));
|
142 |
+
if( isset($feed_options['feedrules']) ) {
|
143 |
+
$feed_rules = $feed_options['feedrules'];
|
144 |
+
}
|
145 |
+
}
|
146 |
+
|
147 |
$js_opts = array(
|
148 |
'wpf_ajax_url' => admin_url( 'admin-ajax.php' ),
|
149 |
'wpf_debug' => woo_feed_is_debugging_enabled(),
|
150 |
+
"feed_rules" => $feed_rules,
|
151 |
'pages' => [
|
152 |
'list' => [
|
153 |
'feed' => esc_url( admin_url( 'admin.php?page=webappick-manage-feeds' ) ),
|
admin/css/woo-feed-admin.css
CHANGED
File without changes
|
admin/css/woo-feed-admin.min.css
CHANGED
File without changes
|
admin/css/woo-feed-admin.scss
CHANGED
File without changes
|
admin/js/woo-feed-admin.js
CHANGED
@@ -133,9 +133,64 @@
|
|
133 |
}
|
134 |
}
|
135 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
136 |
let $copyBtn,
|
137 |
clipboard,
|
138 |
googleCategories,
|
|
|
139 |
helper = {
|
140 |
in_array: (needle, haystack) => {
|
141 |
try {
|
@@ -804,6 +859,7 @@
|
|
804 |
var fancyOption = $(this).parents('tr').find('.fancy-picker-content .fancy-picker-option');
|
805 |
var fancyDataPicker = $(this).parents('tr').find('.fancy-picker-data span');
|
806 |
var selectIf, selectKey;
|
|
|
807 |
|
808 |
// when any attribute is selected, pick the key
|
809 |
if( price_attributes.includes(current_attribute_value) ) {
|
@@ -826,7 +882,6 @@
|
|
826 |
|
827 |
// when value dropdown is selected as price or any custom taxonomy
|
828 |
if( selectIf === 'for_custom_taxo' || selectIf === 'for_price' ) {
|
829 |
-
|
830 |
// update "Option Type" when select key matches
|
831 |
fancyOption.each(function() {
|
832 |
if( selectKey === $(this).text() ) {
|
@@ -836,8 +891,20 @@
|
|
836 |
outputSelect.find("option").val( $(this).data('value') );
|
837 |
}
|
838 |
});
|
839 |
-
} else if( selectIf === 'for_all' ){
|
840 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
841 |
fancyOption.each(function(){
|
842 |
if( selectKey === $(this).text() ){
|
843 |
$(this).addClass('selected');
|
@@ -847,6 +914,7 @@
|
|
847 |
}
|
848 |
});
|
849 |
|
|
|
850 |
}
|
851 |
|
852 |
})
|
@@ -1108,7 +1176,7 @@
|
|
1108 |
// noinspection JSUnresolvedVariable
|
1109 |
valueColumn.append(`<span style="font-size:x-small;"><a style="color: red" href="https://webappick.com/docs/woo-feed/feed-configuration/how-to-map-store-category-with-merchant-category/" target="_blank">${opts.learn_more}</a></span>`);
|
1110 |
|
1111 |
-
if (!googleCategories) {
|
1112 |
valueColumn.append('<span class="spinner is-active" style="margin: 0;"></span>');
|
1113 |
}
|
1114 |
|
@@ -1134,11 +1202,29 @@
|
|
1134 |
} else {
|
1135 |
cb(googleCategories);
|
1136 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1137 |
}
|
1138 |
});
|
1139 |
}
|
1140 |
} else {
|
1141 |
-
if (attribute.val() !== 'current_category' && valueColumn.find('input.wf_default').length === 0) {
|
1142 |
valueColumn.find('span').remove();
|
1143 |
valueColumn.append('<input autocomplete="off" class="wf_default wf_attributes" type="text" name="default[]" value="">');
|
1144 |
|
@@ -1243,7 +1329,14 @@
|
|
1243 |
$('input[id*="cat_mapping_"]').css('display', 'none');
|
1244 |
$('.wf_default.wf_attributes').css('display', 'block').css('width', '100%');
|
1245 |
|
1246 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1247 |
$('input[id*="cat_mapping_"]').css('display', 'block');
|
1248 |
$('.wf_default.wf_attributes').css('display', 'none').css('width', '100%');
|
1249 |
}
|
@@ -1273,30 +1366,15 @@
|
|
1273 |
|
1274 |
});
|
1275 |
|
1276 |
-
$(document).ready(function (){
|
1277 |
-
|
1278 |
-
|
1279 |
-
type: 'GET',
|
1280 |
-
data: {
|
1281 |
-
_ajax_nonce: opts.nonce,
|
1282 |
-
action: "get_google_categories",
|
1283 |
-
// provider: provider
|
1284 |
-
}
|
1285 |
-
}).then(function (response) {
|
1286 |
-
$('.selectize-google-category').selectize({
|
1287 |
-
valueField: 'value',
|
1288 |
-
labelField: 'text',
|
1289 |
-
placeholder: 'Select a category',
|
1290 |
-
searchField: ['value', 'text'],
|
1291 |
-
options: response,
|
1292 |
-
render: {
|
1293 |
-
option: (data, escape) => `<div class="item wapk-selectize-item">${escape(data.value + ' - ' + data.text)}</div>`,
|
1294 |
-
item: (data, escape) => `<div class="item wapk-selectize-item">${escape(data.value + ' - ' + data.text)}</div>`
|
1295 |
-
}
|
1296 |
-
});
|
1297 |
-
}).fail(helper.ajax_fail);
|
1298 |
-
|
1299 |
|
|
|
|
|
|
|
|
|
|
|
1300 |
|
1301 |
});
|
1302 |
|
@@ -1351,6 +1429,16 @@
|
|
1351 |
|
1352 |
};
|
1353 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1354 |
$( '.wf_attr.wf_attributes' ).each( function( key, value){
|
1355 |
|
1356 |
var attribute_value = $(value).val();
|
@@ -1366,11 +1454,14 @@
|
|
1366 |
|
1367 |
$.each(attribute_list, function (_key, _value){
|
1368 |
if( attribute_value === _key ){
|
1369 |
-
|
|
|
|
|
1370 |
$( 'input[name^="suffix"]' ).eq( parseInt( key ) ).val( ' ' + _value );
|
|
|
|
|
1371 |
}
|
1372 |
|
1373 |
-
|
1374 |
}
|
1375 |
});
|
1376 |
} );
|
133 |
}
|
134 |
}
|
135 |
|
136 |
+
/*
|
137 |
+
* Handles product categories
|
138 |
+
*
|
139 |
+
* @since 4.4.39
|
140 |
+
* */
|
141 |
+
class WooFeedFeedCategories {
|
142 |
+
wooFeed_get_google_categories () {
|
143 |
+
wpAjax.send('get_google_categories', {
|
144 |
+
type: 'GET',
|
145 |
+
data: {
|
146 |
+
_ajax_nonce: opts.nonce,
|
147 |
+
action: "get_google_categories",
|
148 |
+
// provider: provider
|
149 |
+
}
|
150 |
+
}).then(function (response) {
|
151 |
+
$('.selectize-google-category').selectize({
|
152 |
+
valueField: 'value',
|
153 |
+
labelField: 'text',
|
154 |
+
placeholder: 'Select a category',
|
155 |
+
searchField: ['value', 'text'],
|
156 |
+
options: response,
|
157 |
+
render: {
|
158 |
+
option: (data, escape) => `<div class="item wapk-selectize-item">${escape(data.value + ' - ' + data.text)}</div>`,
|
159 |
+
item: (data, escape) => `<div class="item wapk-selectize-item">${escape(data.value + ' - ' + data.text)}</div>`
|
160 |
+
}
|
161 |
+
});
|
162 |
+
}).fail(helper.ajax_fail);
|
163 |
+
}
|
164 |
+
|
165 |
+
wooFeed_get_facebook_categories() {
|
166 |
+
// get facebook categories
|
167 |
+
wpAjax.send('get_facebook_categories', {
|
168 |
+
type: 'GET',
|
169 |
+
data: {
|
170 |
+
_ajax_nonce: opts.nonce,
|
171 |
+
action: "get_facebook_categories",
|
172 |
+
// provider: provider
|
173 |
+
}
|
174 |
+
}).then(function (response) {
|
175 |
+
$('.selectize-google-category').selectize({
|
176 |
+
valueField: 'value',
|
177 |
+
labelField: 'text',
|
178 |
+
placeholder: 'Select a Facebook category',
|
179 |
+
searchField: ['value', 'text'],
|
180 |
+
options: response,
|
181 |
+
render: {
|
182 |
+
option: (data, escape) => `<div class="item wapk-selectize-item">${escape(data.value + ' - ' + data.text)}</div>`,
|
183 |
+
item: (data, escape) => `<div class="item wapk-selectize-item">${escape(data.value + ' - ' + data.text)}</div>`
|
184 |
+
}
|
185 |
+
});
|
186 |
+
}).fail(helper.ajax_fail);
|
187 |
+
}
|
188 |
+
}
|
189 |
+
|
190 |
let $copyBtn,
|
191 |
clipboard,
|
192 |
googleCategories,
|
193 |
+
facebookCategories,
|
194 |
helper = {
|
195 |
in_array: (needle, haystack) => {
|
196 |
try {
|
859 |
var fancyOption = $(this).parents('tr').find('.fancy-picker-content .fancy-picker-option');
|
860 |
var fancyDataPicker = $(this).parents('tr').find('.fancy-picker-data span');
|
861 |
var selectIf, selectKey;
|
862 |
+
var currency;
|
863 |
|
864 |
// when any attribute is selected, pick the key
|
865 |
if( price_attributes.includes(current_attribute_value) ) {
|
882 |
|
883 |
// when value dropdown is selected as price or any custom taxonomy
|
884 |
if( selectIf === 'for_custom_taxo' || selectIf === 'for_price' ) {
|
|
|
885 |
// update "Option Type" when select key matches
|
886 |
fancyOption.each(function() {
|
887 |
if( selectKey === $(this).text() ) {
|
891 |
outputSelect.find("option").val( $(this).data('value') );
|
892 |
}
|
893 |
});
|
|
|
894 |
|
895 |
+
if( "for_price" === selectIf ) {
|
896 |
+
var feedCurrency = $('#feedCurrency').val();
|
897 |
+
if( "undefined" !== typeof feedCurrency && null !== feedCurrency ) {
|
898 |
+
currency = feedCurrency;
|
899 |
+
}else {
|
900 |
+
currency = wpf_ajax_obj.woocommerce.currency;
|
901 |
+
}
|
902 |
+
|
903 |
+
//for price add currency to the suffix
|
904 |
+
$(this).closest("tr").find("td:eq(5) input").val(" " + currency);
|
905 |
+
}
|
906 |
+
|
907 |
+
} else {
|
908 |
fancyOption.each(function(){
|
909 |
if( selectKey === $(this).text() ){
|
910 |
$(this).addClass('selected');
|
914 |
}
|
915 |
});
|
916 |
|
917 |
+
$(this).closest("tr").find("td:eq(5) input").val("");
|
918 |
}
|
919 |
|
920 |
})
|
1176 |
// noinspection JSUnresolvedVariable
|
1177 |
valueColumn.append(`<span style="font-size:x-small;"><a style="color: red" href="https://webappick.com/docs/woo-feed/feed-configuration/how-to-map-store-category-with-merchant-category/" target="_blank">${opts.learn_more}</a></span>`);
|
1178 |
|
1179 |
+
if (!googleCategories || !facebookCategories) {
|
1180 |
valueColumn.append('<span class="spinner is-active" style="margin: 0;"></span>');
|
1181 |
}
|
1182 |
|
1202 |
} else {
|
1203 |
cb(googleCategories);
|
1204 |
}
|
1205 |
+
|
1206 |
+
//for facebook product category merchant attribute
|
1207 |
+
if (!facebookCategories && "facebook" === provider && "fb_product_category" === attribute.val()) {
|
1208 |
+
wpAjax.send('get_facebook_categories', {
|
1209 |
+
type: 'GET',
|
1210 |
+
data: {
|
1211 |
+
_ajax_nonce: opts.nonce,
|
1212 |
+
action: "get_facebook_categories",
|
1213 |
+
provider: provider
|
1214 |
+
}
|
1215 |
+
}).then(function (r) {
|
1216 |
+
facebookCategories = r;
|
1217 |
+
cb(facebookCategories);
|
1218 |
+
valueColumn.find('.spinner').remove();
|
1219 |
+
}).fail(helper.ajax_fail);
|
1220 |
+
} else {
|
1221 |
+
cb(facebookCategories);
|
1222 |
+
}
|
1223 |
}
|
1224 |
});
|
1225 |
}
|
1226 |
} else {
|
1227 |
+
if ( attribute.val() !== 'current_category' && valueColumn.find('input.wf_default').length === 0) {
|
1228 |
valueColumn.find('span').remove();
|
1229 |
valueColumn.append('<input autocomplete="off" class="wf_default wf_attributes" type="text" name="default[]" value="">');
|
1230 |
|
1329 |
$('input[id*="cat_mapping_"]').css('display', 'none');
|
1330 |
$('.wf_default.wf_attributes').css('display', 'block').css('width', '100%');
|
1331 |
|
1332 |
+
var cat_init = new WooFeedFeedCategories();
|
1333 |
+
if( "facebook" === provider ) {
|
1334 |
+
cat_init.wooFeed_get_facebook_categories();
|
1335 |
+
}else {
|
1336 |
+
cat_init.wooFeed_get_google_categories();
|
1337 |
+
}
|
1338 |
+
|
1339 |
+
} else {
|
1340 |
$('input[id*="cat_mapping_"]').css('display', 'block');
|
1341 |
$('.wf_default.wf_attributes').css('display', 'none').css('width', '100%');
|
1342 |
}
|
1366 |
|
1367 |
});
|
1368 |
|
1369 |
+
$(document).ready(function () {
|
1370 |
+
var provider = $("#providers").val();
|
1371 |
+
var cat_init = new WooFeedFeedCategories();
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1372 |
|
1373 |
+
if( "facebook" === provider ) {
|
1374 |
+
cat_init.wooFeed_get_facebook_categories();
|
1375 |
+
} else {
|
1376 |
+
cat_init.wooFeed_get_google_categories();
|
1377 |
+
}
|
1378 |
|
1379 |
});
|
1380 |
|
1429 |
|
1430 |
};
|
1431 |
|
1432 |
+
if (typeof wpf_ajax_obj.feed_rules !== 'undefined' && wpf_ajax_obj.feed_rules !== null) {
|
1433 |
+
var feed_rules = wpf_ajax_obj.feed_rules;
|
1434 |
+
var current_feed_currency = feed_rules.feedCurrency;
|
1435 |
+
}
|
1436 |
+
|
1437 |
+
//get current action name of the page
|
1438 |
+
var queryString = window.location.search;
|
1439 |
+
var urlParams = new URLSearchParams(queryString);
|
1440 |
+
var action = urlParams.get('action');
|
1441 |
+
|
1442 |
$( '.wf_attr.wf_attributes' ).each( function( key, value){
|
1443 |
|
1444 |
var attribute_value = $(value).val();
|
1454 |
|
1455 |
$.each(attribute_list, function (_key, _value){
|
1456 |
if( attribute_value === _key ){
|
1457 |
+
_value = null !== current_feed_currency && "undefined" !== typeof current_feed_currency ? current_feed_currency : _value;
|
1458 |
+
|
1459 |
+
if( "undefined" !== action && "edit-feed" !== action ) {
|
1460 |
$( 'input[name^="suffix"]' ).eq( parseInt( key ) ).val( ' ' + _value );
|
1461 |
+
} else {
|
1462 |
+
$( 'input[name^="suffix"]' ).eq( parseInt( key ) ).val( current_Value );
|
1463 |
}
|
1464 |
|
|
|
1465 |
}
|
1466 |
});
|
1467 |
} );
|
admin/js/woo-feed-admin.min.js
CHANGED
@@ -1,2 +1,2 @@
|
|
1 |
-
"use strict";function _classCallCheck(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function _defineProperties(e,t){for(var o=0;o<t.length;o++){var a=t[o];a.enumerable=a.enumerable||!1,a.configurable=!0,"value"in a&&(a.writable=!0),Object.defineProperty(e,a.key,a)}}function _createClass(e,t,o){return t&&_defineProperties(e.prototype,t),o&&_defineProperties(e,o),e}!function(s,a,c,l,f){s.fn.disabled=function(o){return s(this).each(function(){var e=s(this),t="disabled";void 0!==e.prop(t)?e.prop(t,void 0===o||!0===o):!0===o?e.addClass(t):e.removeClass(t)}),self},s.fn.isDisabled=function(){var e=s(this),t="disabled";return void 0!==e.prop(t)?e.prop(t):e.hasClass(t)};function e(e){s(e.currentTarget).removeClass(function(e,t){return(t.match(/\btooltipped-\S+/g)||[]).join(" ")}).removeClass("tooltipped").removeAttr("aria-label")}function o(e,t){s(e).addClass("tooltipped tooltipped-s").attr("aria-label",t)}function r(e,t){return s.extend(!0,{},e,t)}function t(){n=s(".toClipboard"),!ClipboardJS.isSupported()||/iPhone|iPad/i.test(navigator.userAgent)?n.find("img").hide(0):(n.each(function(){s(this).on("mouseleave",e).on("blur",e)}),new ClipboardJS(".toClipboard").on("error",function(e){var t;o(e.trigger,(t=e.action,e="cut"===t?"X":"C",t=/iPhone|iPad/i.test(navigator.userAgent)?"No support :(":/Mac/i.test(navigator.userAgent)?"Press ⌘-"+e+" to "+t:"Press Ctrl-"+e+" to "+t))}).on("success",function(e){o(e.trigger,"Copied")}))}var n,i,d=function(){function a(e,t,o){_classCallCheck(this,a),this.productCustomFields(e,t,o)}return _createClass(a,[{key:"cacheClear",value:function(){var e={action:"woo_feed_product_attribute_cache_remove",nonce:wpf_ajax_obj.ajax.nonce};s.ajax({method:"POST",url:wpf_ajax_obj.wpf_ajax_url,data:e})}},{key:"productCustomFields",value:function(t){var o=this,e={action:"woo_feed_custom_fields_status_change",nonce:wpf_ajax_obj.ajax.nonce,field:t,status:1<arguments.length&&void 0!==arguments[1]&&arguments[1],isTaxonomy:2<arguments.length?arguments[2]:void 0};s.ajax({method:"POST",url:wpf_ajax_obj.wpf_ajax_url,data:e,success:function(e){e.success?o.cacheClear():console.log(e),s("#"+t+"-switcher").closest("td").find(".switch-loader").hide()}})}}]),a}(),_={in_array:function(e,t){try{return-1!==t.indexOf(e)}catch(e){return!1}},selectize_render_item:function(e,t){return'<div class="item wapk-selectize-item">'.concat(t(e.text),"</div>")},ajax_fail:function(e){console.warn(e),alert(e.hasOwnProperty("statusText")&&e.hasOwnProperty("status")?f.ajax.error+"\n"+e.statusText+" ("+e.status+")":e)},sortable:function(e,o,a,n){return(e||s(".sorted_table")).each(function(){var e=s(this),t=e.find("tbody > tr:eq(0) > td").length||a||9;e.wf_sortable(r({containerSelector:"table",itemPath:"> tbody",itemSelector:"tr",handle:"i.wf_sortedtable",placeholder:'<tr class="placeholder"><td colspan="'.concat(t,'"></td></tr>'),onDrop:function(e,t,o,a){e.removeClass(t.group.options.draggedClass).removeAttr("style"),s("body").removeClass(t.group.options.bodyClass),n&&"function"==typeof n&&n(e,t,o,a)}},o))})},selectize:function(e,t){return(e||s("select.selectize")).not(".selectized").not(".selectize-google-category").each(function(){var e=s(this);e.selectize(r({create:e.data("create")||!1,plugins:e.data("plugins")?e.data("plugins").split(",").map(function(e){return e.trim()}):[],render:{item:_.selectize_render_item}},t))})},fancySelect:function(e,t){return(e||s("select.fancySelect")).not(".FancySelectInit").each(function(){s(this).fancySelect(r({maxItemShow:3},t))})},reindex_config_table:function(){s("#table-1").find("tbody tr").each(function(o,e){s(e).find("[name]").each(function(e,t){s(t).attr("name",s(t).attr("name").replace(/(\[\d\])/g,"[".concat(o,"]")))})})},common:function(){_.sortable(s(".sorted_table"),{},9,_.reindex_config_table),_.selectize(),_.fancySelect(s(".outputType"))}},u={form:null,init:function(){this.form=s(".generateFeed"),this.form.length&&(_.common(),s(c).trigger("feed_editor_init"),s(c).trigger(new jQuery.Event("feedEditor.init",{target:this.form})))},renderMerchantInfo:function(o,a,n){for(var e in n)!function(e){var t;n.hasOwnProperty(e)&&(o.find(".merchant-info-section."+e+" .data").html(n[e]),"feed_file_type"===e&&((t=n[e].split(",").map(function(e){return e.trim().toLowerCase()}).filter(function(e){return""!==e&&e!==f.na.toLowerCase()})).length?(a.find("option").removeAttr("selected").each(function(){var e=s(this);e.val()&&!_.in_array(e.val(),t)?e.disabled(!0):e.disabled(!1)}),1===t.length&&a.find('option[value="'+t[0]+'"]').attr("selected","selected")):a.find("option").disabled(!1)))}(e);o.find(".spinner").removeClass("is-active"),a.disabled(!1),a.trigger("change"),s(c).trigger("woo_feed_config_loaded"),a.parent().find(".spinner").removeClass("is-active")},renderMerchantTemplate:function(o,a){for(var e in a)!function(t){var e;a.hasOwnProperty(t)&&("tabs"===t?o.html(a[t]):(e=s('[name="'+t+'"]')).length&&e.each(function(){var e=s(this);e.is("select")?e.find('[value="'+a[t]+'"]').prop("selected",!0):(e.is("[type=checkbox]")||e.is("[type=radio]"))&&e.val()===a[t]?e.prop("checked",!0):e.val(a[t])}).trigger("change"))}(e);u.init()}},p=[],h=[],g=function(){function e(){_classCallCheck(this,e),this._feed=f.generator.feed,this._limit=f.generator.limit,this._progress=0,this._timer=null,this._color=!1,this._total_batch=0,this._current_batch=0,this._product_ids=[],this._progress_per_batch=0,this._refresh=!0,this._regenerate=f.generator.regenerate,a.isRegenerating=!1,this._all_btn=s(".wpf_regenerate"),this._current_btn=s("#".concat(this._feed.replace("wf_config","wf_feed_"))),this._current_btn_label=""}return _createClass(e,[{key:"init",value:function(){var t=this;""!==this._feed&&this._regenerate&&!1===a.isRegenerating&&this.generate();var e=a.location.search;return"webappick-manage-feeds"===new URLSearchParams(e).get("page")&&s("body").addClass("woo-import-popup-body"),s(c).on("click",".woo-feed-campaign-close-button",function(e){e.preventDefault(),s(this).parent(".woo-feed-promotion").hide();e=s(this).data("condition");1===e&&l.post("woo_feed_hide_promotion",{_ajax_nonce:f.nonce,condition:e}).then(function(e){t._log(e)}).fail(function(e){t._log(e),t._updateProgressStatus(e.message),t._color="red"})}),s(c).on("click",".wpf_regenerate",function(e){e.preventDefault(),t._current_btn=s(this),t._current_btn.hasClass("disabled")||!0===a.isRegenerating||(t._feed=t._current_btn.attr("id").replace("wf_feed_","wf_config"),""!==t._feed&&t.generate())}),this}},{key:"_block_button",value:function(){this._all_btn.length&&this._all_btn.addClass("disabled"),this._current_btn.length&&(this._current_btn.find("span").addClass("wpf_spin reverse_spin"),this._current_btn_label=this._current_btn.attr("title"),this._current_btn.attr("aria-label",f.regenerate).attr("title",f.regenerate))}},{key:"_unblock_button",value:function(){this._all_btn.length&&this._all_btn.removeClass("disabled"),this._current_btn.length&&(this._current_btn.find("span").removeClass("wpf_spin"),this._current_btn.find("span").removeClass("reverse_spin"),this._current_btn.attr("aria-label",this._current_btn_label).attr("title",this._current_btn_label))}},{key:"generate",value:function(){var t=this,o=this;a.isRegenerating=!0,this._block_button(),this._resetProgressBar(),this._progressBarActive(),this._log("Counting Total Products"),this._updateProgressStatus("Fetching products."),this._get_product_ids().then(function(e){t._progress=10,o._log({response:e}),e.success?(o._log("Total ".concat(e.total," Products found.")),o._product_ids=e.product,o._total_batch=t._product_ids.length,o._current_batch=0,o._progress_per_batch=(90-t._progress)/t._total_batch,o._process_batch(),o._updateProgressStatus("Processing Products...")):o._updateProgressStatus(e.data.message)}).fail(function(e){o._log(e),o._updateProgressStatus(e.message),o._color="red",setTimeout(function(){o._stopProgressBar(),o._unblock_button()},1500)})}},{key:"_get_product_ids",value:function(){return this._progress=5,l.post("get_product_information",{_ajax_nonce:f.nonce,feed:this._feed,limit:this._limit})}},{key:"_process_batch",value:function(){var t=this,e="Processing Batch ".concat(this._current_batch+1," of ").concat(this._total_batch);this._updateProgressStatus(e),this._log(e),l.post("make_batch_feed",{_ajax_nonce:f.nonce,feed:this._feed,products:this._product_ids[this._current_batch],loop:this._current_batch}).then(function(e){t._current_batch++,t._log("Batch ".concat(t._current_batch," Completed")),t._log(e),t._current_batch<t._total_batch&&(t._process_batch(),t._progress+=t._progress_per_batch),t._current_batch===t._total_batch&&t._save_feed_file()}).fail(function(e){t._log(e),t._updateProgressStatus(e.message),t._color="red",setTimeout(function(){t._stopProgressBar(),t._unblock_button()},1500)})}},{key:"_save_feed_file",value:function(){var t=this;this._log("Saving feed file"),this._updateProgressStatus("Saving feed file"),l.post("save_feed_file",{_ajax_nonce:f.nonce,feed:this._feed}).then(function(e){t._log(e),t._progress=100,t._refresh&&(a.location.href="".concat(f.pages.list.feed,"&link=").concat(e.url,"&cat=").concat(e.cat)),setTimeout(function(){t._stopProgressBar(),setTimeout(function(){t._resetProgressBar(!0),t._unblock_button()},3e3)},2500)}).fail(function(e){t._log(e),t._updateProgressStatus(e.message),t._color="red",setTimeout(function(){t._stopProgressBar(),t._unblock_button()},1500)})}},{key:"_log",value:function(e){return f.wpf_debug&&console.log(e),this}},{key:"_progressBarActive",value:function(){var e=0<arguments.length&&void 0!==arguments[0]?arguments[0]:0,t=this;return this._toggleProgressBar(!0),this._timer=setInterval(function(){t._updateProgressBar()},e||1e3),this}},{key:"_stopProgressBar",value:function(){return clearInterval(this._timer),this}},{key:"_resetProgressBar",value:function(e){return this._toggleProgressBar(!1),this._updateProgressStatus(""),clearInterval(this._timer),this._color=!1,this._timer=null,this._progress=0,e&&this._updateProgressBar(),this}},{key:"_toggleProgressBar",value:function(e){var t=s("#feed_progress_table");return e?t.show():t.hide(),this}},{key:"_updateProgressStatus",value:function(e){return s(".feed-progress-status").html(e),this}},{key:"_getErrorMessageByCode",value:function(e){s(".feed-progress-status").css({color:this._color}),s(".feed-progress-percentage").css({color:this._color}),s(".wpf_spin").css({color:this._color});var t=e.status+" : "+e.statusText+". ";500===e.status&&(t+="Please increase your PHP max_execution_time. Please <a target='_blank' href='https://webappick.com/docs/woo-feed/faq-for-woocommerce-product-feed/how-to-solve-processing-10-feed-generation-stuck-error/'>read this doc</a>."),this._updateProgressStatus(t)}},{key:"_updateProgressBar",value:function(){var e=s(".feed-progress-percentage"),t=s(".feed-progress-bar-fill"),o="".concat(Math.round(this._progress),"%");t.css({width:o}),e.text(o)}}]),e}();a.wf={helper:_,feedEditor:u,generator:g},s(a).on("load",function(){null!==s(location).attr("href").match(/webappick.*feed/g)&&s("#wpbody-content").addClass("woofeed-body-content"),t(),postboxes.add_postbox_toggles(pagenow),(new g).init(),""!==f.generator.feed&&f.generator.regenerate,u.init(),_.common(),s(".wfmasterTooltip").hover(function(){var e=s(this),t=e.attr("wftitle");e.data("tipText",t).removeAttr("wftitle"),s('<p class="wftooltip"></p>').text(t).appendTo("body").fadeIn("slow")},function(){var e=s(this);e.attr("wftitle",e.data("tipText")),s(".wftooltip").remove()}).mousemove(function(e){s(".wftooltip").css({top:e.pageY+10,left:e.pageX+20})}),s(".generateFeed").validate(),s(c).on("blur",'input[name="wfDAttributeName"]',function(e){e.preventDefault();e=s(this).val();e=(e=e.toLowerCase()).split(" ").join("_"),s("#wfDAttributeCode").val(e)}).on("click","[data-toggle_slide]",function(e){e.preventDefault(),s(s(this).data("toggle_slide")).slideToggle("fast")}).on("click","#wf_newRow",function(){var e=s("#table-1 tbody"),t=s("#feed_config_template").text().trim().replace(/__idx__/g,e.find("tr").length);e.append(t),_.fancySelect(s(".outputType"))}).on("click",".single-feed-delete",function(e){e.preventDefault(),confirm(f.form.del_confirm)&&(a.location.href=s(this).attr("val"))}).on("click",".wf_clean_cache_wrapper",function(e){e.preventDefault();var e=s(".woo-feed-clean-cache-nonce").val(),t=s(".woo-feed-cache-loader");t.show(),l.post("clear_cache_data",{_ajax_clean_nonce:e}).then(function(e){e.success&&(t.hide(),location.reload())}).fail(function(){console.log("something wrong")})}).on("click","#woo-feed-copy-status-btn",function(e){e.preventDefault();var t=s("#woo-feed-copy-status-btn"),e=s("#woo-feed-status-area");t.val("Copied"),e.css("visibility","visible"),e.select(),c.execCommand("copy")}).on("change",".wf_attr.wf_attributes",function(e){e.preventDefault(),s(".fancy-picker-picked").trigger("click");var t,o=s(this).val(),a=s(this).parents("tr").find(".outputType"),e=s(this).parents("tr").find(".fancy-picker-content .fancy-picker-option"),n=s(this).parents("tr").find(".fancy-picker-data span"),r=["price","current_price","sale_price","price_with_tax","current_price_with_tax","sale_price_with_tax","shipping_cost"].includes(o)?(t="for_price","Price"):""!==o&&-1!==o.indexOf("wf_taxo")?(t="for_custom_taxo","parent_if_empty"):(t="for_all","Default");e.removeClass("selected"),"for_custom_taxo"!==t&&"for_price"!==t&&"for_all"!==t||e.each(function(){r===s(this).text()&&(s(this).addClass("selected"),n.text(r),a.find("option").text(r),a.find("option").val(s(this).data("value")))})}).on("click","#doaction, #doaction2",function(){return confirm(f.form.del_confirm_multi)}).on("change",".dType",function(){var e=s(this),t=e.val(),e=e.closest("tr");"pattern"===t?(e.find(".value_attribute").hide(),e.find(".value_pattern").show()):"attribute"===t?(e.find(".value_attribute").show(),e.find(".value_pattern").hide()):"remove"===t&&(e.find(".value_attribute").hide(),e.find(".value_pattern").hide())}).on("click",".delRow",function(e){e.preventDefault(),s(this).closest("tr").remove(),_.reindex_config_table()}).on("submit","#generateFeed",function(){s(this).validate(),s(this).valid()&&s(".makeFeedResponse").show().html('<b style="color: darkblue;"><i class="dashicons dashicons-sos wpf_spin"></i> '.concat(f.form.generate,"</b>"))}).on("submit","#updatefeed",function(e,t){s(this).validate(),s(this).valid()&&s(".makeFeedResponse").show().html('<b style="color: darkblue;"><i class="dashicons dashicons-sos wpf_spin"></i> '.concat(t&&t.save?f.form.save:f.form.generate,"</b>"))}).on("ready woo_feed_config_loaded",function(){"0"===s("#ftpenabled").val()?(s(".google-merchant-message").hide("slow"),s(".woo-feed-ftp .ftpconfig tr:not(.ftpcontroller) input, .woo-feed-ftp .ftpconfig tr:not(.ftpcontroller) select").attr("disabled","disabled")):("google"===s("#provider").val()?s(".google-merchant-message").show("slow"):s(".google-merchant-message").hide("slow"),s(".woo-feed-ftp .ftpconfig tr:not(.ftpcontroller) input, .woo-feed-ftp .ftpconfig tr:not(.ftpcontroller) select").removeAttr("disabled")),s("#ftpenabled").on("change",function(){"0"===s("#ftpenabled").val()?(s(".google-merchant-message").hide("slow"),s(".woo-feed-ftp .ftpconfig tr:not(.ftpcontroller) input, .woo-feed-ftp .ftpconfig tr:not(.ftpcontroller) select").attr("disabled","disabled")):(s(".woo-feed-ftp .ftpconfig tr:not(.ftpcontroller) input, .woo-feed-ftp .ftpconfig tr:not(.ftpcontroller) select").removeAttr("disabled"),"google"===s("#provider").val()?s(".google-merchant-message").show("slow"):s(".google-merchant-message").hide("slow"))})}).on("change",".ftporsftp",function(){var e=s(this).val(),t=s(".ssh2_status");"sftp"===e?(t.show().css("color","dodgerblue").text(f.form.sftp_checking),l.post("get_ssh2_status",{_ajax_nonce:f.nonce,server:e}).then(function(e){"exists"===e?(t.css("color","#2CC185").text(f.form.sftp_available),setTimeout(function(){t.hide()},1500)):t.show().css("color","red").text(f.form.sftp_warning)}).fail(function(e){t.hide(),_.ajax_fail(e)})):t.hide()}).on("click",'[name="save_feed_config"]',function(e){e.preventDefault(),s("#updatefeed").trigger("submit",{save:!0})}).on("change","#provider",function(e){e.preventDefault();var t=s(this).val(),o=s(this).find(":selected").text(),a=s("#filename").val(),n=s("#feedType"),r=s("#providerPage"),i=s("#feed_merchant_info");r.html('<h3><span style="float:none;margin: -3px 0 0;" class="spinner is-active"></span> '+f.form.loading_tmpl+"</h3>"),i.find(".spinner").addClass("is-active"),n.disabled(!0),n.parent().find(".spinner").addClass("is-active"),i.find(".merchant-info-section .data").html(""),p.hasOwnProperty(t)?(u.renderMerchantInfo(i,n,p[t]),s(c).trigger("woo_feed_config_loaded")):l.send("woo_feed_get_merchant_info",{type:"GET",data:{nonce:f.nonce,provider:t,templateName:o}}).then(function(e){p[t]=e,u.renderMerchantInfo(i,n,e)}).then(function(){s(c).trigger("woo_feed_config_loaded")}).fail(_.ajax_fail),h.hasOwnProperty(t)?(u.renderMerchantTemplate(r,h[t]),s(c).trigger("woo_feed_config_loaded")):l.post("get_feed_merchant",{_ajax_nonce:f.nonce,merchant:t}).then(function(e){h[t]=e,u.renderMerchantTemplate(r,e),s("#utm_source").val(o),s("#utm_campaign").val(a),"bing"===t&&(s("#delimiter option").removeAttr("selected"),s('#delimiter option[value="tab"]').attr("selected","selected"),s("#enclosure option").removeAttr("selected"),s('#enclosure option[value=" "]').attr("selected","selected")),"google_product_review"!==t&&s('.wf_attributes option[value="reviewer_name"]').hide()}).then(function(){s(c).trigger("woo_feed_config_loaded")}).fail(_.ajax_fail)}).on("change",".woo_feed_status_input",function(){var e=s(this);l.post("update_feed_status",{_ajax_nonce:f.nonce,feedName:e.val(),status:e[0].checked?1:0})}),s(c).on("change",'[name="is_outOfStock"], [name="product_visibility"]',function(){var e=s(".out-of-stock-visibility");"n"===s('[name="is_outOfStock"]:checked').val()&&"1"===s('[name="product_visibility"]:checked').val()?e.show():e.hide()}).on("change",".attr_type",function(){var e=s(this),t=e.val(),e=e.closest("tr");"pattern"===t?(e.find(".wf_attr").hide(),e.find(".wf_attr").val(""),e.find(".wf_default").show()):(e.find(".wf_attr").show(),e.find(".wf_default").hide(),e.find(".wf_default").val(""))}).on("change",".wf_mattributes, .attr_type",function(){var e=s(this).closest("tr"),t=e.find(".wf_mattributes"),o=e.find(".attr_type"),a=e.find("td:eq(4)"),n=s("#provider").val();f.form.google_category.hasOwnProperty(t.val())&&"pattern"===o.val()&&_.in_array(n,f.form.google_category[t.val()])?0===a.find("select.selectize").length&&(a.find("input.wf_default").remove(),a.append('<span class="wf_default wf_attributes"><select name="default[]" class="selectize"></select></span>'),a.append('<span style="font-size:x-small;"><a style="color: red" href="https://webappick.com/docs/woo-feed/feed-configuration/how-to-map-store-category-with-merchant-category/" target="_blank">'.concat(f.learn_more,"</a></span>")),i||a.append('<span class="spinner is-active" style="margin: 0;"></span>'),e=a.find(".wf_attributes select"),_.selectize(e,{preload:!0,placeholder:f.form.select_category,load:function(e,t){i?t(i):l.send("get_google_categories",{type:"GET",data:{_ajax_nonce:f.nonce,action:"get_google_categories",provider:n}}).then(function(e){t(i=e),a.find(".spinner").remove()}).fail(_.ajax_fail)}})):"current_category"!==t.val()&&0===a.find("input.wf_default").length&&(a.find("span").remove(),a.append('<input autocomplete="off" class="wf_default wf_attributes" type="text" name="default[]" value="">'),"pattern"!==o.val()&&a.find("input.wf_default").hide())}).on("change","#feedType,#provider",function(e){var t=s("#feedType").val(),o=s("#provider").val(),a=s(".itemWrapper"),n=s(".wf_csvtxt");""!==t&&_.in_array(o,f.form.item_wrapper_hidden)&&a.hide(),"feedType"===e.target.id&&("csv"===t||"txt"===t||"tsv"===t?(n.show(),a.hide(),"tsv"===t?s("#delimiter option:last").prop("selected","selected"):"csv"===t&&s("#delimiter option:first").prop("selected","selected")):"xml"===t&&"custom"===o?(a.show(),n.hide()):"json"===t&&n.hide()),"custom"!==o&&a.hide()}).trigger("change"),s(c).on("click",'.woofeed-custom-fields [id*="-switcher"]',function(){s(this).closest("td").find(".switch-loader").show();var e=s(this).attr("id").split("-")[0],t=s(this).data("taxonomy"),o=s(this).prop("checked");new d(e,o,t)}).ready(function(){var e=s(".wapk-feed-buy-now-container");s(a).scroll(function(){s(a).scrollTop()<=5e3?e.addClass("fixed"):e.removeClass("fixed")})})}),s(c).on("click","#woo-feed-debug-log-download",function(e){e.preventDefault(),s("<a />",{download:new Date+".log",href:URL.createObjectURL(new Blob([s("#woo-feed-debug-log").val()],{type:"text/plain"}))}).appendTo("body")[0].click()}).on("keyup","#filename",function(){var e=s("#filename").val();s("#utm_campaign").val(e)}).on("click",".wf-tab-name",function(e){s(".wf-tab-name.activate").removeClass("activate"),s(this).addClass("activate");var t=s(this).attr("for");s(".wf_tabs li.active").removeClass("active"),s(".wf_tabs .wf-tab-content#"+t).parent().addClass("active")}).on("change","#category-mapping-form #providers",function(){var e=s(this).find(":selected").val();-1!==["google","facebook","pinterest","bing","bing_local_inventory","snapchat"].indexOf(e)?(s('input[id*="cat_mapping_"]').css("display","none"),s(".wf_default.wf_attributes").css("display","block").css("width","100%")):(s('input[id*="cat_mapping_"]').css("display","block"),s(".wf_default.wf_attributes").css("display","none").css("width","100%"))}).on("click",'span[id*="cat-map-"]',function(e){e.preventDefault();var o,t=s("#category-mapping-form #providers").val(),a=s(this).attr("id").replace(/[^\d.]/g,""),e="group-child-"+a;-1!==["google","facebook","pinterest","bing","bing_local_inventory","snapchat"].indexOf(t)?(o=s(this).parents("tr").find(".selectized").val())&&s("."+e).parents("tr").find("select").each(function(e,t){s(t).data("selectize").setValue(o)}):(a=s("#cat_mapping_"+a).val(),s("."+e).parents("tr").find("input").val(a))}),s(c).ready(function(){l.send("get_google_categories",{type:"GET",data:{_ajax_nonce:f.nonce,action:"get_google_categories"}}).then(function(e){s(".selectize-google-category").selectize({valueField:"value",labelField:"text",placeholder:"Select a category",searchField:["value","text"],options:e,render:{option:function(e,t){return'<div class="item wapk-selectize-item">'.concat(t(e.value+" - "+e.text),"</div>")},item:function(e,t){return'<div class="item wapk-selectize-item">'.concat(t(e.value+" - "+e.text),"</div>")}}})}).fail(_.ajax_fail)}),s(c).on("feed_editor_init",function(){var t=s(".merchant-info-section.feed_file_type .data").html().split(",").map(function(e){return e.trim().toLowerCase()}),e=s("#feedType");t.length?(e.find("option").each(function(){var e=s(this);e.val()&&!_.in_array(e.val(),t)?e.disabled(!0):e.disabled(!1)}),1===t.length&&e.find('option[value="'+t[0]+'"]').attr("selected","selected")):e.find("option").disabled(!1)}),s(c).on("ready",function(){s(c).on("feedEditor.init",function(){var t;t={price:wpf_ajax_obj.woocommerce.currency,current_price:wpf_ajax_obj.woocommerce.currency,sale_price:wpf_ajax_obj.woocommerce.currency,price_with_tax:wpf_ajax_obj.woocommerce.currency,current_price_with_tax:wpf_ajax_obj.woocommerce.currency,sale_price_with_tax:wpf_ajax_obj.woocommerce.currency,weight:wpf_ajax_obj.woocommerce.weight,weight_unit:wpf_ajax_obj.woocommerce.weight,height:wpf_ajax_obj.woocommerce.dimension,length:wpf_ajax_obj.woocommerce.dimension,width:wpf_ajax_obj.woocommerce.dimension},s(".wf_attr.wf_attributes").each(function(o,e){var a=s(e).val(),e=s('input[name^="suffix"]').eq(parseInt(o)).val();-1!==s.inArray(e,[" "+wpf_ajax_obj.woocommerce.currency," "+wpf_ajax_obj.woocommerce.weight," "+wpf_ajax_obj.woocommerce.dimension])&&s('input[name^="suffix"]').eq(parseInt(o)).val(""),s.each(t,function(e,t){a===e&&""===s('input[name^="suffix"]').eq(parseInt(o)).val()&&s('input[name^="suffix"]').eq(parseInt(o)).val(" "+t)})}),s(c).trigger("feedEditor.after.free.postfix.update")})})}(jQuery,window,document,wp.ajax,wpf_ajax_obj);
|
2 |
//# sourceMappingURL=woo-feed-admin.min.js.map
|
1 |
+
"use strict";function _classCallCheck(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function _defineProperties(e,t){for(var o=0;o<t.length;o++){var a=t[o];a.enumerable=a.enumerable||!1,a.configurable=!0,"value"in a&&(a.writable=!0),Object.defineProperty(e,a.key,a)}}function _createClass(e,t,o){return t&&_defineProperties(e.prototype,t),o&&_defineProperties(e,o),e}!function(s,a,c,l,f){s.fn.disabled=function(o){return s(this).each(function(){var e=s(this),t="disabled";void 0!==e.prop(t)?e.prop(t,void 0===o||!0===o):!0===o?e.addClass(t):e.removeClass(t)}),self},s.fn.isDisabled=function(){var e=s(this),t="disabled";return void 0!==e.prop(t)?e.prop(t):e.hasClass(t)};function e(e){s(e.currentTarget).removeClass(function(e,t){return(t.match(/\btooltipped-\S+/g)||[]).join(" ")}).removeClass("tooltipped").removeAttr("aria-label")}function o(e,t){s(e).addClass("tooltipped tooltipped-s").attr("aria-label",t)}function i(e,t){return s.extend(!0,{},e,t)}function t(){n=s(".toClipboard"),!ClipboardJS.isSupported()||/iPhone|iPad/i.test(navigator.userAgent)?n.find("img").hide(0):(n.each(function(){s(this).on("mouseleave",e).on("blur",e)}),new ClipboardJS(".toClipboard").on("error",function(e){var t;o(e.trigger,(t=e.action,e="cut"===t?"X":"C",t=/iPhone|iPad/i.test(navigator.userAgent)?"No support :(":/Mac/i.test(navigator.userAgent)?"Press ⌘-"+e+" to "+t:"Press Ctrl-"+e+" to "+t))}).on("success",function(e){o(e.trigger,"Copied")}))}var n,r,d,_=function(){function a(e,t,o){_classCallCheck(this,a),this.productCustomFields(e,t,o)}return _createClass(a,[{key:"cacheClear",value:function(){var e={action:"woo_feed_product_attribute_cache_remove",nonce:wpf_ajax_obj.ajax.nonce};s.ajax({method:"POST",url:wpf_ajax_obj.wpf_ajax_url,data:e})}},{key:"productCustomFields",value:function(t){var o=this,e={action:"woo_feed_custom_fields_status_change",nonce:wpf_ajax_obj.ajax.nonce,field:t,status:1<arguments.length&&void 0!==arguments[1]&&arguments[1],isTaxonomy:2<arguments.length?arguments[2]:void 0};s.ajax({method:"POST",url:wpf_ajax_obj.wpf_ajax_url,data:e,success:function(e){e.success?o.cacheClear():console.log(e),s("#"+t+"-switcher").closest("td").find(".switch-loader").hide()}})}}]),a}(),u=function(){function e(){_classCallCheck(this,e)}return _createClass(e,[{key:"wooFeed_get_google_categories",value:function(){l.send("get_google_categories",{type:"GET",data:{_ajax_nonce:f.nonce,action:"get_google_categories"}}).then(function(e){s(".selectize-google-category").selectize({valueField:"value",labelField:"text",placeholder:"Select a category",searchField:["value","text"],options:e,render:{option:function(e,t){return'<div class="item wapk-selectize-item">'.concat(t(e.value+" - "+e.text),"</div>")},item:function(e,t){return'<div class="item wapk-selectize-item">'.concat(t(e.value+" - "+e.text),"</div>")}}})}).fail(p.ajax_fail)}},{key:"wooFeed_get_facebook_categories",value:function(){l.send("get_facebook_categories",{type:"GET",data:{_ajax_nonce:f.nonce,action:"get_facebook_categories"}}).then(function(e){s(".selectize-google-category").selectize({valueField:"value",labelField:"text",placeholder:"Select a Facebook category",searchField:["value","text"],options:e,render:{option:function(e,t){return'<div class="item wapk-selectize-item">'.concat(t(e.value+" - "+e.text),"</div>")},item:function(e,t){return'<div class="item wapk-selectize-item">'.concat(t(e.value+" - "+e.text),"</div>")}}})}).fail(p.ajax_fail)}}]),e}(),p={in_array:function(e,t){try{return-1!==t.indexOf(e)}catch(e){return!1}},selectize_render_item:function(e,t){return'<div class="item wapk-selectize-item">'.concat(t(e.text),"</div>")},ajax_fail:function(e){console.warn(e),alert(e.hasOwnProperty("statusText")&&e.hasOwnProperty("status")?f.ajax.error+"\n"+e.statusText+" ("+e.status+")":e)},sortable:function(e,o,a,n){return(e||s(".sorted_table")).each(function(){var e=s(this),t=e.find("tbody > tr:eq(0) > td").length||a||9;e.wf_sortable(i({containerSelector:"table",itemPath:"> tbody",itemSelector:"tr",handle:"i.wf_sortedtable",placeholder:'<tr class="placeholder"><td colspan="'.concat(t,'"></td></tr>'),onDrop:function(e,t,o,a){e.removeClass(t.group.options.draggedClass).removeAttr("style"),s("body").removeClass(t.group.options.bodyClass),n&&"function"==typeof n&&n(e,t,o,a)}},o))})},selectize:function(e,t){return(e||s("select.selectize")).not(".selectized").not(".selectize-google-category").each(function(){var e=s(this);e.selectize(i({create:e.data("create")||!1,plugins:e.data("plugins")?e.data("plugins").split(",").map(function(e){return e.trim()}):[],render:{item:p.selectize_render_item}},t))})},fancySelect:function(e,t){return(e||s("select.fancySelect")).not(".FancySelectInit").each(function(){s(this).fancySelect(i({maxItemShow:3},t))})},reindex_config_table:function(){s("#table-1").find("tbody tr").each(function(o,e){s(e).find("[name]").each(function(e,t){s(t).attr("name",s(t).attr("name").replace(/(\[\d\])/g,"[".concat(o,"]")))})})},common:function(){p.sortable(s(".sorted_table"),{},9,p.reindex_config_table),p.selectize(),p.fancySelect(s(".outputType"))}},h={form:null,init:function(){this.form=s(".generateFeed"),this.form.length&&(p.common(),s(c).trigger("feed_editor_init"),s(c).trigger(new jQuery.Event("feedEditor.init",{target:this.form})))},renderMerchantInfo:function(o,a,n){for(var e in n)!function(e){var t;n.hasOwnProperty(e)&&(o.find(".merchant-info-section."+e+" .data").html(n[e]),"feed_file_type"===e&&((t=n[e].split(",").map(function(e){return e.trim().toLowerCase()}).filter(function(e){return""!==e&&e!==f.na.toLowerCase()})).length?(a.find("option").removeAttr("selected").each(function(){var e=s(this);e.val()&&!p.in_array(e.val(),t)?e.disabled(!0):e.disabled(!1)}),1===t.length&&a.find('option[value="'+t[0]+'"]').attr("selected","selected")):a.find("option").disabled(!1)))}(e);o.find(".spinner").removeClass("is-active"),a.disabled(!1),a.trigger("change"),s(c).trigger("woo_feed_config_loaded"),a.parent().find(".spinner").removeClass("is-active")},renderMerchantTemplate:function(o,a){for(var e in a)!function(t){var e;a.hasOwnProperty(t)&&("tabs"===t?o.html(a[t]):(e=s('[name="'+t+'"]')).length&&e.each(function(){var e=s(this);e.is("select")?e.find('[value="'+a[t]+'"]').prop("selected",!0):(e.is("[type=checkbox]")||e.is("[type=radio]"))&&e.val()===a[t]?e.prop("checked",!0):e.val(a[t])}).trigger("change"))}(e);h.init()}},g=[],v=[],m=function(){function e(){_classCallCheck(this,e),this._feed=f.generator.feed,this._limit=f.generator.limit,this._progress=0,this._timer=null,this._color=!1,this._total_batch=0,this._current_batch=0,this._product_ids=[],this._progress_per_batch=0,this._refresh=!0,this._regenerate=f.generator.regenerate,a.isRegenerating=!1,this._all_btn=s(".wpf_regenerate"),this._current_btn=s("#".concat(this._feed.replace("wf_config","wf_feed_"))),this._current_btn_label=""}return _createClass(e,[{key:"init",value:function(){var t=this;""!==this._feed&&this._regenerate&&!1===a.isRegenerating&&this.generate();var e=a.location.search;return"webappick-manage-feeds"===new URLSearchParams(e).get("page")&&s("body").addClass("woo-import-popup-body"),s(c).on("click",".woo-feed-campaign-close-button",function(e){e.preventDefault(),s(this).parent(".woo-feed-promotion").hide();e=s(this).data("condition");1===e&&l.post("woo_feed_hide_promotion",{_ajax_nonce:f.nonce,condition:e}).then(function(e){t._log(e)}).fail(function(e){t._log(e),t._updateProgressStatus(e.message),t._color="red"})}),s(c).on("click",".wpf_regenerate",function(e){e.preventDefault(),t._current_btn=s(this),t._current_btn.hasClass("disabled")||!0===a.isRegenerating||(t._feed=t._current_btn.attr("id").replace("wf_feed_","wf_config"),""!==t._feed&&t.generate())}),this}},{key:"_block_button",value:function(){this._all_btn.length&&this._all_btn.addClass("disabled"),this._current_btn.length&&(this._current_btn.find("span").addClass("wpf_spin reverse_spin"),this._current_btn_label=this._current_btn.attr("title"),this._current_btn.attr("aria-label",f.regenerate).attr("title",f.regenerate))}},{key:"_unblock_button",value:function(){this._all_btn.length&&this._all_btn.removeClass("disabled"),this._current_btn.length&&(this._current_btn.find("span").removeClass("wpf_spin"),this._current_btn.find("span").removeClass("reverse_spin"),this._current_btn.attr("aria-label",this._current_btn_label).attr("title",this._current_btn_label))}},{key:"generate",value:function(){var t=this,o=this;a.isRegenerating=!0,this._block_button(),this._resetProgressBar(),this._progressBarActive(),this._log("Counting Total Products"),this._updateProgressStatus("Fetching products."),this._get_product_ids().then(function(e){t._progress=10,o._log({response:e}),e.success?(o._log("Total ".concat(e.total," Products found.")),o._product_ids=e.product,o._total_batch=t._product_ids.length,o._current_batch=0,o._progress_per_batch=(90-t._progress)/t._total_batch,o._process_batch(),o._updateProgressStatus("Processing Products...")):o._updateProgressStatus(e.data.message)}).fail(function(e){o._log(e),o._updateProgressStatus(e.message),o._color="red",setTimeout(function(){o._stopProgressBar(),o._unblock_button()},1500)})}},{key:"_get_product_ids",value:function(){return this._progress=5,l.post("get_product_information",{_ajax_nonce:f.nonce,feed:this._feed,limit:this._limit})}},{key:"_process_batch",value:function(){var t=this,e="Processing Batch ".concat(this._current_batch+1," of ").concat(this._total_batch);this._updateProgressStatus(e),this._log(e),l.post("make_batch_feed",{_ajax_nonce:f.nonce,feed:this._feed,products:this._product_ids[this._current_batch],loop:this._current_batch}).then(function(e){t._current_batch++,t._log("Batch ".concat(t._current_batch," Completed")),t._log(e),t._current_batch<t._total_batch&&(t._process_batch(),t._progress+=t._progress_per_batch),t._current_batch===t._total_batch&&t._save_feed_file()}).fail(function(e){t._log(e),t._updateProgressStatus(e.message),t._color="red",setTimeout(function(){t._stopProgressBar(),t._unblock_button()},1500)})}},{key:"_save_feed_file",value:function(){var t=this;this._log("Saving feed file"),this._updateProgressStatus("Saving feed file"),l.post("save_feed_file",{_ajax_nonce:f.nonce,feed:this._feed}).then(function(e){t._log(e),t._progress=100,t._refresh&&(a.location.href="".concat(f.pages.list.feed,"&link=").concat(e.url,"&cat=").concat(e.cat)),setTimeout(function(){t._stopProgressBar(),setTimeout(function(){t._resetProgressBar(!0),t._unblock_button()},3e3)},2500)}).fail(function(e){t._log(e),t._updateProgressStatus(e.message),t._color="red",setTimeout(function(){t._stopProgressBar(),t._unblock_button()},1500)})}},{key:"_log",value:function(e){return f.wpf_debug&&console.log(e),this}},{key:"_progressBarActive",value:function(){var e=0<arguments.length&&void 0!==arguments[0]?arguments[0]:0,t=this;return this._toggleProgressBar(!0),this._timer=setInterval(function(){t._updateProgressBar()},e||1e3),this}},{key:"_stopProgressBar",value:function(){return clearInterval(this._timer),this}},{key:"_resetProgressBar",value:function(e){return this._toggleProgressBar(!1),this._updateProgressStatus(""),clearInterval(this._timer),this._color=!1,this._timer=null,this._progress=0,e&&this._updateProgressBar(),this}},{key:"_toggleProgressBar",value:function(e){var t=s("#feed_progress_table");return e?t.show():t.hide(),this}},{key:"_updateProgressStatus",value:function(e){return s(".feed-progress-status").html(e),this}},{key:"_getErrorMessageByCode",value:function(e){s(".feed-progress-status").css({color:this._color}),s(".feed-progress-percentage").css({color:this._color}),s(".wpf_spin").css({color:this._color});var t=e.status+" : "+e.statusText+". ";500===e.status&&(t+="Please increase your PHP max_execution_time. Please <a target='_blank' href='https://webappick.com/docs/woo-feed/faq-for-woocommerce-product-feed/how-to-solve-processing-10-feed-generation-stuck-error/'>read this doc</a>."),this._updateProgressStatus(t)}},{key:"_updateProgressBar",value:function(){var e=s(".feed-progress-percentage"),t=s(".feed-progress-bar-fill"),o="".concat(Math.round(this._progress),"%");t.css({width:o}),e.text(o)}}]),e}();a.wf={helper:p,feedEditor:h,generator:m},s(a).on("load",function(){null!==s(location).attr("href").match(/webappick.*feed/g)&&s("#wpbody-content").addClass("woofeed-body-content"),t(),postboxes.add_postbox_toggles(pagenow),(new m).init(),""!==f.generator.feed&&f.generator.regenerate,h.init(),p.common(),s(".wfmasterTooltip").hover(function(){var e=s(this),t=e.attr("wftitle");e.data("tipText",t).removeAttr("wftitle"),s('<p class="wftooltip"></p>').text(t).appendTo("body").fadeIn("slow")},function(){var e=s(this);e.attr("wftitle",e.data("tipText")),s(".wftooltip").remove()}).mousemove(function(e){s(".wftooltip").css({top:e.pageY+10,left:e.pageX+20})}),s(".generateFeed").validate(),s(c).on("blur",'input[name="wfDAttributeName"]',function(e){e.preventDefault();e=s(this).val();e=(e=e.toLowerCase()).split(" ").join("_"),s("#wfDAttributeCode").val(e)}).on("click","[data-toggle_slide]",function(e){e.preventDefault(),s(s(this).data("toggle_slide")).slideToggle("fast")}).on("click","#wf_newRow",function(){var e=s("#table-1 tbody"),t=s("#feed_config_template").text().trim().replace(/__idx__/g,e.find("tr").length);e.append(t),p.fancySelect(s(".outputType"))}).on("click",".single-feed-delete",function(e){e.preventDefault(),confirm(f.form.del_confirm)&&(a.location.href=s(this).attr("val"))}).on("click",".wf_clean_cache_wrapper",function(e){e.preventDefault();var e=s(".woo-feed-clean-cache-nonce").val(),t=s(".woo-feed-cache-loader");t.show(),l.post("clear_cache_data",{_ajax_clean_nonce:e}).then(function(e){e.success&&(t.hide(),location.reload())}).fail(function(){console.log("something wrong")})}).on("click","#woo-feed-copy-status-btn",function(e){e.preventDefault();var t=s("#woo-feed-copy-status-btn"),e=s("#woo-feed-status-area");t.val("Copied"),e.css("visibility","visible"),e.select(),c.execCommand("copy")}).on("change",".wf_attr.wf_attributes",function(e){e.preventDefault(),s(".fancy-picker-picked").trigger("click");var t,o=s(this).val(),a=s(this).parents("tr").find(".outputType"),e=s(this).parents("tr").find(".fancy-picker-content .fancy-picker-option"),n=s(this).parents("tr").find(".fancy-picker-data span"),i=["price","current_price","sale_price","price_with_tax","current_price_with_tax","sale_price_with_tax","shipping_cost"].includes(o)?(t="for_price","Price"):""!==o&&-1!==o.indexOf("wf_taxo")?(t="for_custom_taxo","parent_if_empty"):(t="for_all","Default");e.removeClass("selected"),"for_custom_taxo"===t||"for_price"===t?(e.each(function(){i===s(this).text()&&(s(this).addClass("selected"),n.text(i),a.find("option").text(i),a.find("option").val(s(this).data("value")))}),"for_price"===t&&(t=null!=(t=s("#feedCurrency").val())?t:wpf_ajax_obj.woocommerce.currency,s(this).closest("tr").find("td:eq(5) input").val(" "+t))):(e.each(function(){i===s(this).text()&&(s(this).addClass("selected"),n.text(i),a.find("option").text(i),a.find("option").val(s(this).data("value")))}),s(this).closest("tr").find("td:eq(5) input").val(""))}).on("click","#doaction, #doaction2",function(){return confirm(f.form.del_confirm_multi)}).on("change",".dType",function(){var e=s(this),t=e.val(),e=e.closest("tr");"pattern"===t?(e.find(".value_attribute").hide(),e.find(".value_pattern").show()):"attribute"===t?(e.find(".value_attribute").show(),e.find(".value_pattern").hide()):"remove"===t&&(e.find(".value_attribute").hide(),e.find(".value_pattern").hide())}).on("click",".delRow",function(e){e.preventDefault(),s(this).closest("tr").remove(),p.reindex_config_table()}).on("submit","#generateFeed",function(){s(this).validate(),s(this).valid()&&s(".makeFeedResponse").show().html('<b style="color: darkblue;"><i class="dashicons dashicons-sos wpf_spin"></i> '.concat(f.form.generate,"</b>"))}).on("submit","#updatefeed",function(e,t){s(this).validate(),s(this).valid()&&s(".makeFeedResponse").show().html('<b style="color: darkblue;"><i class="dashicons dashicons-sos wpf_spin"></i> '.concat(t&&t.save?f.form.save:f.form.generate,"</b>"))}).on("ready woo_feed_config_loaded",function(){"0"===s("#ftpenabled").val()?(s(".google-merchant-message").hide("slow"),s(".woo-feed-ftp .ftpconfig tr:not(.ftpcontroller) input, .woo-feed-ftp .ftpconfig tr:not(.ftpcontroller) select").attr("disabled","disabled")):("google"===s("#provider").val()?s(".google-merchant-message").show("slow"):s(".google-merchant-message").hide("slow"),s(".woo-feed-ftp .ftpconfig tr:not(.ftpcontroller) input, .woo-feed-ftp .ftpconfig tr:not(.ftpcontroller) select").removeAttr("disabled")),s("#ftpenabled").on("change",function(){"0"===s("#ftpenabled").val()?(s(".google-merchant-message").hide("slow"),s(".woo-feed-ftp .ftpconfig tr:not(.ftpcontroller) input, .woo-feed-ftp .ftpconfig tr:not(.ftpcontroller) select").attr("disabled","disabled")):(s(".woo-feed-ftp .ftpconfig tr:not(.ftpcontroller) input, .woo-feed-ftp .ftpconfig tr:not(.ftpcontroller) select").removeAttr("disabled"),"google"===s("#provider").val()?s(".google-merchant-message").show("slow"):s(".google-merchant-message").hide("slow"))})}).on("change",".ftporsftp",function(){var e=s(this).val(),t=s(".ssh2_status");"sftp"===e?(t.show().css("color","dodgerblue").text(f.form.sftp_checking),l.post("get_ssh2_status",{_ajax_nonce:f.nonce,server:e}).then(function(e){"exists"===e?(t.css("color","#2CC185").text(f.form.sftp_available),setTimeout(function(){t.hide()},1500)):t.show().css("color","red").text(f.form.sftp_warning)}).fail(function(e){t.hide(),p.ajax_fail(e)})):t.hide()}).on("click",'[name="save_feed_config"]',function(e){e.preventDefault(),s("#updatefeed").trigger("submit",{save:!0})}).on("change","#provider",function(e){e.preventDefault();var t=s(this).val(),o=s(this).find(":selected").text(),a=s("#filename").val(),n=s("#feedType"),i=s("#providerPage"),r=s("#feed_merchant_info");i.html('<h3><span style="float:none;margin: -3px 0 0;" class="spinner is-active"></span> '+f.form.loading_tmpl+"</h3>"),r.find(".spinner").addClass("is-active"),n.disabled(!0),n.parent().find(".spinner").addClass("is-active"),r.find(".merchant-info-section .data").html(""),g.hasOwnProperty(t)?(h.renderMerchantInfo(r,n,g[t]),s(c).trigger("woo_feed_config_loaded")):l.send("woo_feed_get_merchant_info",{type:"GET",data:{nonce:f.nonce,provider:t,templateName:o}}).then(function(e){g[t]=e,h.renderMerchantInfo(r,n,e)}).then(function(){s(c).trigger("woo_feed_config_loaded")}).fail(p.ajax_fail),v.hasOwnProperty(t)?(h.renderMerchantTemplate(i,v[t]),s(c).trigger("woo_feed_config_loaded")):l.post("get_feed_merchant",{_ajax_nonce:f.nonce,merchant:t}).then(function(e){v[t]=e,h.renderMerchantTemplate(i,e),s("#utm_source").val(o),s("#utm_campaign").val(a),"bing"===t&&(s("#delimiter option").removeAttr("selected"),s('#delimiter option[value="tab"]').attr("selected","selected"),s("#enclosure option").removeAttr("selected"),s('#enclosure option[value=" "]').attr("selected","selected")),"google_product_review"!==t&&s('.wf_attributes option[value="reviewer_name"]').hide()}).then(function(){s(c).trigger("woo_feed_config_loaded")}).fail(p.ajax_fail)}).on("change",".woo_feed_status_input",function(){var e=s(this);l.post("update_feed_status",{_ajax_nonce:f.nonce,feedName:e.val(),status:e[0].checked?1:0})}),s(c).on("change",'[name="is_outOfStock"], [name="product_visibility"]',function(){var e=s(".out-of-stock-visibility");"n"===s('[name="is_outOfStock"]:checked').val()&&"1"===s('[name="product_visibility"]:checked').val()?e.show():e.hide()}).on("change",".attr_type",function(){var e=s(this),t=e.val(),e=e.closest("tr");"pattern"===t?(e.find(".wf_attr").hide(),e.find(".wf_attr").val(""),e.find(".wf_default").show()):(e.find(".wf_attr").show(),e.find(".wf_default").hide(),e.find(".wf_default").val(""))}).on("change",".wf_mattributes, .attr_type",function(){var e=s(this).closest("tr"),o=e.find(".wf_mattributes"),t=e.find(".attr_type"),a=e.find("td:eq(4)"),n=s("#provider").val();f.form.google_category.hasOwnProperty(o.val())&&"pattern"===t.val()&&p.in_array(n,f.form.google_category[o.val()])?0===a.find("select.selectize").length&&(a.find("input.wf_default").remove(),a.append('<span class="wf_default wf_attributes"><select name="default[]" class="selectize"></select></span>'),a.append('<span style="font-size:x-small;"><a style="color: red" href="https://webappick.com/docs/woo-feed/feed-configuration/how-to-map-store-category-with-merchant-category/" target="_blank">'.concat(f.learn_more,"</a></span>")),r&&d||a.append('<span class="spinner is-active" style="margin: 0;"></span>'),e=a.find(".wf_attributes select"),p.selectize(e,{preload:!0,placeholder:f.form.select_category,load:function(e,t){r?t(r):l.send("get_google_categories",{type:"GET",data:{_ajax_nonce:f.nonce,action:"get_google_categories",provider:n}}).then(function(e){t(r=e),a.find(".spinner").remove()}).fail(p.ajax_fail),d||"facebook"!==n||"fb_product_category"!==o.val()?t(d):l.send("get_facebook_categories",{type:"GET",data:{_ajax_nonce:f.nonce,action:"get_facebook_categories",provider:n}}).then(function(e){t(d=e),a.find(".spinner").remove()}).fail(p.ajax_fail)}})):"current_category"!==o.val()&&0===a.find("input.wf_default").length&&(a.find("span").remove(),a.append('<input autocomplete="off" class="wf_default wf_attributes" type="text" name="default[]" value="">'),"pattern"!==t.val()&&a.find("input.wf_default").hide())}).on("change","#feedType,#provider",function(e){var t=s("#feedType").val(),o=s("#provider").val(),a=s(".itemWrapper"),n=s(".wf_csvtxt");""!==t&&p.in_array(o,f.form.item_wrapper_hidden)&&a.hide(),"feedType"===e.target.id&&("csv"===t||"txt"===t||"tsv"===t?(n.show(),a.hide(),"tsv"===t?s("#delimiter option:last").prop("selected","selected"):"csv"===t&&s("#delimiter option:first").prop("selected","selected")):"xml"===t&&"custom"===o?(a.show(),n.hide()):"json"===t&&n.hide()),"custom"!==o&&a.hide()}).trigger("change"),s(c).on("click",'.woofeed-custom-fields [id*="-switcher"]',function(){s(this).closest("td").find(".switch-loader").show();var e=s(this).attr("id").split("-")[0],t=s(this).data("taxonomy"),o=s(this).prop("checked");new _(e,o,t)}).ready(function(){var e=s(".wapk-feed-buy-now-container");s(a).scroll(function(){s(a).scrollTop()<=5e3?e.addClass("fixed"):e.removeClass("fixed")})})}),s(c).on("click","#woo-feed-debug-log-download",function(e){e.preventDefault(),s("<a />",{download:new Date+".log",href:URL.createObjectURL(new Blob([s("#woo-feed-debug-log").val()],{type:"text/plain"}))}).appendTo("body")[0].click()}).on("keyup","#filename",function(){var e=s("#filename").val();s("#utm_campaign").val(e)}).on("click",".wf-tab-name",function(e){s(".wf-tab-name.activate").removeClass("activate"),s(this).addClass("activate");var t=s(this).attr("for");s(".wf_tabs li.active").removeClass("active"),s(".wf_tabs .wf-tab-content#"+t).parent().addClass("active")}).on("change","#category-mapping-form #providers",function(){var e,t=s(this).find(":selected").val();-1!==["google","facebook","pinterest","bing","bing_local_inventory","snapchat"].indexOf(t)?(s('input[id*="cat_mapping_"]').css("display","none"),s(".wf_default.wf_attributes").css("display","block").css("width","100%"),e=new u,"facebook"===t?e.wooFeed_get_facebook_categories():e.wooFeed_get_google_categories()):(s('input[id*="cat_mapping_"]').css("display","block"),s(".wf_default.wf_attributes").css("display","none").css("width","100%"))}).on("click",'span[id*="cat-map-"]',function(e){e.preventDefault();var o,t=s("#category-mapping-form #providers").val(),a=s(this).attr("id").replace(/[^\d.]/g,""),e="group-child-"+a;-1!==["google","facebook","pinterest","bing","bing_local_inventory","snapchat"].indexOf(t)?(o=s(this).parents("tr").find(".selectized").val())&&s("."+e).parents("tr").find("select").each(function(e,t){s(t).data("selectize").setValue(o)}):(a=s("#cat_mapping_"+a).val(),s("."+e).parents("tr").find("input").val(a))}),s(c).ready(function(){var e=s("#providers").val(),t=new u;"facebook"===e?t.wooFeed_get_facebook_categories():t.wooFeed_get_google_categories()}),s(c).on("feed_editor_init",function(){var t=s(".merchant-info-section.feed_file_type .data").html().split(",").map(function(e){return e.trim().toLowerCase()}),e=s("#feedType");t.length?(e.find("option").each(function(){var e=s(this);e.val()&&!p.in_array(e.val(),t)?e.disabled(!0):e.disabled(!1)}),1===t.length&&e.find('option[value="'+t[0]+'"]').attr("selected","selected")):e.find("option").disabled(!1)}),s(c).on("ready",function(){s(c).on("feedEditor.init",function(){!function(){var i,t={price:wpf_ajax_obj.woocommerce.currency,current_price:wpf_ajax_obj.woocommerce.currency,sale_price:wpf_ajax_obj.woocommerce.currency,price_with_tax:wpf_ajax_obj.woocommerce.currency,current_price_with_tax:wpf_ajax_obj.woocommerce.currency,sale_price_with_tax:wpf_ajax_obj.woocommerce.currency,weight:wpf_ajax_obj.woocommerce.weight,weight_unit:wpf_ajax_obj.woocommerce.weight,height:wpf_ajax_obj.woocommerce.dimension,length:wpf_ajax_obj.woocommerce.dimension,width:wpf_ajax_obj.woocommerce.dimension};void 0!==wpf_ajax_obj.feed_rules&&null!==wpf_ajax_obj.feed_rules&&(i=wpf_ajax_obj.feed_rules.feedCurrency);var e=a.location.search,r=new URLSearchParams(e).get("action");s(".wf_attr.wf_attributes").each(function(o,e){var a=s(e).val(),n=s('input[name^="suffix"]').eq(parseInt(o)).val();-1!==s.inArray(n,[" "+wpf_ajax_obj.woocommerce.currency," "+wpf_ajax_obj.woocommerce.weight," "+wpf_ajax_obj.woocommerce.dimension])&&s('input[name^="suffix"]').eq(parseInt(o)).val(""),s.each(t,function(e,t){a===e&&(t=null!=i?i:t,"undefined"!==r&&"edit-feed"!==r?s('input[name^="suffix"]').eq(parseInt(o)).val(" "+t):s('input[name^="suffix"]').eq(parseInt(o)).val(n))})}),s(c).trigger("feedEditor.after.free.postfix.update")}()})})}(jQuery,window,document,wp.ajax,wpf_ajax_obj);
|
2 |
//# sourceMappingURL=woo-feed-admin.min.js.map
|
admin/js/woo-feed-admin.min.js.map
CHANGED
@@ -1 +1 @@
|
|
1 |
-
{"version":3,"sources":["woo-feed-admin.js"],"names":["_defineProperties","target","props","descriptor","i","enumerable","configurable","writable","Object","defineProperty","key","_createClass","Constructor","protoProps","staticProps","prototype","window","wpAjax","$","document","opts","self","prop","status","addClass","removeClass","hasClass","currentTarget","clearTooltip","userAgent","actionMsg","match","actionKey","index","join","removeAttr","elem","attr","msg","extend","_default","_args","clip","$copyBtn","ClipboardJS","isSupported","test","navigator","feedGenerator","this","on","action","showTooltip","event","trigger","wpf_ajax_obj","success","url","data","_classCallCheck","WooFeedCustomFields","productCustomFields","field","isTaxonomy","value","ajax","nonce","method","response","wpf_ajax_url","clipboard","googleCategories","log","closest","find","hide","in_array","needle","haystack","indexOf","console","selectize_render_item","escape","sortable","onDrop","text","ajax_fail","column_count","warn","wf_sortable","containerSelector","e","hasOwnProperty","error","statusText","el","config","column","_onDrop","each","length","selectize","itemPath","itemSelector","concat","plugins","$item","container","group","options","draggedClass","bodyClass","render","item","helper","not","fancySelect","maxItemShow","create","split","map","s","handle","placeholder","form","replace","x","reindex_config_table","init","renderMerchantInfo","jQuery","k","opt","merchantInfo","feedType","r","types","html","t","trim","toLowerCase","na","disabled","val","_loop2","renderMerchantTemplate","_loop","filter","contentSettings","feedForm","feedEditor","merchantInfoCache","tooltip","css","top","_regenerate","isRegenerating","feed","_progress","_product_ids","_progress_per_batch","_refresh","_feed","_all_btn","generate","_current_btn","condition","_current_batch","then","URLSearchParams","preventDefault","parent","_current_btn_label","_ajax_nonce","_log","_updateProgressStatus","message","_color","regenerate","setTimeout","_this2","_stopProgressBar","_process_batch","fail","limit","_limit","_block_button","_progressBarActive","_save_feed_file","loop","_get_product_ids","_total_batch","_unblock_button","_resetProgressBar","refreshInterval","post","arguments","undefined","clearInterval","_timer","setInterval","_updateProgressBar","update","_toggleProgressBar","table","show","color","width","generator","pagenow","attr_name","hover","title","appendTo","remove","left","pageX","href","slideToggle","loader","tbody","location","reload","button","status_area","select","execCommand","progress_message","current_attribute_value","fancyOption","fancyDataPicker","selectIf","price_attributes","selectKey","percentage","outputSelect","parents","includes","add_postbox_toggles","confirm","del_confirm_multi","row","append","type","_ajax_clean_nonce","validate","valid","save","server","sftp_checking","merchant","name","templateName","loading_tmpl","provider","send","merchantTemplateCache","outOfStockVisibilityRow","checked","valueColumn","attribute","preload","load","google_category","query","learn_more","cb","itemWrapper","wf_csv_txt","id","windowpos","download","googleMap","click","for_attr","setValue","catField","catId","providerName","groupId","v","searchField","option","createObjectURL","labelField","woocommerce","currency","price","inArray","current_Value","parseInt","sale_price","_key","sale_price_with_tax","attribute_value","weight","height","dimension"],"mappings":"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","file":"woo-feed-admin.min.js","sourcesContent":["// noinspection JSUnresolvedletiable\n/**!\n * WooFeed Scripts\n * @version 3.3.6\n * @package WooFeed\n * @copyright 2020 WebAppick\n *\n */\n/* global ajaxurl, wpAjax, postboxes, pagenow, alert, deleteUserSetting, typenow, adminpage, thousandsSeparator, decimalPoint, isRtl */\n// noinspection JSUnresolvedVariable\n(function($, window, document, wpAjax, opts) {\n \"use strict\";\n /**\n * All of the code for your admin-facing JavaScript source\n * should reside in this file.\n *\n * Note: It has been assumed you will write jQuery code here, so the\n * $ function reference has been prepared for usage within the scope\n * of this function.\n *\n * This enables you to define handlers, for when the DOM is ready:\n */\n\n /**\n * disable element utility\n *\n * @since 3.1.9\n *\n * @param {*} status\n * @returns {$|HTMLElement}\n */\n $.fn.disabled = function(status) {\n $(this).each(function() {\n let self = $(this),\n prop = 'disabled';\n\n if (typeof self.prop(prop) !== 'undefined') {\n self.prop(prop, status === void 0 || status === true);\n } else {\n !0 === status ? self.addClass(prop) : self.removeClass(prop);\n }\n });\n return self; // method chaining\n };\n\n /**\n * Check if a HTMLElement or jQuery is disabled\n */\n $.fn.isDisabled = function() {\n let self = $(this),\n prop = 'disabled';\n return typeof self.prop(prop) !== 'undefined' ? self.prop(prop) : self.hasClass(prop);\n };\n\n /**\n * Clear Tooltip for clip board js\n * @param {Object} event\n */\n const clearTooltip = (event) => {\n $(event.currentTarget).removeClass( (index, className) => (className.match(/\\btooltipped-\\S+/g) || []).join(' ') ).removeClass('tooltipped').removeAttr('aria-label');\n };\n\n const showTooltip = (elem, msg) => {\n $(elem).addClass('tooltipped tooltipped-s').attr('aria-label', msg);\n };\n\n const fallbackMessage = (action) =>{\n let actionMsg,\n actionKey = action === 'cut' ? 'X' : 'C';\n\n if (/iPhone|iPad/i.test(navigator.userAgent)) {\n actionMsg = 'No support :(';\n } else if (/Mac/i.test(navigator.userAgent)) {\n actionMsg = 'Press ⌘-' + actionKey + ' to ' + action;\n } else {\n actionMsg = 'Press Ctrl-' + actionKey + ' to ' + action;\n }\n\n return actionMsg;\n };\n\n /**\n * Alias of jQuery.extend()\n * @param {Object} _default\n * @param {Object} _args\n */\n const extend = (_default, _args) => $.extend(true, {}, _default, _args);\n\n\t/*\n\t* Handles product attributes\n\t*\n\t* @since 4.4.18\n\t* */\n\tclass WooFeedCustomFields {\n\n\t\tconstructor( field, status, isTaxonomy ) {\n\t\t\tthis.productCustomFields( field, status, isTaxonomy );\n\t\t}\n\n\t\tcacheClear() {\n\t\t\tlet data = {\n\t\t\t\taction: 'woo_feed_product_attribute_cache_remove',\n\t\t\t\tnonce: wpf_ajax_obj.ajax.nonce,\n\t\t\t};\n\t\t\t$.ajax({\n\t\t\t\tmethod: 'POST',\n\t\t\t\turl: wpf_ajax_obj.wpf_ajax_url,\n\t\t\t\tdata\n\t\t\t});\n\t\t}\n\n\t\tproductCustomFields( field, status = false, isTaxonomy ) {\n\t\t\tlet data = {\n\t\t\t\taction: 'woo_feed_custom_fields_status_change',\n\t\t\t\tnonce: wpf_ajax_obj.ajax.nonce,\n\t\t\t\tfield,\n\t\t\t\tstatus,\n\t\t\t\tisTaxonomy\n\t\t\t};\n\t\t\t$.ajax({\n\t\t\t\tmethod: 'POST',\n\t\t\t\turl: wpf_ajax_obj.wpf_ajax_url,\n\t\t\t\tdata,\n\t\t\t\tsuccess: ( response ) => {\n\t\t\t\t\tif( response.success ) {\n\t\t\t\t\t\tthis.cacheClear();\n\t\t\t\t\t} else {\n\t\t\t\t\t\tconsole.log( response );\n\t\t\t\t\t}\n $('#'+field+'-switcher').closest('td').find('.switch-loader').hide();\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\t}\n\n let $copyBtn,\n clipboard,\n googleCategories,\n helper = {\n in_array: (needle, haystack) => {\n try {\n return haystack.indexOf(needle) !== -1;\n } catch (e) {\n return false;\n }\n },\n selectize_render_item: (data, escape) => `<div class=\"item wapk-selectize-item\">${escape(data.text)}</div>`, // phpcs:ignore WordPressVIPMinimum.JS.StringConcat.Found,\n ajax_fail: e => {\n console.warn(e);\n alert(e.hasOwnProperty('statusText') && e.hasOwnProperty('status') ? opts.ajax.error + '\\n' + e.statusText + ' (' + e.status + ')' : e);\n },\n /**\n * Initialize Sortable\n * @param {$|HTMLElement} el\n * @param {object} config\n * @param {int|boolean} column\n * @param {function} onDrop\n * @return {$|HTMLElement}\n */\n sortable: (el, config, column, onDrop) => {\n return (el || $('.sorted_table')).each(function() {\n let self = $(this),\n column_count = self.find('tbody > tr:eq(0) > td').length || column || 9;\n self.wf_sortable(extend({\n containerSelector: 'table',\n itemPath: '> tbody',\n itemSelector: 'tr',\n handle: 'i.wf_sortedtable',\n placeholder: `<tr class=\"placeholder\"><td colspan=\"${column_count}\"></td></tr>`,\n onDrop: ($item, container, _super, event) => {\n $item.removeClass(container.group.options.draggedClass).removeAttr('style');\n $(\"body\").removeClass(container.group.options.bodyClass);\n if ( onDrop && 'function' === typeof( onDrop ) ) {\n onDrop( $item, container, _super, event );\n }\n },\n }, config));\n });\n },\n selectize: (el, config) => {\n return (el || $('select.selectize')).not('.selectized').not('.selectize-google-category').each(function() {\n let self = $(this);\n self.selectize(extend({\n create: self.data('create') || false,\n plugins: self.data('plugins') ? self.data('plugins').split(',').map(function(s) {\n return s.trim();\n }) : [],\n //['remove_button'],\n render: {\n item: helper.selectize_render_item\n }\n }, config));\n });\n },\n fancySelect: (el, config) => {\n return (el || $('select.fancySelect')).not('.FancySelectInit').each(function() {\n let self = $(this);\n self.fancySelect(extend({\n maxItemShow: 3\n }, config));\n });\n },\n reindex_config_table: () => {\n $('#table-1').find('tbody tr').each( ( x, el ) => {\n $(el).find('[name]').each( ( x1, el ) => {\n $(el).attr('name', $(el).attr('name').replace(/(\\[\\d\\])/g, `[${x}]`));\n } );\n } );\n },\n common: () => {\n helper.sortable( $('.sorted_table'), {}, 9, helper.reindex_config_table );\n helper.selectize();\n helper.fancySelect($('.outputType'));\n }\n },\n // helper functions\n feedEditor = {\n /**\n * The Editor Form Elem.\n * @type {$|HTMLElement}\n */\n form: null,\n\n /**\n * Initialize The Feed Editor {Tabs...}\n * @returns {void}\n */\n init: function () {\n let self = this;\n self.form = $('.generateFeed');\n if (!self.form.length) return;\n helper.common();\n // noinspection JSUnresolvedVariable\n $(document).trigger('feed_editor_init');\n $(document).trigger(new jQuery.Event('feedEditor.init', {\n target: this.form\n }));\n },\n\n /**\n * Render Merchant info ajax response and handle allowed feed type for selected merchant\n * @param {$|HTMLElement} merchantInfo jQuery dom object\n * @param {$|HTMLElement} feedType jQuery dom object\n * @param {Object} r ajax response object\n */\n renderMerchantInfo: function (merchantInfo, feedType, r) {\n for (let k in r) {\n if (r.hasOwnProperty(k)) {\n merchantInfo.find('.merchant-info-section.' + k + ' .data').html(r[k]); // phpcs:ignore WordPressVIPMinimum.JS.HTMLExecutingFunctions.html\n\n if ('feed_file_type' === k) {\n (function() {\n let types = r[k].split(\",\").map(function(t) {\n return t.trim().toLowerCase();\n }).filter(function(t) {\n // noinspection JSUnresolvedVariable\n return t !== '' && t !== opts.na.toLowerCase();\n });\n\n if (types.length) {\n feedType.find('option').removeAttr('selected').each(function() {\n let opt = $(this);\n opt.val() && !helper.in_array(opt.val(), types) ? opt.disabled(!0) : opt.disabled(!1);\n });\n if (types.length === 1) feedType.find('option[value=\"' + types[0] + '\"]').attr('selected', 'selected');\n } else feedType.find('option').disabled(!1);\n })();\n }\n }\n }\n\n merchantInfo.find('.spinner').removeClass('is-active');\n feedType.disabled(!1);\n feedType.trigger('change');\n\n /**\n * Triggers after merchant configuration is fetched & loaded\n * */\n $(document).trigger('woo_feed_config_loaded');\n\n feedType.parent().find('.spinner').removeClass('is-active');\n },\n\n /**\n * Render Feed Template Tabs and settings while creating new feed.\n * @param {$|HTMLElement} feedForm feed from query dom object\n * @param {object} r merchant template ajax response object\n */\n renderMerchantTemplate: function (feedForm, r) {\n let _loop = function _loop(k) {\n if (r.hasOwnProperty(k)) {\n if ('tabs' === k) {\n // noinspection JSUnresolvedFunction\n feedForm.html(r[k]); // phpcs:ignore WordPressVIPMinimum.JS.HTMLExecutingFunctions.html\n } else {\n let contentSettings = $('[name=\"' + k + '\"]');\n\n if (contentSettings.length) {\n contentSettings.each(function() {\n let elem = $(this);\n\n if (elem.is('select')) {\n elem.find('[value=\"' + r[k] + '\"]').prop('selected', true);\n } else if ((elem.is('[type=checkbox]') || elem.is('[type=radio]')) && elem.val() === r[k]) {\n elem.prop('checked', true);\n } else {\n elem.val(r[k]); // type=text\n }\n }).trigger('change');\n }\n }\n }\n };\n\n for (let k in r) {\n _loop(k);\n }\n\n feedEditor.init();\n }\n },\n // Feed Editor Table\n merchantInfoCache = [],\n merchantTemplateCache = [],\n tooltip = () => {\n // Tooltip only Text\n $('.wfmasterTooltip')\n .hover(function () {\n // Hover over code\n let self = $(this), title = self.attr('wftitle');\n self.data('tipText', title).removeAttr('wftitle');\n $('<p class=\"wftooltip\"></p>').text(title).appendTo('body').fadeIn('slow');\n }, function () {\n // Hover out code\n let self = $(this);\n self.attr('wftitle', self.data('tipText'));\n $('.wftooltip').remove();\n })\n .mousemove(function (e) {\n $('.wftooltip').css({\n top: e.pageY + 10,\n left: e.pageX + 20\n });\n });\n },\n clip = () => {\n $copyBtn = $('.toClipboard');\n if (!ClipboardJS.isSupported() || /iPhone|iPad/i.test(navigator.userAgent)) {\n $copyBtn.find('img').hide(0);\n } else {\n $copyBtn.each(function() {\n $(this).on('mouseleave', clearTooltip).on('blur', clearTooltip);\n });\n clipboard = new ClipboardJS('.toClipboard');\n clipboard.on('error', function(event) {\n showTooltip(event.trigger, fallbackMessage(event.action));\n }).on('success', function(event) {\n showTooltip(event.trigger, 'Copied');\n });\n }\n };\n\n /**\n * Feed Generator Module\n */\n class feedGenerator {\n\n /**\n * Constructor\n * @constructor\n */\n constructor() {\n this._feed = opts.generator.feed; // wf_config+xxxx\n this._limit = opts.generator.limit;\n this._progress = 0;\n this._timer = null;\n this._color = false;\n // batch info\n this._total_batch = 0;\n this._current_batch = 0;\n this._product_ids = [];\n this._progress_per_batch = 0;\n this._refresh = true;\n // noinspection JSUnresolvedVariable\n this._regenerate = opts.generator.regenerate;\n window.isRegenerating = false;\n this._all_btn = $('.wpf_regenerate');\n this._current_btn = $(`#${this._feed.replace( 'wf_config', 'wf_feed_' )}`);\n this._current_btn_label = '';\n }\n\n /**\n * Init Hooks (Event)\n * @return {feedGenerator}\n */\n init() {\n let self = this;\n if ( '' !== this._feed && this._regenerate && false === window.isRegenerating ) {\n this.generate();\n }\n\n //thickbox body add feed plugin class to make it unique and custom style\n let current_page_query = window.location.search;\n let params = new URLSearchParams(current_page_query);\n let page_name = params.get(\"page\");\n if( \"webappick-manage-feeds\" === page_name ) {\n $('body').addClass('woo-import-popup-body');\n }\n\n $(document).on('click', '.woo-feed-campaign-close-button', function(event) {\n event.preventDefault();\n\n $(this).parent('.woo-feed-promotion').hide();\n let condition = $(this).data('condition');\n if(1 === condition) {\n wpAjax.post( 'woo_feed_hide_promotion', {\n _ajax_nonce: opts.nonce,\n condition: condition,\n } ).then( response => {\n self._log( response );\n } ).fail( error => {\n self._log( error );\n self._updateProgressStatus( error.message );\n self._color = 'red';\n } );\n }\n });\n\n $(document).on('click', '.wpf_regenerate', function(event) {\n event.preventDefault();\n self._current_btn = $( this );\n if( self._current_btn.hasClass('disabled') || window.isRegenerating === true ) return;\n self._feed = self._current_btn.attr('id').replace( 'wf_feed_', 'wf_config' );\n if( '' !== self._feed ) {\n self.generate();\n }\n });\n return this;\n }\n\n _block_button() {\n if ( this._all_btn.length ) {\n this._all_btn.addClass('disabled');\n }\n if ( this._current_btn.length ) {\n this._current_btn.find('span').addClass('wpf_spin reverse_spin');\n this._current_btn_label = this._current_btn.attr('title');\n // noinspection JSUnresolvedVariable\n this._current_btn.attr( 'aria-label', opts.regenerate ).attr( 'title', opts.regenerate );\n }\n }\n\n _unblock_button() {\n if ( this._all_btn.length ) {\n this._all_btn.removeClass('disabled');\n }\n if ( this._current_btn.length ) {\n this._current_btn.find('span').removeClass('wpf_spin');\n this._current_btn.find('span').removeClass('reverse_spin');\n this._current_btn.attr( 'aria-label', this._current_btn_label ).attr( 'title', this._current_btn_label );\n }\n }\n\n /**\n * Generate Feed\n * @return void\n */\n generate() {\n let self = this;\n window.isRegenerating = true;\n this._block_button();\n this._resetProgressBar();\n this._progressBarActive();\n this._log( 'Counting Total Products' );\n this._updateProgressStatus( 'Fetching products.' );\n this._get_product_ids().then( response => {\n this._progress = 10;\n self._log( {response} );\n if(response.success) {\n self._log( `Total ${response.total} Products found.` );\n self._product_ids = response.product;\n self._total_batch = this._product_ids.length;\n self._current_batch = 0;\n self._progress_per_batch = ( 90 - this._progress ) / this._total_batch;\n self._process_batch();\n self._updateProgressStatus( 'Processing Products...' );\n } else {\n self._updateProgressStatus( response.data.message );\n }\n }).fail( error => {\n self._log( error );\n self._updateProgressStatus( error.message );\n self._color = 'red';\n setTimeout( function(){\n self._stopProgressBar();\n self._unblock_button();\n }, 1500 );\n } );\n }\n\n /**\n * Get Product Ids\n * @returns {$.promise}\n * @private\n */\n _get_product_ids() {\n this._progress = 5;\n return wpAjax.post( 'get_product_information', {\n _ajax_nonce: opts.nonce,\n feed: this._feed,\n limit: this._limit,\n } );\n }\n\n /**\n * Run the Batch\n * @private\n */\n _process_batch() {\n let self = this;\n let status = `Processing Batch ${this._current_batch+1} of ${this._total_batch}`;\n this._updateProgressStatus( status );\n this._log( status );\n wpAjax.post( 'make_batch_feed', {\n _ajax_nonce: opts.nonce,\n feed: this._feed,\n products: this._product_ids[this._current_batch],\n loop: this._current_batch,\n } ).then( response => {\n self._current_batch++;\n self._log( `Batch ${self._current_batch} Completed` );\n self._log( response );\n if ( self._current_batch < self._total_batch ) {\n self._process_batch();\n self._progress += self._progress_per_batch;\n }\n if ( self._current_batch === self._total_batch ) {\n self._save_feed_file();\n }\n } ).fail( error => {\n self._log( error );\n self._updateProgressStatus( error.message );\n self._color = 'red';\n setTimeout( function(){\n self._stopProgressBar();\n self._unblock_button();\n }, 1500 );\n } );\n }\n\n /**\n * Save Feed Data from temp to feed file\n * @private\n */\n _save_feed_file() {\n let self = this;\n this._log( 'Saving feed file' );\n this._updateProgressStatus( 'Saving feed file' );\n wpAjax.post( 'save_feed_file', {\n _ajax_nonce: opts.nonce,\n feed: this._feed,\n } ).then( response => {\n self._log( response );\n self._progress = 100;\n if ( self._refresh ) {\n window.location.href = `${opts.pages.list.feed}&link=${response.url}&cat=${response.cat}`;\n }\n setTimeout( function(){\n self._stopProgressBar();\n setTimeout( function(){\n self._resetProgressBar( true );\n self._unblock_button();\n }, 3000 );\n }, 2500 );\n } ).fail( error => {\n self._log( error );\n self._updateProgressStatus( error.message );\n self._color = 'red';\n setTimeout( function(){\n self._stopProgressBar();\n self._unblock_button();\n }, 1500 );\n } );\n }\n\n /**\n * Console log wrapper with debug settings.\n * @param data\n * @returns {feedGenerator}\n * @private\n */\n _log( data ) {\n // noinspection JSUnresolvedVariable\n if ( opts.wpf_debug ) {\n console.log( data );\n }\n return this;\n }\n\n /**\n * Run the progressbar refresh interval\n * @param {int} refreshInterval\n * @returns {feedGenerator}\n * @private\n */\n _progressBarActive( refreshInterval = 0 ) {\n let self = this;\n this._toggleProgressBar( true );\n this._timer = setInterval( function(){\n self._updateProgressBar();\n }, refreshInterval || 1000 );\n return this;\n }\n\n /**\n * Stop Progressbar\n * @returns {feedGenerator}\n * @private\n */\n _stopProgressBar() {\n clearInterval( this._timer );\n return this;\n }\n\n /**\n * Reset Progressbar\n * @returns {feedGenerator}\n * @private\n */\n _resetProgressBar( update ) {\n this._toggleProgressBar( false );\n this._updateProgressStatus( '' );\n clearInterval( this._timer );\n this._color = false;\n this._timer = null;\n this._progress = 0;\n if ( update ) {\n this._updateProgressBar();\n }\n return this;\n }\n\n /**\n * Show hide the progress bar el\n * @param status\n * @returns {feedGenerator}\n * @private\n */\n _toggleProgressBar( status ) {\n let table = $('#feed_progress_table');\n if ( status ) {\n table.show();\n } else {\n table.hide();\n }\n return this;\n }\n\n /**\n * Update Progress bar text status\n * @param {string} status\n * @returns {feedGenerator}\n * @private\n */\n _updateProgressStatus( status ) {\n $( '.feed-progress-status' ).html( status );\n return this;\n }\n\n _getErrorMessageByCode( error ){\n let progress_message = $( '.feed-progress-status' );\n progress_message.css( {'color':this._color});\n $( '.feed-progress-percentage' ).css( {'color':this._color});\n $( '.wpf_spin' ).css( {'color':this._color});\n\n let message=error.status +' : '+ error.statusText+'. ';\n if(500===error.status){\n message+= \"Please increase your PHP max_execution_time. Please <a target='_blank' href='https://webappick.com/docs/woo-feed/faq-for-woocommerce-product-feed/how-to-solve-processing-10-feed-generation-stuck-error/'>read this doc</a>.\";\n }\n\n this._updateProgressStatus(message);\n\n }\n\n /**\n * Update Progress Data\n * hooked with setInterval\n * @private\n */\n _updateProgressBar() {\n let percentage = $( '.feed-progress-percentage' ),\n bar = $( '.feed-progress-bar-fill' ),\n _progress = `${Math.round( this._progress )}%`;\n bar.css( {\n width: _progress,\n } );\n percentage.text( _progress );\n }\n }\n // expose to the global scope\n window.wf = {\n helper: helper,\n feedEditor: feedEditor,\n generator: feedGenerator,\n };\n\n $(window).on('load', function() {\n // Template loading ui conflict\n if ($(location).attr(\"href\").match(/webappick.*feed/g) !== null) {\n $('#wpbody-content').addClass('woofeed-body-content');\n }\n\n // ClipBoardJS\n clip();\n // postbox toggle\n postboxes.add_postbox_toggles(pagenow);\n // initialize generator\n let generator = new feedGenerator();\n generator.init();\n // noinspection JSUnresolvedVariable\n if( '' !== opts.generator.feed && opts.generator.regenerate ) {\n\n }\n // initialize editor\n feedEditor.init();\n helper.common(); // Generate Feed Add Table Row\n tooltip();\n // validate feed editor\n $(\".generateFeed\").validate();\n\n // document events\n $(document)\n .on('blur', 'input[name=\"wfDAttributeName\"]', function(e) {\n e.preventDefault();\n let attr_name = $(this).val();\n attr_name = attr_name.toLowerCase();\n attr_name = attr_name.split(' ').join('_');\n\n $('#wfDAttributeCode').val(attr_name);\n\n })\n .on('click', '[data-toggle_slide]', function(e) {\n e.preventDefault();\n $($(this).data('toggle_slide')).slideToggle('fast');\n })\n // XML Feed Wrapper\n .on('click', '#wf_newRow', function () {\n let tbody = $('#table-1 tbody'),\n template = $('#feed_config_template').text().trim().replace(/__idx__/g, tbody.find('tr').length);\n tbody.append(template);\n helper.fancySelect($('.outputType'));\n })\n // feed delete alert.\n .on('click', '.single-feed-delete', function (event) {\n event.preventDefault();\n // noinspection JSUnresolvedVariable\n if (confirm(opts.form.del_confirm)) {\n window.location.href = $(this).attr('val');\n }\n })\n // clear cache data.\n .on('click', '.wf_clean_cache_wrapper', function(event) {\n event.preventDefault();\n var nonce = $('.woo-feed-clean-cache-nonce').val();\n var loader = $('.woo-feed-cache-loader');\n\n //show loader\n loader.show();\n\n // passed cache nonce\n wpAjax.post('clear_cache_data', {\n _ajax_clean_nonce: nonce\n }).then(function (response) {\n if( response.success ) {\n loader.hide(); //hide loader\n location.reload();\n }\n }).fail(function () {\n console.log('something wrong');\n });\n\n })// Copy Status\n .on('click', '#woo-feed-copy-status-btn', function(event) {\n event.preventDefault();\n let button = $('#woo-feed-copy-status-btn');\n let status_area = $('#woo-feed-status-area');\n button.val('Copied');\n status_area.css('visibility','visible');\n status_area.select();\n\n document.execCommand('copy');\n })\n // feed value dropdown change.\n .on('change', '.wf_attr.wf_attributes', function(event) {\n event.preventDefault();\n\n $('.fancy-picker-picked').trigger(\"click\"); // trigger fancy select box clicked\n\n // price attributes\n var price_attributes = ['price', 'current_price', 'sale_price', 'price_with_tax', 'current_price_with_tax', 'sale_price_with_tax', 'shipping_cost'];\n // current value\n var current_attribute_value = $(this).val();\n var outputSelect = $(this).parents('tr').find('.outputType');\n var fancyOption = $(this).parents('tr').find('.fancy-picker-content .fancy-picker-option');\n var fancyDataPicker = $(this).parents('tr').find('.fancy-picker-data span');\n var selectIf, selectKey;\n\n // when any attribute is selected, pick the key\n if( price_attributes.includes(current_attribute_value) ) {\n // when select any price attribute\n selectIf = 'for_price';\n selectKey = \"Price\";\n } else if ( \"\" !== current_attribute_value && -1 !== current_attribute_value.indexOf('wf_taxo') ) {\n\n // when select any custom taxonomy\n selectIf = 'for_custom_taxo';\n selectKey = \"parent_if_empty\";\n } else {\n\n selectIf = 'for_all';\n selectKey = 'Default';\n }\n\n // remove selected class from old selected option\n fancyOption.removeClass('selected');\n\n // when value dropdown is selected as price or any custom taxonomy\n if( selectIf === 'for_custom_taxo' || selectIf === 'for_price' ) {\n\n // update \"Option Type\" when select key matches\n fancyOption.each(function() {\n if( selectKey === $(this).text() ) {\n $(this).addClass('selected');\n fancyDataPicker.text(selectKey);\n outputSelect.find(\"option\").text(selectKey);\n outputSelect.find(\"option\").val( $(this).data('value') );\n }\n });\n } else if( selectIf === 'for_all' ){\n\n fancyOption.each(function(){\n if( selectKey === $(this).text() ){\n $(this).addClass('selected');\n fancyDataPicker.text(selectKey);\n outputSelect.find(\"option\").text(selectKey);\n outputSelect.find(\"option\").val( $(this).data(\"value\") );\n }\n });\n\n }\n\n })\n // bulk delete alert.\n .on('click', '#doaction, #doaction2', function () {\n // noinspection JSUnresolvedVariable\n return confirm(opts.form.del_confirm_multi);\n })\n // Generate Feed Table Row Delete\n .on('change', '.dType', function () {\n let self = $(this),\n type = self.val(),\n row = self.closest('tr');\n\n if (type === 'pattern') {\n row.find('.value_attribute').hide();\n row.find('.value_pattern').show();\n } else if (type === 'attribute') {\n row.find('.value_attribute').show();\n row.find('.value_pattern').hide();\n } else if (type === 'remove') {\n row.find('.value_attribute').hide();\n row.find('.value_pattern').hide();\n }\n })\n // Generate Feed Form Submit\n .on('click', '.delRow', function (e) {\n e.preventDefault();\n $(this).closest('tr').remove();\n helper.reindex_config_table();\n })\n .on('submit', '#generateFeed', function () {\n // Feed Generating form validation\n $(this).validate();\n\n if ($(this).valid()) {\n $(\".makeFeedResponse\")\n .show()\n .html(`<b style=\"color: darkblue;\"><i class=\"dashicons dashicons-sos wpf_spin\"></i> ${opts.form.generate}</b>`); // phpcs:ignore WordPressVIPMinimum.JS.HTMLExecutingFunctions.html, WordPressVIPMinimum.JS.StringConcat.Found\n }\n })\n // Generate Update Feed Form Submit\n .on('submit', '#updatefeed', function (e, data) {\n // Feed Generating form validation\n $(this).validate();\n\n if ($(this).valid()) {\n $(\".makeFeedResponse\")\n .show()\n .html(`<b style=\"color: darkblue;\"><i class=\"dashicons dashicons-sos wpf_spin\"></i> ${data && data.save ? opts.form.save : opts.form.generate}</b>`); // phpcs:ignore WordPressVIPMinimum.JS.HTMLExecutingFunctions.html, WordPressVIPMinimum.JS.StringConcat.Found\n }\n })\n .on( 'ready woo_feed_config_loaded', function(){\n\n if( $('#ftpenabled').val() === '0' ){\n $('.google-merchant-message').hide('slow');\n $('.woo-feed-ftp .ftpconfig tr:not(.ftpcontroller) input, .woo-feed-ftp .ftpconfig tr:not(.ftpcontroller) select').attr('disabled','disabled');\n } else {\n if( $('#provider').val() === 'google' ) {\n $('.google-merchant-message').show('slow');\n } else {\n $('.google-merchant-message').hide('slow');\n }\n $('.woo-feed-ftp .ftpconfig tr:not(.ftpcontroller) input, .woo-feed-ftp .ftpconfig tr:not(.ftpcontroller) select').removeAttr('disabled');\n }\n\n $('#ftpenabled').on('change', function(){\n if( $('#ftpenabled').val() === '0' ){\n $('.google-merchant-message').hide('slow');\n $('.woo-feed-ftp .ftpconfig tr:not(.ftpcontroller) input, .woo-feed-ftp .ftpconfig tr:not(.ftpcontroller) select').attr('disabled','disabled');\n } else {\n\n $('.woo-feed-ftp .ftpconfig tr:not(.ftpcontroller) input, .woo-feed-ftp .ftpconfig tr:not(.ftpcontroller) select').removeAttr('disabled');\n\n // Google merchant specific message\n if( $('#provider').val() === 'google' ){\n $('.google-merchant-message').show('slow');\n } else {\n $('.google-merchant-message').hide('slow');\n }\n\n }\n });\n })\n .on('change', '.ftporsftp', function () {\n let server = $(this).val(),\n status = $('.ssh2_status');\n\n if (server === 'sftp') {\n // noinspection JSUnresolvedVariable\n status.show().css('color', 'dodgerblue').text(opts.form.sftp_checking);\n wpAjax.post('get_ssh2_status', {\n _ajax_nonce: opts.nonce,\n server: server\n }).then(function (response) {\n if (response === 'exists') {\n // noinspection JSUnresolvedVariable\n status.css('color', '#2CC185').text(opts.form.sftp_available);\n setTimeout(function () {\n status.hide();\n }, 1500);\n } else {\n // noinspection JSUnresolvedVariable\n status.show().css('color', 'red').text(opts.form.sftp_warning);\n }\n }).fail(function (e) {\n status.hide();\n helper.ajax_fail(e);\n });\n } else {\n status.hide();\n }\n })\n .on('click', '[name=\"save_feed_config\"]', function (e) {\n e.preventDefault();\n $('#updatefeed').trigger('submit', {\n save: true\n });\n })\n .on('change', '#provider', function (event) {\n event.preventDefault();\n\n let merchant = $(this).val(),\n templateName = $(this).find(':selected').text(),\n name = $('#filename').val(),\n feedType = $(\"#feedType\"),\n feedForm = $(\"#providerPage\"),\n merchantInfo = $('#feed_merchant_info'); // set loading..\n\n // noinspection JSUnresolvedVariable\n feedForm.html('<h3><span style=\"float:none;margin: -3px 0 0;\" class=\"spinner is-active\"></span> ' + opts.form.loading_tmpl + '</h3>'); // phpcs:ignore WordPressVIPMinimum.JS.HTMLExecutingFunctions.html, WordPressVIPMinimum.JS.StringConcat.Found\n\n merchantInfo.find('.spinner').addClass('is-active');\n feedType.disabled(!0); // disable dropdown\n\n feedType.parent().find('.spinner').addClass('is-active');\n merchantInfo.find('.merchant-info-section .data').html(''); // remove previous data\n // Get Merchant info for selected Provider/Merchant\n\n if (merchantInfoCache.hasOwnProperty(merchant)) {\n feedEditor.renderMerchantInfo(merchantInfo, feedType, merchantInfoCache[merchant]);\n\n /**\n * Triggers after merchant configuration is fetched & loaded\n * */\n $(document).trigger('woo_feed_config_loaded');\n\n } else {\n wpAjax.send('woo_feed_get_merchant_info', {\n type: 'GET',\n data: {\n nonce: opts.nonce,\n provider: merchant,\n templateName: templateName\n }\n }).then(function (r) {\n merchantInfoCache[merchant] = r;\n feedEditor.renderMerchantInfo(merchantInfo, feedType, r);\n }).then(function(){\n\n /**\n * Triggers after merchant configuration is fetched & loaded\n * */\n $(document).trigger('woo_feed_config_loaded');\n\n }).fail(helper.ajax_fail);\n } // Get FeedForm For Selected Provider/Merchant\n\n\n if (merchantTemplateCache.hasOwnProperty(merchant)) {\n feedEditor.renderMerchantTemplate(feedForm, merchantTemplateCache[merchant]);\n\n /**\n * Triggers after merchant configuration is fetched & loaded\n * */\n $(document).trigger('woo_feed_config_loaded');\n\n } else {\n wpAjax.post('get_feed_merchant', {\n _ajax_nonce: opts.nonce,\n merchant: merchant\n }).then(function (r) {\n merchantTemplateCache[merchant] = r;\n feedEditor.renderMerchantTemplate(feedForm, r);\n $('#utm_source').val(templateName);\n $('#utm_campaign').val(name);\n //when merchant is bing, change delimiter and enclosure\n if( 'bing' === merchant ) {\n //delimiter value\n $(\"#delimiter option\").removeAttr('selected');\n $(\"#delimiter option[value=\\\"tab\\\"]\").attr('selected', 'selected');\n\n //enclosure value\n $(\"#enclosure option\").removeAttr('selected');\n $(\"#enclosure option[value=\\\" \\\"]\").attr('selected', 'selected');\n }\n\n //reviewer options hide\n if( 'google_product_review' !== merchant) {\n $('.wf_attributes option[value=\"reviewer_name\"]').hide();\n }\n }).then(function(){\n\n /**\n * Triggers after merchant configuration is fetched & loaded\n * */\n $(document).trigger('woo_feed_config_loaded');\n\n }).fail(helper.ajax_fail);\n }\n })\n // Feed Active and Inactive status change via ajax\n .on('change', '.woo_feed_status_input', function () {\n let self = $(this);\n wpAjax.post('update_feed_status', {\n _ajax_nonce: opts.nonce,\n feedName: self.val(),\n status: self[0].checked ? 1 : 0\n });\n });\n // event with trigger\n $(document)\n .on('change', '[name=\"is_outOfStock\"], [name=\"product_visibility\"]', function () {\n let outOfStockVisibilityRow = $('.out-of-stock-visibility');\n if ($('[name=\"is_outOfStock\"]:checked').val() === 'n' && $('[name=\"product_visibility\"]:checked').val() === '1') {\n outOfStockVisibilityRow.show();\n } else {\n outOfStockVisibilityRow.hide();\n }\n })\n .on('change', '.attr_type', function () {\n // Attribute type selection\n let self = $(this),\n type = self.val(),\n row = self.closest('tr');\n\n if (type === 'pattern') {\n row.find('.wf_attr').hide();\n row.find('.wf_attr').val('');\n row.find('.wf_default').show();\n } else {\n row.find('.wf_attr').show();\n row.find('.wf_default').hide();\n row.find('.wf_default').val('');\n }\n })\n .on('change', '.wf_mattributes, .attr_type', function () {\n let row = $(this).closest('tr'),\n attribute = row.find('.wf_mattributes'),\n type = row.find('.attr_type'),\n valueColumn = row.find('td:eq(4)'),\n provider = $('#provider').val();\n\n // noinspection JSUnresolvedVariable\n if (opts.form.google_category.hasOwnProperty(attribute.val()) && type.val() === 'pattern' && helper.in_array(provider, opts.form.google_category[attribute.val()])) {\n if (valueColumn.find('select.selectize').length === 0) {\n valueColumn.find('input.wf_default').remove();\n valueColumn.append('<span class=\"wf_default wf_attributes\"><select name=\"default[]\" class=\"selectize\"></select></span>');\n // noinspection JSUnresolvedVariable\n valueColumn.append(`<span style=\"font-size:x-small;\"><a style=\"color: red\" href=\"https://webappick.com/docs/woo-feed/feed-configuration/how-to-map-store-category-with-merchant-category/\" target=\"_blank\">${opts.learn_more}</a></span>`);\n\n if (!googleCategories) {\n valueColumn.append('<span class=\"spinner is-active\" style=\"margin: 0;\"></span>');\n }\n\n let select = valueColumn.find('.wf_attributes select');\n // noinspection JSUnresolvedVariable\n helper.selectize(select, {\n preload: true,\n placeholder: opts.form.select_category,\n load: function load(query, cb) {\n if (!googleCategories) {\n wpAjax.send('get_google_categories', {\n type: 'GET',\n data: {\n _ajax_nonce: opts.nonce,\n action: \"get_google_categories\",\n provider: provider\n }\n }).then(function (r) {\n googleCategories = r;\n cb(googleCategories);\n valueColumn.find('.spinner').remove();\n }).fail(helper.ajax_fail);\n } else {\n cb(googleCategories);\n }\n }\n });\n }\n } else {\n if (attribute.val() !== 'current_category' && valueColumn.find('input.wf_default').length === 0) {\n valueColumn.find('span').remove();\n valueColumn.append('<input autocomplete=\"off\" class=\"wf_default wf_attributes\" type=\"text\" name=\"default[]\" value=\"\">');\n\n if (type.val() !== 'pattern') {\n valueColumn.find('input.wf_default').hide();\n }\n }\n }\n })\n .on('change', '#feedType,#provider', function (e) {\n let type = $('#feedType').val(),\n provider = $('#provider').val(),\n itemWrapper = $('.itemWrapper'),\n wf_csv_txt = $('.wf_csvtxt');\n\n // noinspection JSUnresolvedVariable\n if (type !== '' && helper.in_array(provider, opts.form.item_wrapper_hidden)) {\n itemWrapper.hide();\n }\n\n //when feed type is changed\n if( 'feedType' === e.target.id ) {\n if (type === 'csv' || type === 'txt' || type === 'tsv') {\n wf_csv_txt.show();\n itemWrapper.hide();\n \n if( 'tsv' === type ) {\n $('#delimiter option:last').prop(\"selected\", \"selected\");\n } else if( 'csv' === type ) {\n $('#delimiter option:first').prop(\"selected\", \"selected\");\n }\n } else if( 'xml' === type && \"custom\" === provider ) {\n itemWrapper.show();\n wf_csv_txt.hide();\n } else if( 'json' === type ) {\n wf_csv_txt.hide();\n }\n }\n\n // when template is not custom template 1 hide the item wrapper\n if( \"custom\" !== provider ) {\n itemWrapper.hide();\n }\n\n })\n .trigger('change');\n\n\n $(document)\n\t\t\t.on('click', '.woofeed-custom-fields [id*=\"-switcher\"]', function () {\n\t\t\t $(this).closest('td').find('.switch-loader').show();\n\t\t\t\tlet field = $(this).attr( 'id' ).split( '-' )[0],\n\t\t\t\t\tisTaxonomy = $(this).data( 'taxonomy' ),\n\t\t\t\t\tstatus = $(this).prop( 'checked' );\n\t\t\t\tnew WooFeedCustomFields( field, status, isTaxonomy );\n\n\t\t\t})\n\n\t\t\t// Remove sticky cart on feature page\n\t\t\t.ready(function() {\n\t\t\t\tvar s = $(\".wapk-feed-buy-now-container\");\n\t\t\t\t$(window).scroll(function() {\n\t\t\t\t\tvar windowpos = $(window).scrollTop();\n\t\t\t\t\tif ( windowpos <= 5000 ) {\n\t\t\t\t\t\ts.addClass(\"fixed\");\n\t\t\t\t\t} else {\n\t\t\t\t\t\ts.removeClass(\"fixed\");\n\t\t\t\t\t}\n\t\t\t\t});\n\t\t\t});\n });\n\n $(document)\n\t\t.on('click', '#woo-feed-debug-log-download', function (e) {\n\t\t\te.preventDefault();\n\t\t\t$(\"<a />\", {\n\t\t\t\tdownload: new Date() + \".log\",\n\t\t\t\thref: URL.createObjectURL(\n\t\t\t\t\tnew Blob([$(\"#woo-feed-debug-log\").val()], {\n\t\t\t\t\t\ttype: \"text/plain\"\n\t\t\t\t\t})),\n\t\t\t}).appendTo(\"body\")[0].click();\n\t\t})\n\t\t.on('keyup', '#filename', function() {\n\t\t\tvar name = $('#filename').val();\n\t\t\t$('#utm_campaign').val(name);\n\t\t})\n\n .on('click', '.wf-tab-name', function(e) {\n $('.wf-tab-name.activate').removeClass('activate');\n $(this).addClass('activate');\n\n let for_attr = $(this).attr('for');\n $('.wf_tabs li.active').removeClass('active');\n $('.wf_tabs .wf-tab-content#' + for_attr).parent().addClass('active');\n })\n\n\t\t.on('change', '#category-mapping-form #providers', function() {\n\t\t\tvar provider = $(this).find(':selected').val(),\n\t\t\t\tgoogleMap = ['google', 'facebook', 'pinterest', 'bing', 'bing_local_inventory', 'snapchat'];\n\t\t\tif( googleMap.indexOf(provider) !== -1 ) {\n\t\t\t\t$('input[id*=\"cat_mapping_\"]').css('display', 'none');\n\t\t\t\t$('.wf_default.wf_attributes').css('display', 'block').css('width', '100%');\n\n\t\t\t} else {\n\t\t\t\t$('input[id*=\"cat_mapping_\"]').css('display', 'block');\n\t\t\t\t$('.wf_default.wf_attributes').css('display', 'none').css('width', '100%');\n\t\t\t}\n\t\t})\n\n // Copy parent category ids to child categories.\n\t\t.on('click', 'span[id*=\"cat-map-\"]', function(e) {\n\t\t\te.preventDefault();\n\t\t\tvar providerName = $('#category-mapping-form #providers').val(),\n\t\t\t\tgoogleMap = ['google', 'facebook', 'pinterest', 'bing', 'bing_local_inventory', 'snapchat'],\n\t\t\t\tcatId = $(this).attr('id').replace(/[^\\d.]/g, ''),\n\t\t\t\tgroupId = 'group-child-' + catId;\n\n\t\t\tif( googleMap.indexOf(providerName) !== -1) {\n\t\t\t\tvar catField = $(this).parents('tr').find('.selectized').val();\n\n\t\t\t\tif (catField) {\n\t\t\t\t\t$('.' + groupId).parents('tr').find('select').each(function (i, v) {\n\t\t\t\t\t\t$(v).data('selectize').setValue(catField);\n\t\t\t\t\t});\n\t\t\t\t}\n\n\t\t\t} else {\n\t\t\t\tvar value = $('#cat_mapping_'+catId).val();\n\t\t\t\t$('.'+groupId).parents('tr').find('input').val(value);\n\t\t\t}\n\n\t\t});\n\n $(document).ready(function (){\n\n wpAjax.send('get_google_categories', {\n type: 'GET',\n data: {\n _ajax_nonce: opts.nonce,\n action: \"get_google_categories\",\n // provider: provider\n }\n }).then(function (response) {\n $('.selectize-google-category').selectize({\n valueField: 'value',\n labelField: 'text',\n placeholder: 'Select a category',\n searchField: ['value', 'text'],\n options: response,\n render: {\n option: (data, escape) => `<div class=\"item wapk-selectize-item\">${escape(data.value + ' - ' + data.text)}</div>`,\n item: (data, escape) => `<div class=\"item wapk-selectize-item\">${escape(data.value + ' - ' + data.text)}</div>`\n }\n });\n }).fail(helper.ajax_fail);\n\n\n\n });\n\n /*\n * Issue fix for feed edit page unsupported `Feed Type` not disabling\n *\n * @since 4.4.22\n * */\n $(document).on( \"feed_editor_init\", function(){\n\n let types = $('.merchant-info-section.feed_file_type .data').html().split(\",\").map(function(t) {\n return t.trim().toLowerCase();\n });\n\n let feedType = $(\"#feedType\");\n\n if (types.length) {\n feedType.find('option').each(function() {\n let opt = $(this);\n opt.val() && !helper.in_array(opt.val(), types) ? opt.disabled(!0) : opt.disabled(!1);\n });\n if (types.length === 1) feedType.find('option[value=\"' + types[0] + '\"]').attr('selected', 'selected');\n } else feedType.find('option').disabled(!1);\n\n } );\n\n /**\n * Automatically adding postfix for corresponding attribute selection.\n *\n * @since 4.4.32\n */\n $(document).on('ready', function(){\n\n function update_postfix(){\n var attribute_list = {\n\n 'price': wpf_ajax_obj.woocommerce.currency,\n 'current_price': wpf_ajax_obj.woocommerce.currency,\n 'sale_price': wpf_ajax_obj.woocommerce.currency,\n 'price_with_tax': wpf_ajax_obj.woocommerce.currency,\n 'current_price_with_tax': wpf_ajax_obj.woocommerce.currency,\n 'sale_price_with_tax': wpf_ajax_obj.woocommerce.currency,\n\n\n 'weight': wpf_ajax_obj.woocommerce.weight,\n 'weight_unit': wpf_ajax_obj.woocommerce.weight,\n\n\n 'height': wpf_ajax_obj.woocommerce.dimension,\n 'length': wpf_ajax_obj.woocommerce.dimension,\n 'width': wpf_ajax_obj.woocommerce.dimension\n\n };\n\n $( '.wf_attr.wf_attributes' ).each( function( key, value){\n\n var attribute_value = $(value).val();\n var current_Value = $( 'input[name^=\"suffix\"]' ).eq( parseInt( key ) ).val();\n\n if( -1 !== $.inArray( current_Value, [\n ' ' + wpf_ajax_obj.woocommerce.currency,\n ' ' + wpf_ajax_obj.woocommerce.weight,\n ' ' + wpf_ajax_obj.woocommerce.dimension\n ] ) ){\n $( 'input[name^=\"suffix\"]' ).eq( parseInt( key ) ).val('');\n }\n\n $.each(attribute_list, function (_key, _value){\n if( attribute_value === _key ){\n if( $( 'input[name^=\"suffix\"]' ).eq( parseInt( key ) ).val() === '' ){\n $( 'input[name^=\"suffix\"]' ).eq( parseInt( key ) ).val( ' ' + _value );\n }\n\n\n }\n });\n } );\n\n $(document).trigger( 'feedEditor.after.free.postfix.update' );\n }\n\n $(document).on('feedEditor.init', function(){\n update_postfix();\n });\n\n });\n\n})(jQuery, window, document, wp.ajax, wpf_ajax_obj);\n"]}
|
1 |
+
{"version":3,"sources":["woo-feed-admin.js"],"names":["_defineProperties","target","props","descriptor","i","enumerable","configurable","writable","Object","defineProperty","key","_createClass","Constructor","protoProps","staticProps","prototype","window","wpAjax","$","document","opts","self","prop","status","addClass","removeClass","hasClass","currentTarget","clearTooltip","userAgent","actionMsg","match","actionKey","index","join","removeAttr","elem","attr","msg","extend","_default","_args","valueField","$copyBtn","feedGenerator","this","on","ClipboardJS","event","action","showTooltip","trigger","test","navigator","ajax_fail","alert","facebookCategories","url","data","_classCallCheck","WooFeedCustomFields","productCustomFields","field","isTaxonomy","value","ajax","nonce","method","response","wpf_ajax_obj","wpf_ajax_url","success","_this","cacheClear","closest","find","hide","selectize","WooFeedFeedCategories","options","render","send","type","item","_ajax_nonce","then","fail","helper","labelField","placeholder","searchField","escape","concat","text","in_array","needle","haystack","indexOf","sortable","onDrop","column_count","warn","wf_sortable","containerSelector","e","hasOwnProperty","error","statusText","el","config","column","_onDrop","each","length","itemPath","itemSelector","create","plugins","$item","container","group","draggedClass","bodyClass","selectize_render_item","fancySelect","maxItemShow","split","map","s","not","handle","reindex_config_table","init","renderMerchantInfo","form","common","jQuery","k","opt","merchantInfo","feedType","r","types","html","t","trim","toLowerCase","na","disabled","val","_loop2","contentSettings","feedForm","feedEditor","is","merchantInfoCache","tooltip","css","top","_regenerate","isRegenerating","title","_current_btn","feed","_limit","generator","limit","_progress","_timer","_product_ids","_progress_per_batch","_refresh","mousemove","_feed","pageX","generate","replace","clip","fallbackMessage","condition","URLSearchParams","_color","preventDefault","parent","_log","regenerate","_all_btn","current_page_query","page_name","_block_button","_current_btn_label","message","product","setTimeout","_this2","_stopProgressBar","_process_batch","_updateProgressStatus","_current_batch","_total_batch","post","_save_feed_file","loop","_unblock_button","_resetProgressBar","console","refreshInterval","arguments","undefined","clearInterval","setInterval","_updateProgressBar","update","_toggleProgressBar","table","show","color","width","pagenow","attr_name","hover","renderMerchantTemplate","_loop","appendTo","remove","clipboard","confirm","href","slideToggle","loader","reload","button","status_area","select","execCommand","current_attribute_value","fancyOption","fancyDataPicker","selectIf","currency","price_attributes","selectKey","progress_message","parents","includes","outputSelect","feedCurrency","woocommerce","del_confirm_multi","add_postbox_toggles","row","_ajax_clean_nonce","validate","save","server","sftp_checking","sftp_available","merchant","sftp_warning","name","templateName","provider","valid","merchantTemplateCache","outOfStockVisibilityRow","feedName","checked","valueColumn","append","attribute","preload","load","google_category","query","googleCategories","learn_more","cb","itemWrapper","item_wrapper_hidden","wf_csv_txt","id","windowpos","scroll","click","cat_init","wooFeed_get_facebook_categories","wooFeed_get_google_categories","for_attr","setValue","catField","catId","groupId","v","ready","attribute_list","googleMap","current_feed_currency","price","providerName","location","queryString","weight","attribute_value","height","current_Value","dimension","feed_rules","search","get","eq","parseInt","inArray","_key","_value"],"mappings":"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","file":"woo-feed-admin.min.js","sourcesContent":["// noinspection JSUnresolvedletiable\n/**!\n * WooFeed Scripts\n * @version 3.3.6\n * @package WooFeed\n * @copyright 2020 WebAppick\n *\n */\n/* global ajaxurl, wpAjax, postboxes, pagenow, alert, deleteUserSetting, typenow, adminpage, thousandsSeparator, decimalPoint, isRtl */\n// noinspection JSUnresolvedVariable\n(function($, window, document, wpAjax, opts) {\n \"use strict\";\n /**\n * All of the code for your admin-facing JavaScript source\n * should reside in this file.\n *\n * Note: It has been assumed you will write jQuery code here, so the\n * $ function reference has been prepared for usage within the scope\n * of this function.\n *\n * This enables you to define handlers, for when the DOM is ready:\n */\n\n /**\n * disable element utility\n *\n * @since 3.1.9\n *\n * @param {*} status\n * @returns {$|HTMLElement}\n */\n $.fn.disabled = function(status) {\n $(this).each(function() {\n let self = $(this),\n prop = 'disabled';\n\n if (typeof self.prop(prop) !== 'undefined') {\n self.prop(prop, status === void 0 || status === true);\n } else {\n !0 === status ? self.addClass(prop) : self.removeClass(prop);\n }\n });\n return self; // method chaining\n };\n\n /**\n * Check if a HTMLElement or jQuery is disabled\n */\n $.fn.isDisabled = function() {\n let self = $(this),\n prop = 'disabled';\n return typeof self.prop(prop) !== 'undefined' ? self.prop(prop) : self.hasClass(prop);\n };\n\n /**\n * Clear Tooltip for clip board js\n * @param {Object} event\n */\n const clearTooltip = (event) => {\n $(event.currentTarget).removeClass( (index, className) => (className.match(/\\btooltipped-\\S+/g) || []).join(' ') ).removeClass('tooltipped').removeAttr('aria-label');\n };\n\n const showTooltip = (elem, msg) => {\n $(elem).addClass('tooltipped tooltipped-s').attr('aria-label', msg);\n };\n\n const fallbackMessage = (action) =>{\n let actionMsg,\n actionKey = action === 'cut' ? 'X' : 'C';\n\n if (/iPhone|iPad/i.test(navigator.userAgent)) {\n actionMsg = 'No support :(';\n } else if (/Mac/i.test(navigator.userAgent)) {\n actionMsg = 'Press ⌘-' + actionKey + ' to ' + action;\n } else {\n actionMsg = 'Press Ctrl-' + actionKey + ' to ' + action;\n }\n\n return actionMsg;\n };\n\n /**\n * Alias of jQuery.extend()\n * @param {Object} _default\n * @param {Object} _args\n */\n const extend = (_default, _args) => $.extend(true, {}, _default, _args);\n\n\t/*\n\t* Handles product attributes\n\t*\n\t* @since 4.4.18\n\t* */\n\tclass WooFeedCustomFields {\n\n\t\tconstructor( field, status, isTaxonomy ) {\n\t\t\tthis.productCustomFields( field, status, isTaxonomy );\n\t\t}\n\n\t\tcacheClear() {\n\t\t\tlet data = {\n\t\t\t\taction: 'woo_feed_product_attribute_cache_remove',\n\t\t\t\tnonce: wpf_ajax_obj.ajax.nonce,\n\t\t\t};\n\t\t\t$.ajax({\n\t\t\t\tmethod: 'POST',\n\t\t\t\turl: wpf_ajax_obj.wpf_ajax_url,\n\t\t\t\tdata\n\t\t\t});\n\t\t}\n\n\t\tproductCustomFields( field, status = false, isTaxonomy ) {\n\t\t\tlet data = {\n\t\t\t\taction: 'woo_feed_custom_fields_status_change',\n\t\t\t\tnonce: wpf_ajax_obj.ajax.nonce,\n\t\t\t\tfield,\n\t\t\t\tstatus,\n\t\t\t\tisTaxonomy\n\t\t\t};\n\t\t\t$.ajax({\n\t\t\t\tmethod: 'POST',\n\t\t\t\turl: wpf_ajax_obj.wpf_ajax_url,\n\t\t\t\tdata,\n\t\t\t\tsuccess: ( response ) => {\n\t\t\t\t\tif( response.success ) {\n\t\t\t\t\t\tthis.cacheClear();\n\t\t\t\t\t} else {\n\t\t\t\t\t\tconsole.log( response );\n\t\t\t\t\t}\n $('#'+field+'-switcher').closest('td').find('.switch-loader').hide();\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\t}\n\n /*\n * Handles product categories\n *\n * @since 4.4.39\n * */\n class WooFeedFeedCategories {\n wooFeed_get_google_categories () {\n wpAjax.send('get_google_categories', {\n type: 'GET',\n data: {\n _ajax_nonce: opts.nonce,\n action: \"get_google_categories\",\n // provider: provider\n }\n }).then(function (response) {\n $('.selectize-google-category').selectize({\n valueField: 'value',\n labelField: 'text',\n placeholder: 'Select a category',\n searchField: ['value', 'text'],\n options: response,\n render: {\n option: (data, escape) => `<div class=\"item wapk-selectize-item\">${escape(data.value + ' - ' + data.text)}</div>`,\n item: (data, escape) => `<div class=\"item wapk-selectize-item\">${escape(data.value + ' - ' + data.text)}</div>`\n }\n });\n }).fail(helper.ajax_fail);\n }\n\n wooFeed_get_facebook_categories() {\n // get facebook categories\n wpAjax.send('get_facebook_categories', {\n type: 'GET',\n data: {\n _ajax_nonce: opts.nonce,\n action: \"get_facebook_categories\",\n // provider: provider\n }\n }).then(function (response) {\n $('.selectize-google-category').selectize({\n valueField: 'value',\n labelField: 'text',\n placeholder: 'Select a Facebook category',\n searchField: ['value', 'text'],\n options: response,\n render: {\n option: (data, escape) => `<div class=\"item wapk-selectize-item\">${escape(data.value + ' - ' + data.text)}</div>`,\n item: (data, escape) => `<div class=\"item wapk-selectize-item\">${escape(data.value + ' - ' + data.text)}</div>`\n }\n });\n }).fail(helper.ajax_fail);\n }\n }\n\n let $copyBtn,\n clipboard,\n googleCategories,\n facebookCategories,\n helper = {\n in_array: (needle, haystack) => {\n try {\n return haystack.indexOf(needle) !== -1;\n } catch (e) {\n return false;\n }\n },\n selectize_render_item: (data, escape) => `<div class=\"item wapk-selectize-item\">${escape(data.text)}</div>`, // phpcs:ignore WordPressVIPMinimum.JS.StringConcat.Found,\n ajax_fail: e => {\n console.warn(e);\n alert(e.hasOwnProperty('statusText') && e.hasOwnProperty('status') ? opts.ajax.error + '\\n' + e.statusText + ' (' + e.status + ')' : e);\n },\n /**\n * Initialize Sortable\n * @param {$|HTMLElement} el\n * @param {object} config\n * @param {int|boolean} column\n * @param {function} onDrop\n * @return {$|HTMLElement}\n */\n sortable: (el, config, column, onDrop) => {\n return (el || $('.sorted_table')).each(function() {\n let self = $(this),\n column_count = self.find('tbody > tr:eq(0) > td').length || column || 9;\n self.wf_sortable(extend({\n containerSelector: 'table',\n itemPath: '> tbody',\n itemSelector: 'tr',\n handle: 'i.wf_sortedtable',\n placeholder: `<tr class=\"placeholder\"><td colspan=\"${column_count}\"></td></tr>`,\n onDrop: ($item, container, _super, event) => {\n $item.removeClass(container.group.options.draggedClass).removeAttr('style');\n $(\"body\").removeClass(container.group.options.bodyClass);\n if ( onDrop && 'function' === typeof( onDrop ) ) {\n onDrop( $item, container, _super, event );\n }\n },\n }, config));\n });\n },\n selectize: (el, config) => {\n return (el || $('select.selectize')).not('.selectized').not('.selectize-google-category').each(function() {\n let self = $(this);\n self.selectize(extend({\n create: self.data('create') || false,\n plugins: self.data('plugins') ? self.data('plugins').split(',').map(function(s) {\n return s.trim();\n }) : [],\n //['remove_button'],\n render: {\n item: helper.selectize_render_item\n }\n }, config));\n });\n },\n fancySelect: (el, config) => {\n return (el || $('select.fancySelect')).not('.FancySelectInit').each(function() {\n let self = $(this);\n self.fancySelect(extend({\n maxItemShow: 3\n }, config));\n });\n },\n reindex_config_table: () => {\n $('#table-1').find('tbody tr').each( ( x, el ) => {\n $(el).find('[name]').each( ( x1, el ) => {\n $(el).attr('name', $(el).attr('name').replace(/(\\[\\d\\])/g, `[${x}]`));\n } );\n } );\n },\n common: () => {\n helper.sortable( $('.sorted_table'), {}, 9, helper.reindex_config_table );\n helper.selectize();\n helper.fancySelect($('.outputType'));\n }\n },\n // helper functions\n feedEditor = {\n /**\n * The Editor Form Elem.\n * @type {$|HTMLElement}\n */\n form: null,\n\n /**\n * Initialize The Feed Editor {Tabs...}\n * @returns {void}\n */\n init: function () {\n let self = this;\n self.form = $('.generateFeed');\n if (!self.form.length) return;\n helper.common();\n // noinspection JSUnresolvedVariable\n $(document).trigger('feed_editor_init');\n $(document).trigger(new jQuery.Event('feedEditor.init', {\n target: this.form\n }));\n },\n\n /**\n * Render Merchant info ajax response and handle allowed feed type for selected merchant\n * @param {$|HTMLElement} merchantInfo jQuery dom object\n * @param {$|HTMLElement} feedType jQuery dom object\n * @param {Object} r ajax response object\n */\n renderMerchantInfo: function (merchantInfo, feedType, r) {\n for (let k in r) {\n if (r.hasOwnProperty(k)) {\n merchantInfo.find('.merchant-info-section.' + k + ' .data').html(r[k]); // phpcs:ignore WordPressVIPMinimum.JS.HTMLExecutingFunctions.html\n\n if ('feed_file_type' === k) {\n (function() {\n let types = r[k].split(\",\").map(function(t) {\n return t.trim().toLowerCase();\n }).filter(function(t) {\n // noinspection JSUnresolvedVariable\n return t !== '' && t !== opts.na.toLowerCase();\n });\n\n if (types.length) {\n feedType.find('option').removeAttr('selected').each(function() {\n let opt = $(this);\n opt.val() && !helper.in_array(opt.val(), types) ? opt.disabled(!0) : opt.disabled(!1);\n });\n if (types.length === 1) feedType.find('option[value=\"' + types[0] + '\"]').attr('selected', 'selected');\n } else feedType.find('option').disabled(!1);\n })();\n }\n }\n }\n\n merchantInfo.find('.spinner').removeClass('is-active');\n feedType.disabled(!1);\n feedType.trigger('change');\n\n /**\n * Triggers after merchant configuration is fetched & loaded\n * */\n $(document).trigger('woo_feed_config_loaded');\n\n feedType.parent().find('.spinner').removeClass('is-active');\n },\n\n /**\n * Render Feed Template Tabs and settings while creating new feed.\n * @param {$|HTMLElement} feedForm feed from query dom object\n * @param {object} r merchant template ajax response object\n */\n renderMerchantTemplate: function (feedForm, r) {\n let _loop = function _loop(k) {\n if (r.hasOwnProperty(k)) {\n if ('tabs' === k) {\n // noinspection JSUnresolvedFunction\n feedForm.html(r[k]); // phpcs:ignore WordPressVIPMinimum.JS.HTMLExecutingFunctions.html\n } else {\n let contentSettings = $('[name=\"' + k + '\"]');\n\n if (contentSettings.length) {\n contentSettings.each(function() {\n let elem = $(this);\n\n if (elem.is('select')) {\n elem.find('[value=\"' + r[k] + '\"]').prop('selected', true);\n } else if ((elem.is('[type=checkbox]') || elem.is('[type=radio]')) && elem.val() === r[k]) {\n elem.prop('checked', true);\n } else {\n elem.val(r[k]); // type=text\n }\n }).trigger('change');\n }\n }\n }\n };\n\n for (let k in r) {\n _loop(k);\n }\n\n feedEditor.init();\n }\n },\n // Feed Editor Table\n merchantInfoCache = [],\n merchantTemplateCache = [],\n tooltip = () => {\n // Tooltip only Text\n $('.wfmasterTooltip')\n .hover(function () {\n // Hover over code\n let self = $(this), title = self.attr('wftitle');\n self.data('tipText', title).removeAttr('wftitle');\n $('<p class=\"wftooltip\"></p>').text(title).appendTo('body').fadeIn('slow');\n }, function () {\n // Hover out code\n let self = $(this);\n self.attr('wftitle', self.data('tipText'));\n $('.wftooltip').remove();\n })\n .mousemove(function (e) {\n $('.wftooltip').css({\n top: e.pageY + 10,\n left: e.pageX + 20\n });\n });\n },\n clip = () => {\n $copyBtn = $('.toClipboard');\n if (!ClipboardJS.isSupported() || /iPhone|iPad/i.test(navigator.userAgent)) {\n $copyBtn.find('img').hide(0);\n } else {\n $copyBtn.each(function() {\n $(this).on('mouseleave', clearTooltip).on('blur', clearTooltip);\n });\n clipboard = new ClipboardJS('.toClipboard');\n clipboard.on('error', function(event) {\n showTooltip(event.trigger, fallbackMessage(event.action));\n }).on('success', function(event) {\n showTooltip(event.trigger, 'Copied');\n });\n }\n };\n\n /**\n * Feed Generator Module\n */\n class feedGenerator {\n\n /**\n * Constructor\n * @constructor\n */\n constructor() {\n this._feed = opts.generator.feed; // wf_config+xxxx\n this._limit = opts.generator.limit;\n this._progress = 0;\n this._timer = null;\n this._color = false;\n // batch info\n this._total_batch = 0;\n this._current_batch = 0;\n this._product_ids = [];\n this._progress_per_batch = 0;\n this._refresh = true;\n // noinspection JSUnresolvedVariable\n this._regenerate = opts.generator.regenerate;\n window.isRegenerating = false;\n this._all_btn = $('.wpf_regenerate');\n this._current_btn = $(`#${this._feed.replace( 'wf_config', 'wf_feed_' )}`);\n this._current_btn_label = '';\n }\n\n /**\n * Init Hooks (Event)\n * @return {feedGenerator}\n */\n init() {\n let self = this;\n if ( '' !== this._feed && this._regenerate && false === window.isRegenerating ) {\n this.generate();\n }\n\n //thickbox body add feed plugin class to make it unique and custom style\n let current_page_query = window.location.search;\n let params = new URLSearchParams(current_page_query);\n let page_name = params.get(\"page\");\n if( \"webappick-manage-feeds\" === page_name ) {\n $('body').addClass('woo-import-popup-body');\n }\n\n $(document).on('click', '.woo-feed-campaign-close-button', function(event) {\n event.preventDefault();\n\n $(this).parent('.woo-feed-promotion').hide();\n let condition = $(this).data('condition');\n if(1 === condition) {\n wpAjax.post( 'woo_feed_hide_promotion', {\n _ajax_nonce: opts.nonce,\n condition: condition,\n } ).then( response => {\n self._log( response );\n } ).fail( error => {\n self._log( error );\n self._updateProgressStatus( error.message );\n self._color = 'red';\n } );\n }\n });\n\n $(document).on('click', '.wpf_regenerate', function(event) {\n event.preventDefault();\n self._current_btn = $( this );\n if( self._current_btn.hasClass('disabled') || window.isRegenerating === true ) return;\n self._feed = self._current_btn.attr('id').replace( 'wf_feed_', 'wf_config' );\n if( '' !== self._feed ) {\n self.generate();\n }\n });\n return this;\n }\n\n _block_button() {\n if ( this._all_btn.length ) {\n this._all_btn.addClass('disabled');\n }\n if ( this._current_btn.length ) {\n this._current_btn.find('span').addClass('wpf_spin reverse_spin');\n this._current_btn_label = this._current_btn.attr('title');\n // noinspection JSUnresolvedVariable\n this._current_btn.attr( 'aria-label', opts.regenerate ).attr( 'title', opts.regenerate );\n }\n }\n\n _unblock_button() {\n if ( this._all_btn.length ) {\n this._all_btn.removeClass('disabled');\n }\n if ( this._current_btn.length ) {\n this._current_btn.find('span').removeClass('wpf_spin');\n this._current_btn.find('span').removeClass('reverse_spin');\n this._current_btn.attr( 'aria-label', this._current_btn_label ).attr( 'title', this._current_btn_label );\n }\n }\n\n /**\n * Generate Feed\n * @return void\n */\n generate() {\n let self = this;\n window.isRegenerating = true;\n this._block_button();\n this._resetProgressBar();\n this._progressBarActive();\n this._log( 'Counting Total Products' );\n this._updateProgressStatus( 'Fetching products.' );\n this._get_product_ids().then( response => {\n this._progress = 10;\n self._log( {response} );\n if(response.success) {\n self._log( `Total ${response.total} Products found.` );\n self._product_ids = response.product;\n self._total_batch = this._product_ids.length;\n self._current_batch = 0;\n self._progress_per_batch = ( 90 - this._progress ) / this._total_batch;\n self._process_batch();\n self._updateProgressStatus( 'Processing Products...' );\n } else {\n self._updateProgressStatus( response.data.message );\n }\n }).fail( error => {\n self._log( error );\n self._updateProgressStatus( error.message );\n self._color = 'red';\n setTimeout( function(){\n self._stopProgressBar();\n self._unblock_button();\n }, 1500 );\n } );\n }\n\n /**\n * Get Product Ids\n * @returns {$.promise}\n * @private\n */\n _get_product_ids() {\n this._progress = 5;\n return wpAjax.post( 'get_product_information', {\n _ajax_nonce: opts.nonce,\n feed: this._feed,\n limit: this._limit,\n } );\n }\n\n /**\n * Run the Batch\n * @private\n */\n _process_batch() {\n let self = this;\n let status = `Processing Batch ${this._current_batch+1} of ${this._total_batch}`;\n this._updateProgressStatus( status );\n this._log( status );\n wpAjax.post( 'make_batch_feed', {\n _ajax_nonce: opts.nonce,\n feed: this._feed,\n products: this._product_ids[this._current_batch],\n loop: this._current_batch,\n } ).then( response => {\n self._current_batch++;\n self._log( `Batch ${self._current_batch} Completed` );\n self._log( response );\n if ( self._current_batch < self._total_batch ) {\n self._process_batch();\n self._progress += self._progress_per_batch;\n }\n if ( self._current_batch === self._total_batch ) {\n self._save_feed_file();\n }\n } ).fail( error => {\n self._log( error );\n self._updateProgressStatus( error.message );\n self._color = 'red';\n setTimeout( function(){\n self._stopProgressBar();\n self._unblock_button();\n }, 1500 );\n } );\n }\n\n /**\n * Save Feed Data from temp to feed file\n * @private\n */\n _save_feed_file() {\n let self = this;\n this._log( 'Saving feed file' );\n this._updateProgressStatus( 'Saving feed file' );\n wpAjax.post( 'save_feed_file', {\n _ajax_nonce: opts.nonce,\n feed: this._feed,\n } ).then( response => {\n self._log( response );\n self._progress = 100;\n if ( self._refresh ) {\n window.location.href = `${opts.pages.list.feed}&link=${response.url}&cat=${response.cat}`;\n }\n setTimeout( function(){\n self._stopProgressBar();\n setTimeout( function(){\n self._resetProgressBar( true );\n self._unblock_button();\n }, 3000 );\n }, 2500 );\n } ).fail( error => {\n self._log( error );\n self._updateProgressStatus( error.message );\n self._color = 'red';\n setTimeout( function(){\n self._stopProgressBar();\n self._unblock_button();\n }, 1500 );\n } );\n }\n\n /**\n * Console log wrapper with debug settings.\n * @param data\n * @returns {feedGenerator}\n * @private\n */\n _log( data ) {\n // noinspection JSUnresolvedVariable\n if ( opts.wpf_debug ) {\n console.log( data );\n }\n return this;\n }\n\n /**\n * Run the progressbar refresh interval\n * @param {int} refreshInterval\n * @returns {feedGenerator}\n * @private\n */\n _progressBarActive( refreshInterval = 0 ) {\n let self = this;\n this._toggleProgressBar( true );\n this._timer = setInterval( function(){\n self._updateProgressBar();\n }, refreshInterval || 1000 );\n return this;\n }\n\n /**\n * Stop Progressbar\n * @returns {feedGenerator}\n * @private\n */\n _stopProgressBar() {\n clearInterval( this._timer );\n return this;\n }\n\n /**\n * Reset Progressbar\n * @returns {feedGenerator}\n * @private\n */\n _resetProgressBar( update ) {\n this._toggleProgressBar( false );\n this._updateProgressStatus( '' );\n clearInterval( this._timer );\n this._color = false;\n this._timer = null;\n this._progress = 0;\n if ( update ) {\n this._updateProgressBar();\n }\n return this;\n }\n\n /**\n * Show hide the progress bar el\n * @param status\n * @returns {feedGenerator}\n * @private\n */\n _toggleProgressBar( status ) {\n let table = $('#feed_progress_table');\n if ( status ) {\n table.show();\n } else {\n table.hide();\n }\n return this;\n }\n\n /**\n * Update Progress bar text status\n * @param {string} status\n * @returns {feedGenerator}\n * @private\n */\n _updateProgressStatus( status ) {\n $( '.feed-progress-status' ).html( status );\n return this;\n }\n\n _getErrorMessageByCode( error ){\n let progress_message = $( '.feed-progress-status' );\n progress_message.css( {'color':this._color});\n $( '.feed-progress-percentage' ).css( {'color':this._color});\n $( '.wpf_spin' ).css( {'color':this._color});\n\n let message=error.status +' : '+ error.statusText+'. ';\n if(500===error.status){\n message+= \"Please increase your PHP max_execution_time. Please <a target='_blank' href='https://webappick.com/docs/woo-feed/faq-for-woocommerce-product-feed/how-to-solve-processing-10-feed-generation-stuck-error/'>read this doc</a>.\";\n }\n\n this._updateProgressStatus(message);\n\n }\n\n /**\n * Update Progress Data\n * hooked with setInterval\n * @private\n */\n _updateProgressBar() {\n let percentage = $( '.feed-progress-percentage' ),\n bar = $( '.feed-progress-bar-fill' ),\n _progress = `${Math.round( this._progress )}%`;\n bar.css( {\n width: _progress,\n } );\n percentage.text( _progress );\n }\n }\n // expose to the global scope\n window.wf = {\n helper: helper,\n feedEditor: feedEditor,\n generator: feedGenerator,\n };\n\n $(window).on('load', function() {\n // Template loading ui conflict\n if ($(location).attr(\"href\").match(/webappick.*feed/g) !== null) {\n $('#wpbody-content').addClass('woofeed-body-content');\n }\n\n // ClipBoardJS\n clip();\n // postbox toggle\n postboxes.add_postbox_toggles(pagenow);\n // initialize generator\n let generator = new feedGenerator();\n generator.init();\n // noinspection JSUnresolvedVariable\n if( '' !== opts.generator.feed && opts.generator.regenerate ) {\n\n }\n // initialize editor\n feedEditor.init();\n helper.common(); // Generate Feed Add Table Row\n tooltip();\n // validate feed editor\n $(\".generateFeed\").validate();\n\n // document events\n $(document)\n .on('blur', 'input[name=\"wfDAttributeName\"]', function(e) {\n e.preventDefault();\n let attr_name = $(this).val();\n attr_name = attr_name.toLowerCase();\n attr_name = attr_name.split(' ').join('_');\n\n $('#wfDAttributeCode').val(attr_name);\n\n })\n .on('click', '[data-toggle_slide]', function(e) {\n e.preventDefault();\n $($(this).data('toggle_slide')).slideToggle('fast');\n })\n // XML Feed Wrapper\n .on('click', '#wf_newRow', function () {\n let tbody = $('#table-1 tbody'),\n template = $('#feed_config_template').text().trim().replace(/__idx__/g, tbody.find('tr').length);\n tbody.append(template);\n helper.fancySelect($('.outputType'));\n })\n // feed delete alert.\n .on('click', '.single-feed-delete', function (event) {\n event.preventDefault();\n // noinspection JSUnresolvedVariable\n if (confirm(opts.form.del_confirm)) {\n window.location.href = $(this).attr('val');\n }\n })\n // clear cache data.\n .on('click', '.wf_clean_cache_wrapper', function(event) {\n event.preventDefault();\n var nonce = $('.woo-feed-clean-cache-nonce').val();\n var loader = $('.woo-feed-cache-loader');\n\n //show loader\n loader.show();\n\n // passed cache nonce\n wpAjax.post('clear_cache_data', {\n _ajax_clean_nonce: nonce\n }).then(function (response) {\n if( response.success ) {\n loader.hide(); //hide loader\n location.reload();\n }\n }).fail(function () {\n console.log('something wrong');\n });\n\n })// Copy Status\n .on('click', '#woo-feed-copy-status-btn', function(event) {\n event.preventDefault();\n let button = $('#woo-feed-copy-status-btn');\n let status_area = $('#woo-feed-status-area');\n button.val('Copied');\n status_area.css('visibility','visible');\n status_area.select();\n\n document.execCommand('copy');\n })\n // feed value dropdown change.\n .on('change', '.wf_attr.wf_attributes', function(event) {\n event.preventDefault();\n\n $('.fancy-picker-picked').trigger(\"click\"); // trigger fancy select box clicked\n\n // price attributes\n var price_attributes = ['price', 'current_price', 'sale_price', 'price_with_tax', 'current_price_with_tax', 'sale_price_with_tax', 'shipping_cost'];\n // current value\n var current_attribute_value = $(this).val();\n var outputSelect = $(this).parents('tr').find('.outputType');\n var fancyOption = $(this).parents('tr').find('.fancy-picker-content .fancy-picker-option');\n var fancyDataPicker = $(this).parents('tr').find('.fancy-picker-data span');\n var selectIf, selectKey;\n var currency;\n\n // when any attribute is selected, pick the key\n if( price_attributes.includes(current_attribute_value) ) {\n // when select any price attribute\n selectIf = 'for_price';\n selectKey = \"Price\";\n } else if ( \"\" !== current_attribute_value && -1 !== current_attribute_value.indexOf('wf_taxo') ) {\n\n // when select any custom taxonomy\n selectIf = 'for_custom_taxo';\n selectKey = \"parent_if_empty\";\n } else {\n\n selectIf = 'for_all';\n selectKey = 'Default';\n }\n\n // remove selected class from old selected option\n fancyOption.removeClass('selected');\n\n // when value dropdown is selected as price or any custom taxonomy\n if( selectIf === 'for_custom_taxo' || selectIf === 'for_price' ) {\n // update \"Option Type\" when select key matches\n fancyOption.each(function() {\n if( selectKey === $(this).text() ) {\n $(this).addClass('selected');\n fancyDataPicker.text(selectKey);\n outputSelect.find(\"option\").text(selectKey);\n outputSelect.find(\"option\").val( $(this).data('value') );\n }\n });\n\n if( \"for_price\" === selectIf ) {\n var feedCurrency = $('#feedCurrency').val();\n if( \"undefined\" !== typeof feedCurrency && null !== feedCurrency ) {\n currency = feedCurrency;\n }else {\n currency = wpf_ajax_obj.woocommerce.currency;\n }\n\n //for price add currency to the suffix\n $(this).closest(\"tr\").find(\"td:eq(5) input\").val(\" \" + currency);\n }\n\n } else {\n fancyOption.each(function(){\n if( selectKey === $(this).text() ){\n $(this).addClass('selected');\n fancyDataPicker.text(selectKey);\n outputSelect.find(\"option\").text(selectKey);\n outputSelect.find(\"option\").val( $(this).data(\"value\") );\n }\n });\n\n $(this).closest(\"tr\").find(\"td:eq(5) input\").val(\"\");\n }\n\n })\n // bulk delete alert.\n .on('click', '#doaction, #doaction2', function () {\n // noinspection JSUnresolvedVariable\n return confirm(opts.form.del_confirm_multi);\n })\n // Generate Feed Table Row Delete\n .on('change', '.dType', function () {\n let self = $(this),\n type = self.val(),\n row = self.closest('tr');\n\n if (type === 'pattern') {\n row.find('.value_attribute').hide();\n row.find('.value_pattern').show();\n } else if (type === 'attribute') {\n row.find('.value_attribute').show();\n row.find('.value_pattern').hide();\n } else if (type === 'remove') {\n row.find('.value_attribute').hide();\n row.find('.value_pattern').hide();\n }\n })\n // Generate Feed Form Submit\n .on('click', '.delRow', function (e) {\n e.preventDefault();\n $(this).closest('tr').remove();\n helper.reindex_config_table();\n })\n .on('submit', '#generateFeed', function () {\n // Feed Generating form validation\n $(this).validate();\n\n if ($(this).valid()) {\n $(\".makeFeedResponse\")\n .show()\n .html(`<b style=\"color: darkblue;\"><i class=\"dashicons dashicons-sos wpf_spin\"></i> ${opts.form.generate}</b>`); // phpcs:ignore WordPressVIPMinimum.JS.HTMLExecutingFunctions.html, WordPressVIPMinimum.JS.StringConcat.Found\n }\n })\n // Generate Update Feed Form Submit\n .on('submit', '#updatefeed', function (e, data) {\n // Feed Generating form validation\n $(this).validate();\n\n if ($(this).valid()) {\n $(\".makeFeedResponse\")\n .show()\n .html(`<b style=\"color: darkblue;\"><i class=\"dashicons dashicons-sos wpf_spin\"></i> ${data && data.save ? opts.form.save : opts.form.generate}</b>`); // phpcs:ignore WordPressVIPMinimum.JS.HTMLExecutingFunctions.html, WordPressVIPMinimum.JS.StringConcat.Found\n }\n })\n .on( 'ready woo_feed_config_loaded', function(){\n\n if( $('#ftpenabled').val() === '0' ){\n $('.google-merchant-message').hide('slow');\n $('.woo-feed-ftp .ftpconfig tr:not(.ftpcontroller) input, .woo-feed-ftp .ftpconfig tr:not(.ftpcontroller) select').attr('disabled','disabled');\n } else {\n if( $('#provider').val() === 'google' ) {\n $('.google-merchant-message').show('slow');\n } else {\n $('.google-merchant-message').hide('slow');\n }\n $('.woo-feed-ftp .ftpconfig tr:not(.ftpcontroller) input, .woo-feed-ftp .ftpconfig tr:not(.ftpcontroller) select').removeAttr('disabled');\n }\n\n $('#ftpenabled').on('change', function(){\n if( $('#ftpenabled').val() === '0' ){\n $('.google-merchant-message').hide('slow');\n $('.woo-feed-ftp .ftpconfig tr:not(.ftpcontroller) input, .woo-feed-ftp .ftpconfig tr:not(.ftpcontroller) select').attr('disabled','disabled');\n } else {\n\n $('.woo-feed-ftp .ftpconfig tr:not(.ftpcontroller) input, .woo-feed-ftp .ftpconfig tr:not(.ftpcontroller) select').removeAttr('disabled');\n\n // Google merchant specific message\n if( $('#provider').val() === 'google' ){\n $('.google-merchant-message').show('slow');\n } else {\n $('.google-merchant-message').hide('slow');\n }\n\n }\n });\n })\n .on('change', '.ftporsftp', function () {\n let server = $(this).val(),\n status = $('.ssh2_status');\n\n if (server === 'sftp') {\n // noinspection JSUnresolvedVariable\n status.show().css('color', 'dodgerblue').text(opts.form.sftp_checking);\n wpAjax.post('get_ssh2_status', {\n _ajax_nonce: opts.nonce,\n server: server\n }).then(function (response) {\n if (response === 'exists') {\n // noinspection JSUnresolvedVariable\n status.css('color', '#2CC185').text(opts.form.sftp_available);\n setTimeout(function () {\n status.hide();\n }, 1500);\n } else {\n // noinspection JSUnresolvedVariable\n status.show().css('color', 'red').text(opts.form.sftp_warning);\n }\n }).fail(function (e) {\n status.hide();\n helper.ajax_fail(e);\n });\n } else {\n status.hide();\n }\n })\n .on('click', '[name=\"save_feed_config\"]', function (e) {\n e.preventDefault();\n $('#updatefeed').trigger('submit', {\n save: true\n });\n })\n .on('change', '#provider', function (event) {\n event.preventDefault();\n\n let merchant = $(this).val(),\n templateName = $(this).find(':selected').text(),\n name = $('#filename').val(),\n feedType = $(\"#feedType\"),\n feedForm = $(\"#providerPage\"),\n merchantInfo = $('#feed_merchant_info'); // set loading..\n\n // noinspection JSUnresolvedVariable\n feedForm.html('<h3><span style=\"float:none;margin: -3px 0 0;\" class=\"spinner is-active\"></span> ' + opts.form.loading_tmpl + '</h3>'); // phpcs:ignore WordPressVIPMinimum.JS.HTMLExecutingFunctions.html, WordPressVIPMinimum.JS.StringConcat.Found\n\n merchantInfo.find('.spinner').addClass('is-active');\n feedType.disabled(!0); // disable dropdown\n\n feedType.parent().find('.spinner').addClass('is-active');\n merchantInfo.find('.merchant-info-section .data').html(''); // remove previous data\n // Get Merchant info for selected Provider/Merchant\n\n if (merchantInfoCache.hasOwnProperty(merchant)) {\n feedEditor.renderMerchantInfo(merchantInfo, feedType, merchantInfoCache[merchant]);\n\n /**\n * Triggers after merchant configuration is fetched & loaded\n * */\n $(document).trigger('woo_feed_config_loaded');\n\n } else {\n wpAjax.send('woo_feed_get_merchant_info', {\n type: 'GET',\n data: {\n nonce: opts.nonce,\n provider: merchant,\n templateName: templateName\n }\n }).then(function (r) {\n merchantInfoCache[merchant] = r;\n feedEditor.renderMerchantInfo(merchantInfo, feedType, r);\n }).then(function(){\n\n /**\n * Triggers after merchant configuration is fetched & loaded\n * */\n $(document).trigger('woo_feed_config_loaded');\n\n }).fail(helper.ajax_fail);\n } // Get FeedForm For Selected Provider/Merchant\n\n\n if (merchantTemplateCache.hasOwnProperty(merchant)) {\n feedEditor.renderMerchantTemplate(feedForm, merchantTemplateCache[merchant]);\n\n /**\n * Triggers after merchant configuration is fetched & loaded\n * */\n $(document).trigger('woo_feed_config_loaded');\n\n } else {\n wpAjax.post('get_feed_merchant', {\n _ajax_nonce: opts.nonce,\n merchant: merchant\n }).then(function (r) {\n merchantTemplateCache[merchant] = r;\n feedEditor.renderMerchantTemplate(feedForm, r);\n $('#utm_source').val(templateName);\n $('#utm_campaign').val(name);\n //when merchant is bing, change delimiter and enclosure\n if( 'bing' === merchant ) {\n //delimiter value\n $(\"#delimiter option\").removeAttr('selected');\n $(\"#delimiter option[value=\\\"tab\\\"]\").attr('selected', 'selected');\n\n //enclosure value\n $(\"#enclosure option\").removeAttr('selected');\n $(\"#enclosure option[value=\\\" \\\"]\").attr('selected', 'selected');\n }\n\n //reviewer options hide\n if( 'google_product_review' !== merchant) {\n $('.wf_attributes option[value=\"reviewer_name\"]').hide();\n }\n }).then(function(){\n\n /**\n * Triggers after merchant configuration is fetched & loaded\n * */\n $(document).trigger('woo_feed_config_loaded');\n\n }).fail(helper.ajax_fail);\n }\n })\n // Feed Active and Inactive status change via ajax\n .on('change', '.woo_feed_status_input', function () {\n let self = $(this);\n wpAjax.post('update_feed_status', {\n _ajax_nonce: opts.nonce,\n feedName: self.val(),\n status: self[0].checked ? 1 : 0\n });\n });\n // event with trigger\n $(document)\n .on('change', '[name=\"is_outOfStock\"], [name=\"product_visibility\"]', function () {\n let outOfStockVisibilityRow = $('.out-of-stock-visibility');\n if ($('[name=\"is_outOfStock\"]:checked').val() === 'n' && $('[name=\"product_visibility\"]:checked').val() === '1') {\n outOfStockVisibilityRow.show();\n } else {\n outOfStockVisibilityRow.hide();\n }\n })\n .on('change', '.attr_type', function () {\n // Attribute type selection\n let self = $(this),\n type = self.val(),\n row = self.closest('tr');\n\n if (type === 'pattern') {\n row.find('.wf_attr').hide();\n row.find('.wf_attr').val('');\n row.find('.wf_default').show();\n } else {\n row.find('.wf_attr').show();\n row.find('.wf_default').hide();\n row.find('.wf_default').val('');\n }\n })\n .on('change', '.wf_mattributes, .attr_type', function () {\n let row = $(this).closest('tr'),\n attribute = row.find('.wf_mattributes'),\n type = row.find('.attr_type'),\n valueColumn = row.find('td:eq(4)'),\n provider = $('#provider').val();\n\n // noinspection JSUnresolvedVariable\n if (opts.form.google_category.hasOwnProperty(attribute.val()) && type.val() === 'pattern' && helper.in_array(provider, opts.form.google_category[attribute.val()])) {\n if (valueColumn.find('select.selectize').length === 0) {\n valueColumn.find('input.wf_default').remove();\n valueColumn.append('<span class=\"wf_default wf_attributes\"><select name=\"default[]\" class=\"selectize\"></select></span>');\n // noinspection JSUnresolvedVariable\n valueColumn.append(`<span style=\"font-size:x-small;\"><a style=\"color: red\" href=\"https://webappick.com/docs/woo-feed/feed-configuration/how-to-map-store-category-with-merchant-category/\" target=\"_blank\">${opts.learn_more}</a></span>`);\n\n if (!googleCategories || !facebookCategories) {\n valueColumn.append('<span class=\"spinner is-active\" style=\"margin: 0;\"></span>');\n }\n\n let select = valueColumn.find('.wf_attributes select');\n // noinspection JSUnresolvedVariable\n helper.selectize(select, {\n preload: true,\n placeholder: opts.form.select_category,\n load: function load(query, cb) {\n if (!googleCategories) {\n wpAjax.send('get_google_categories', {\n type: 'GET',\n data: {\n _ajax_nonce: opts.nonce,\n action: \"get_google_categories\",\n provider: provider\n }\n }).then(function (r) {\n googleCategories = r;\n cb(googleCategories);\n valueColumn.find('.spinner').remove();\n }).fail(helper.ajax_fail);\n } else {\n cb(googleCategories);\n }\n\n //for facebook product category merchant attribute\n if (!facebookCategories && \"facebook\" === provider && \"fb_product_category\" === attribute.val()) {\n wpAjax.send('get_facebook_categories', {\n type: 'GET',\n data: {\n _ajax_nonce: opts.nonce,\n action: \"get_facebook_categories\",\n provider: provider\n }\n }).then(function (r) {\n facebookCategories = r;\n cb(facebookCategories);\n valueColumn.find('.spinner').remove();\n }).fail(helper.ajax_fail);\n } else {\n cb(facebookCategories);\n }\n }\n });\n }\n } else {\n if ( attribute.val() !== 'current_category' && valueColumn.find('input.wf_default').length === 0) {\n valueColumn.find('span').remove();\n valueColumn.append('<input autocomplete=\"off\" class=\"wf_default wf_attributes\" type=\"text\" name=\"default[]\" value=\"\">');\n\n if (type.val() !== 'pattern') {\n valueColumn.find('input.wf_default').hide();\n }\n }\n }\n })\n .on('change', '#feedType,#provider', function (e) {\n let type = $('#feedType').val(),\n provider = $('#provider').val(),\n itemWrapper = $('.itemWrapper'),\n wf_csv_txt = $('.wf_csvtxt');\n\n // noinspection JSUnresolvedVariable\n if (type !== '' && helper.in_array(provider, opts.form.item_wrapper_hidden)) {\n itemWrapper.hide();\n }\n\n //when feed type is changed\n if( 'feedType' === e.target.id ) {\n if (type === 'csv' || type === 'txt' || type === 'tsv') {\n wf_csv_txt.show();\n itemWrapper.hide();\n \n if( 'tsv' === type ) {\n $('#delimiter option:last').prop(\"selected\", \"selected\");\n } else if( 'csv' === type ) {\n $('#delimiter option:first').prop(\"selected\", \"selected\");\n }\n } else if( 'xml' === type && \"custom\" === provider ) {\n itemWrapper.show();\n wf_csv_txt.hide();\n } else if( 'json' === type ) {\n wf_csv_txt.hide();\n }\n }\n\n // when template is not custom template 1 hide the item wrapper\n if( \"custom\" !== provider ) {\n itemWrapper.hide();\n }\n\n })\n .trigger('change');\n\n\n $(document)\n\t\t\t.on('click', '.woofeed-custom-fields [id*=\"-switcher\"]', function () {\n\t\t\t $(this).closest('td').find('.switch-loader').show();\n\t\t\t\tlet field = $(this).attr( 'id' ).split( '-' )[0],\n\t\t\t\t\tisTaxonomy = $(this).data( 'taxonomy' ),\n\t\t\t\t\tstatus = $(this).prop( 'checked' );\n\t\t\t\tnew WooFeedCustomFields( field, status, isTaxonomy );\n\n\t\t\t})\n\n\t\t\t// Remove sticky cart on feature page\n\t\t\t.ready(function() {\n\t\t\t\tvar s = $(\".wapk-feed-buy-now-container\");\n\t\t\t\t$(window).scroll(function() {\n\t\t\t\t\tvar windowpos = $(window).scrollTop();\n\t\t\t\t\tif ( windowpos <= 5000 ) {\n\t\t\t\t\t\ts.addClass(\"fixed\");\n\t\t\t\t\t} else {\n\t\t\t\t\t\ts.removeClass(\"fixed\");\n\t\t\t\t\t}\n\t\t\t\t});\n\t\t\t});\n });\n\n $(document)\n\t\t.on('click', '#woo-feed-debug-log-download', function (e) {\n\t\t\te.preventDefault();\n\t\t\t$(\"<a />\", {\n\t\t\t\tdownload: new Date() + \".log\",\n\t\t\t\thref: URL.createObjectURL(\n\t\t\t\t\tnew Blob([$(\"#woo-feed-debug-log\").val()], {\n\t\t\t\t\t\ttype: \"text/plain\"\n\t\t\t\t\t})),\n\t\t\t}).appendTo(\"body\")[0].click();\n\t\t})\n\t\t.on('keyup', '#filename', function() {\n\t\t\tvar name = $('#filename').val();\n\t\t\t$('#utm_campaign').val(name);\n\t\t})\n\n .on('click', '.wf-tab-name', function(e) {\n $('.wf-tab-name.activate').removeClass('activate');\n $(this).addClass('activate');\n\n let for_attr = $(this).attr('for');\n $('.wf_tabs li.active').removeClass('active');\n $('.wf_tabs .wf-tab-content#' + for_attr).parent().addClass('active');\n })\n\n\t\t.on('change', '#category-mapping-form #providers', function() {\n\t\t\tvar provider = $(this).find(':selected').val(),\n\t\t\t\tgoogleMap = ['google', 'facebook', 'pinterest', 'bing', 'bing_local_inventory', 'snapchat'];\n\t\t\tif( googleMap.indexOf(provider) !== -1 ) {\n\t\t\t\t$('input[id*=\"cat_mapping_\"]').css('display', 'none');\n\t\t\t\t$('.wf_default.wf_attributes').css('display', 'block').css('width', '100%');\n\n var cat_init = new WooFeedFeedCategories();\n if( \"facebook\" === provider ) {\n cat_init.wooFeed_get_facebook_categories();\n }else {\n cat_init.wooFeed_get_google_categories();\n }\n\n } else {\n\t\t\t\t$('input[id*=\"cat_mapping_\"]').css('display', 'block');\n\t\t\t\t$('.wf_default.wf_attributes').css('display', 'none').css('width', '100%');\n\t\t\t}\n\t\t})\n\n // Copy parent category ids to child categories.\n\t\t.on('click', 'span[id*=\"cat-map-\"]', function(e) {\n\t\t\te.preventDefault();\n\t\t\tvar providerName = $('#category-mapping-form #providers').val(),\n\t\t\t\tgoogleMap = ['google', 'facebook', 'pinterest', 'bing', 'bing_local_inventory', 'snapchat'],\n\t\t\t\tcatId = $(this).attr('id').replace(/[^\\d.]/g, ''),\n\t\t\t\tgroupId = 'group-child-' + catId;\n\n\t\t\tif( googleMap.indexOf(providerName) !== -1) {\n\t\t\t\tvar catField = $(this).parents('tr').find('.selectized').val();\n\n\t\t\t\tif (catField) {\n\t\t\t\t\t$('.' + groupId).parents('tr').find('select').each(function (i, v) {\n\t\t\t\t\t\t$(v).data('selectize').setValue(catField);\n\t\t\t\t\t});\n\t\t\t\t}\n\n\t\t\t} else {\n\t\t\t\tvar value = $('#cat_mapping_'+catId).val();\n\t\t\t\t$('.'+groupId).parents('tr').find('input').val(value);\n\t\t\t}\n\n\t\t});\n\n $(document).ready(function () {\n var provider = $(\"#providers\").val();\n var cat_init = new WooFeedFeedCategories();\n\n if( \"facebook\" === provider ) {\n cat_init.wooFeed_get_facebook_categories();\n } else {\n cat_init.wooFeed_get_google_categories();\n }\n\n });\n\n /*\n * Issue fix for feed edit page unsupported `Feed Type` not disabling\n *\n * @since 4.4.22\n * */\n $(document).on( \"feed_editor_init\", function(){\n\n let types = $('.merchant-info-section.feed_file_type .data').html().split(\",\").map(function(t) {\n return t.trim().toLowerCase();\n });\n\n let feedType = $(\"#feedType\");\n\n if (types.length) {\n feedType.find('option').each(function() {\n let opt = $(this);\n opt.val() && !helper.in_array(opt.val(), types) ? opt.disabled(!0) : opt.disabled(!1);\n });\n if (types.length === 1) feedType.find('option[value=\"' + types[0] + '\"]').attr('selected', 'selected');\n } else feedType.find('option').disabled(!1);\n\n } );\n\n /**\n * Automatically adding postfix for corresponding attribute selection.\n *\n * @since 4.4.32\n */\n $(document).on('ready', function(){\n\n function update_postfix(){\n var attribute_list = {\n\n 'price': wpf_ajax_obj.woocommerce.currency,\n 'current_price': wpf_ajax_obj.woocommerce.currency,\n 'sale_price': wpf_ajax_obj.woocommerce.currency,\n 'price_with_tax': wpf_ajax_obj.woocommerce.currency,\n 'current_price_with_tax': wpf_ajax_obj.woocommerce.currency,\n 'sale_price_with_tax': wpf_ajax_obj.woocommerce.currency,\n\n\n 'weight': wpf_ajax_obj.woocommerce.weight,\n 'weight_unit': wpf_ajax_obj.woocommerce.weight,\n\n\n 'height': wpf_ajax_obj.woocommerce.dimension,\n 'length': wpf_ajax_obj.woocommerce.dimension,\n 'width': wpf_ajax_obj.woocommerce.dimension\n\n };\n\n if (typeof wpf_ajax_obj.feed_rules !== 'undefined' && wpf_ajax_obj.feed_rules !== null) {\n var feed_rules = wpf_ajax_obj.feed_rules;\n var current_feed_currency = feed_rules.feedCurrency;\n }\n\n //get current action name of the page\n var queryString = window.location.search;\n var urlParams = new URLSearchParams(queryString);\n var action = urlParams.get('action');\n\n $( '.wf_attr.wf_attributes' ).each( function( key, value){\n\n var attribute_value = $(value).val();\n var current_Value = $( 'input[name^=\"suffix\"]' ).eq( parseInt( key ) ).val();\n\n if( -1 !== $.inArray( current_Value, [\n ' ' + wpf_ajax_obj.woocommerce.currency,\n ' ' + wpf_ajax_obj.woocommerce.weight,\n ' ' + wpf_ajax_obj.woocommerce.dimension\n ] ) ){\n $( 'input[name^=\"suffix\"]' ).eq( parseInt( key ) ).val('');\n }\n\n $.each(attribute_list, function (_key, _value){\n if( attribute_value === _key ){\n _value = null !== current_feed_currency && \"undefined\" !== typeof current_feed_currency ? current_feed_currency : _value;\n\n if( \"undefined\" !== action && \"edit-feed\" !== action ) {\n $( 'input[name^=\"suffix\"]' ).eq( parseInt( key ) ).val( ' ' + _value );\n } else {\n $( 'input[name^=\"suffix\"]' ).eq( parseInt( key ) ).val( current_Value );\n }\n\n }\n });\n } );\n\n $(document).trigger( 'feedEditor.after.free.postfix.update' );\n }\n\n $(document).on('feedEditor.init', function(){\n update_postfix();\n });\n\n });\n\n})(jQuery, window, document, wp.ajax, wpf_ajax_obj);\n"]}
|
admin/partials/templates/taxonomies/fb_taxonomy.txt
ADDED
@@ -0,0 +1,2914 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
category_id,category
|
2 |
+
1,food & beverages > food > soups & broths
|
3 |
+
2,food & beverages > food > nuts & seeds
|
4 |
+
3,food & beverages > food > snacks & chips
|
5 |
+
4,food & beverages > food > meat substitutes
|
6 |
+
5,food & beverages > food > spices & seasonings
|
7 |
+
6,food & beverages > food > pasta & grains
|
8 |
+
7,food & beverages > food > prepared food & meal kits
|
9 |
+
8,food & beverages > food > candy & chocolate
|
10 |
+
9,food & beverages > food > dips & spreads
|
11 |
+
10,food & beverages > food > meat & seafood
|
12 |
+
11,food & beverages > food > bakery & bread
|
13 |
+
12,food & beverages > food > condiments & sauces
|
14 |
+
13,"food & beverages > food > dairy, eggs & cheese"
|
15 |
+
14,food & beverages > food > frozen food
|
16 |
+
15,food & beverages > food > baking ingredients
|
17 |
+
16,food & beverages > food > fruits & vegetables
|
18 |
+
17,food & beverages > food > breakfast & cereal
|
19 |
+
18,food & beverages > food
|
20 |
+
19,food & beverages > beverages > sports & energy drinks
|
21 |
+
20,food & beverages > beverages > juice
|
22 |
+
21,food & beverages > beverages > powdered beverage mixes
|
23 |
+
22,food & beverages > beverages > soda
|
24 |
+
23,food & beverages > beverages > water
|
25 |
+
24,food & beverages > beverages > coffee & tea
|
26 |
+
25,food & beverages > beverages > alcoholic beverages
|
27 |
+
26,food & beverages > beverages > milk
|
28 |
+
27,food & beverages > beverages
|
29 |
+
28,food & beverages
|
30 |
+
29,toys & games > outdoor toys
|
31 |
+
30,toys & games > stuffed animals & plush toys
|
32 |
+
31,toys & games > games > role playing games
|
33 |
+
32,toys & games > games > chess
|
34 |
+
33,toys & games > games > miniature & war games
|
35 |
+
34,toys & games > games > dice games
|
36 |
+
35,toys & games > games > tile games
|
37 |
+
36,toys & games > games > card games
|
38 |
+
37,toys & games > games > dexterity games
|
39 |
+
38,toys & games > games > board games
|
40 |
+
39,toys & games > games
|
41 |
+
40,toys & games > puzzles
|
42 |
+
41,toys & games > riding toys
|
43 |
+
42,toys & games > pretend play
|
44 |
+
43,toys & games > toy vehicles
|
45 |
+
44,toys & games > remote control toys
|
46 |
+
45,toys & games > educational toys
|
47 |
+
46,toys & games > dolls & doll houses
|
48 |
+
47,toys & games > building toys
|
49 |
+
48,toys & games > action figures
|
50 |
+
49,toys & games > electronic toys
|
51 |
+
50,toys & games
|
52 |
+
51,home improvement > home heating & cooling
|
53 |
+
52,home improvement > building supplies & hardware
|
54 |
+
53,home improvement > plumbing & fixtures
|
55 |
+
54,home improvement > tools > ladders & scaffolding
|
56 |
+
55,home improvement > tools > painting tools
|
57 |
+
56,home improvement > tools > power tools
|
58 |
+
57,home improvement > tools > measuring tools & sensors
|
59 |
+
58,home improvement > tools > air tools
|
60 |
+
59,home improvement > tools > hand tools
|
61 |
+
60,home improvement > tools
|
62 |
+
61,home improvement
|
63 |
+
62,sporting goods > sports equipment > ice & roller hockey
|
64 |
+
63,sporting goods > sports equipment > rugby
|
65 |
+
64,sporting goods > sports equipment > tennis & racquet sports
|
66 |
+
65,sporting goods > sports equipment > volleyball
|
67 |
+
66,sporting goods > sports equipment > golf
|
68 |
+
67,sporting goods > sports equipment > soccer
|
69 |
+
68,sporting goods > sports equipment > football
|
70 |
+
69,sporting goods > sports equipment > track & field
|
71 |
+
70,sporting goods > sports equipment > cricket
|
72 |
+
71,sporting goods > sports equipment > field hockey & lacrosse
|
73 |
+
72,sporting goods > sports equipment > boxing & martial arts
|
74 |
+
73,sporting goods > sports equipment > dance & gymnastics
|
75 |
+
74,sporting goods > sports equipment > baseball & softball
|
76 |
+
75,sporting goods > sports equipment > basketball
|
77 |
+
76,sporting goods > sports equipment
|
78 |
+
77,sporting goods > exercise & fitness > yoga & pilates
|
79 |
+
78,sporting goods > exercise & fitness > cardio equipment
|
80 |
+
79,sporting goods > exercise & fitness > weight lifting equipment
|
81 |
+
80,sporting goods > exercise & fitness
|
82 |
+
81,sporting goods > indoor games
|
83 |
+
82,sporting goods > outdoor recreation > fishing
|
84 |
+
83,sporting goods > outdoor recreation > water sports & boating
|
85 |
+
84,sporting goods > outdoor recreation > skateboarding
|
86 |
+
85,sporting goods > outdoor recreation > outdoor games
|
87 |
+
86,sporting goods > outdoor recreation > cycling
|
88 |
+
87,sporting goods > outdoor recreation > winter sports
|
89 |
+
88,sporting goods > outdoor recreation > climbing
|
90 |
+
89,sporting goods > outdoor recreation > inline & roller skating
|
91 |
+
90,sporting goods > outdoor recreation > camping & hiking
|
92 |
+
91,sporting goods > outdoor recreation
|
93 |
+
92,sporting goods
|
94 |
+
93,pet supplies > pet carriers & containment
|
95 |
+
94,pet supplies > pet grooming supplies
|
96 |
+
95,pet supplies > small animal supplies
|
97 |
+
96,pet supplies > pet feeding & watering supplies
|
98 |
+
97,pet supplies > reptile & amphibian supplies
|
99 |
+
98,"pet supplies > pet collars, harnesses & leashes"
|
100 |
+
99,pet supplies > pet steps & ramps
|
101 |
+
100,pet supplies > bird supplies
|
102 |
+
101,pet supplies > pet care & health
|
103 |
+
102,pet supplies > pet beds & bedding
|
104 |
+
103,pet supplies > fish supplies
|
105 |
+
104,pet supplies > cat supplies
|
106 |
+
105,pet supplies > dog supplies
|
107 |
+
106,pet supplies
|
108 |
+
107,patio & garden > watering equipment
|
109 |
+
108,patio & garden > ponds & water features
|
110 |
+
109,patio & garden > outdoor power equipment
|
111 |
+
110,patio & garden > outdoor lighting
|
112 |
+
111,patio & garden > barbecues & outdoor cooking
|
113 |
+
112,"patio & garden > plants, seeds & bulbs"
|
114 |
+
113,patio & garden > outdoor furniture
|
115 |
+
114,patio & garden > pools & spas
|
116 |
+
115,"patio & garden > plant care, soil & accessories"
|
117 |
+
116,patio & garden > garden decor
|
118 |
+
117,patio & garden > garden hand tools & equipment
|
119 |
+
118,patio & garden
|
120 |
+
119,office supplies > writing supplies
|
121 |
+
120,office supplies > presentation & display boards
|
122 |
+
121,office supplies > staplers & punches
|
123 |
+
122,office supplies > projectors
|
124 |
+
123,office supplies > tape & adhesives
|
125 |
+
124,office supplies > filing & storage
|
126 |
+
125,office supplies > clips & fasteners
|
127 |
+
126,office supplies > labels
|
128 |
+
127,office supplies > calendars & planners
|
129 |
+
128,office supplies > binders & accessories
|
130 |
+
129,office supplies > office equipment & machines
|
131 |
+
130,office supplies > mailing supplies
|
132 |
+
131,office supplies > paper products
|
133 |
+
132,office supplies
|
134 |
+
133,musical instruments > pro audio equipment
|
135 |
+
134,musical instruments > music accessories
|
136 |
+
135,musical instruments > guitars & basses
|
137 |
+
136,musical instruments > brass instruments
|
138 |
+
137,musical instruments > drums & percussion instruments
|
139 |
+
138,musical instruments > pianos & keyboard instruments
|
140 |
+
139,musical instruments > woodwind instruments
|
141 |
+
140,musical instruments > string instruments
|
142 |
+
141,musical instruments
|
143 |
+
142,media > newspapers
|
144 |
+
143,media > magazines & catalogs
|
145 |
+
144,media > books
|
146 |
+
145,media > movies & tv shows
|
147 |
+
146,media > music
|
148 |
+
147,media
|
149 |
+
148,travel & luggage > garment bags
|
150 |
+
149,travel & luggage > travel accessories
|
151 |
+
150,travel & luggage > handbags & wallets > wallets
|
152 |
+
151,travel & luggage > handbags & wallets > satchels
|
153 |
+
152,travel & luggage > handbags & wallets > crossbody bags
|
154 |
+
153,travel & luggage > handbags & wallets > totes
|
155 |
+
154,travel & luggage > handbags & wallets > shoulder bags
|
156 |
+
155,travel & luggage > handbags & wallets > clutches
|
157 |
+
156,travel & luggage > handbags & wallets > belt bags & waist packs
|
158 |
+
157,travel & luggage > handbags & wallets
|
159 |
+
158,travel & luggage > suitcases
|
160 |
+
159,travel & luggage > duffels & gym bags
|
161 |
+
160,travel & luggage > luggage sets
|
162 |
+
161,travel & luggage > briefcases & laptop bags
|
163 |
+
162,travel & luggage > backpacks
|
164 |
+
163,travel & luggage
|
165 |
+
164,arts & crafts > craft supplies
|
166 |
+
165,arts & crafts > sewing
|
167 |
+
166,arts & crafts > needlecrafts & yarn
|
168 |
+
167,arts & crafts > beading & jewelry making
|
169 |
+
168,arts & crafts > art supplies
|
170 |
+
169,arts & crafts
|
171 |
+
170,auto parts & accessories > trailer parts & accessories
|
172 |
+
171,auto parts & accessories > powersports parts & accessories
|
173 |
+
172,auto parts & accessories > rv & camper parts & accessories
|
174 |
+
173,auto parts & accessories > car parts & accessories
|
175 |
+
174,auto parts & accessories > boat parts & accessories
|
176 |
+
175,auto parts & accessories > motorcycle parts & accessories
|
177 |
+
176,auto parts & accessories > automotive tools
|
178 |
+
177,auto parts & accessories
|
179 |
+
178,antiques & collectibles > collectible sports memorabilia
|
180 |
+
179,antiques & collectibles > collectible home goods
|
181 |
+
180,antiques & collectibles > collectible electronics
|
182 |
+
181,antiques & collectibles > collectible coins & paper money
|
183 |
+
182,antiques & collectibles > collectible stamps
|
184 |
+
183,antiques & collectibles > collectible furniture
|
185 |
+
184,antiques & collectibles > collectible appliances
|
186 |
+
185,antiques & collectibles > collectible toys
|
187 |
+
186,antiques & collectibles
|
188 |
+
187,baby products > baby feeding
|
189 |
+
188,baby products > baby transport > baby carriers
|
190 |
+
189,baby products > baby transport > strollers & accessories
|
191 |
+
190,baby products > baby transport > car seats & accessories
|
192 |
+
191,baby products > baby transport
|
193 |
+
192,baby products > baby health & safety
|
194 |
+
193,baby products > baby bathing
|
195 |
+
194,baby products > toys > activity centers & entertainers
|
196 |
+
195,baby products > toys > baby toys
|
197 |
+
196,baby products > toys
|
198 |
+
197,baby products > diapering & potty training
|
199 |
+
198,baby products > nursery > nursery bedding
|
200 |
+
199,baby products > nursery > nursery decor
|
201 |
+
200,baby products > nursery > nursery furniture
|
202 |
+
201,baby products > nursery
|
203 |
+
202,baby products
|
204 |
+
203,electronics > portable audio & video
|
205 |
+
204,electronics > home audio & video
|
206 |
+
205,electronics > home security & automation
|
207 |
+
206,electronics > cell phones & smart watches > cell phones
|
208 |
+
207,electronics > cell phones & smart watches > cell phone & smart watch accessories
|
209 |
+
208,electronics > cell phones & smart watches > smart watches
|
210 |
+
209,electronics > cell phones & smart watches
|
211 |
+
210,electronics > projectors
|
212 |
+
211,electronics > cameras > binoculars & telescopes
|
213 |
+
212,electronics > cameras > film cameras
|
214 |
+
213,electronics > cameras > camera accessories
|
215 |
+
214,electronics > cameras > camera drones
|
216 |
+
215,electronics > cameras > digital cameras
|
217 |
+
216,electronics > cameras > video cameras
|
218 |
+
217,electronics > cameras
|
219 |
+
218,electronics > tvs & monitors > tvs
|
220 |
+
219,electronics > tvs & monitors > computer monitors
|
221 |
+
220,electronics > tvs & monitors
|
222 |
+
221,electronics > software
|
223 |
+
222,electronics > printers & scanners
|
224 |
+
223,electronics > video game consoles & video games > video game accessories
|
225 |
+
224,electronics > video game consoles & video games > video game consoles
|
226 |
+
225,electronics > video game consoles & video games > video games
|
227 |
+
226,electronics > video game consoles & video games
|
228 |
+
227,electronics > computers & tablets > tablets & ebook readers
|
229 |
+
228,electronics > computers & tablets > networking & servers
|
230 |
+
229,electronics > computers & tablets > computer components & hardware
|
231 |
+
230,electronics > computers & tablets > laptops
|
232 |
+
231,electronics > computers & tablets > desktop computers
|
233 |
+
232,electronics > computers & tablets
|
234 |
+
233,electronics > accessories > computer peripherals
|
235 |
+
234,electronics > accessories > batteries & power supplies
|
236 |
+
235,electronics > accessories > blank media
|
237 |
+
236,"electronics > accessories > cables, chargers & adapters"
|
238 |
+
237,electronics > accessories
|
239 |
+
238,electronics
|
240 |
+
239,health & beauty > health > oral care
|
241 |
+
240,health & beauty > health > first aid
|
242 |
+
241,health & beauty > health > feminine care
|
243 |
+
242,health & beauty > health > vision care
|
244 |
+
243,health & beauty > health > massage
|
245 |
+
244,health & beauty > health > shaving & hair removal
|
246 |
+
245,health & beauty > health
|
247 |
+
246,health & beauty > beauty > skin care > tanning oil & lotion
|
248 |
+
247,health & beauty > beauty > skin care > lip balms & treatments
|
249 |
+
248,health & beauty > beauty > skin care > masks & peels
|
250 |
+
249,health & beauty > beauty > skin care > exfoliators & scrubs
|
251 |
+
250,health & beauty > beauty > skin care > facial lotion & moisturizer
|
252 |
+
251,health & beauty > beauty > skin care > pore strips
|
253 |
+
252,health & beauty > beauty > skin care > night treatments
|
254 |
+
253,health & beauty > beauty > skin care > sunscreen
|
255 |
+
254,health & beauty > beauty > skin care > skin cleansing brushes & systems
|
256 |
+
255,health & beauty > beauty > skin care > acne & blemish treatments
|
257 |
+
256,health & beauty > beauty > skin care > cleansers & toners
|
258 |
+
257,health & beauty > beauty > skin care
|
259 |
+
258,health & beauty > beauty > nail care > pumice stones
|
260 |
+
259,health & beauty > beauty > nail care > nail polish & art
|
261 |
+
260,health & beauty > beauty > nail care > nail tools
|
262 |
+
261,health & beauty > beauty > nail care > artificial nails & accessories
|
263 |
+
262,health & beauty > beauty > nail care
|
264 |
+
263,health & beauty > beauty > makeup > makeup tools & accessories
|
265 |
+
264,health & beauty > beauty > makeup > lip makeup > lip plumpers
|
266 |
+
265,health & beauty > beauty > makeup > lip makeup > lip gloss
|
267 |
+
266,health & beauty > beauty > makeup > lip makeup > lip liners
|
268 |
+
267,health & beauty > beauty > makeup > lip makeup > lip stains
|
269 |
+
268,health & beauty > beauty > makeup > lip makeup > lipstick
|
270 |
+
269,health & beauty > beauty > makeup > lip makeup
|
271 |
+
270,health & beauty > beauty > makeup > makeup sets & kits
|
272 |
+
271,health & beauty > beauty > makeup > face makeup > foundations
|
273 |
+
272,health & beauty > beauty > makeup > face makeup > face powders
|
274 |
+
273,health & beauty > beauty > makeup > face makeup > blushes
|
275 |
+
274,health & beauty > beauty > makeup > face makeup > bronzers & highlighters
|
276 |
+
275,health & beauty > beauty > makeup > face makeup > face primers
|
277 |
+
276,health & beauty > beauty > makeup > face makeup > concealers
|
278 |
+
277,"health & beauty > beauty > makeup > face makeup > bb, cc & alphabet creams"
|
279 |
+
278,health & beauty > beauty > makeup > face makeup
|
280 |
+
279,health & beauty > beauty > makeup > eye makeup > eyebrow products
|
281 |
+
280,health & beauty > beauty > makeup > eye makeup > eyeliners
|
282 |
+
281,health & beauty > beauty > makeup > eye makeup > mascara
|
283 |
+
282,health & beauty > beauty > makeup > eye makeup > eye shadows
|
284 |
+
283,health & beauty > beauty > makeup > eye makeup > false eyelashes & adhesives
|
285 |
+
284,health & beauty > beauty > makeup > eye makeup > eye primers
|
286 |
+
285,health & beauty > beauty > makeup > eye makeup
|
287 |
+
286,health & beauty > beauty > makeup
|
288 |
+
287,health & beauty > beauty > hair care & styling > shampoos & conditioners
|
289 |
+
288,health & beauty > beauty > hair care & styling > rollers & curlers
|
290 |
+
289,health & beauty > beauty > hair care & styling > straightening & curling irons
|
291 |
+
290,health & beauty > beauty > hair care & styling > styling products
|
292 |
+
291,health & beauty > beauty > hair care & styling > hair oils & protectors
|
293 |
+
292,health & beauty > beauty > hair care & styling > hair ties & styling accessories
|
294 |
+
293,health & beauty > beauty > hair care & styling > hair cutting scissors & shears
|
295 |
+
294,health & beauty > beauty > hair care & styling > hair dryers
|
296 |
+
295,health & beauty > beauty > hair care & styling > hair extensions & wigs
|
297 |
+
296,health & beauty > beauty > hair care & styling > brushes & combs
|
298 |
+
297,health & beauty > beauty > hair care & styling > hair coloring & dyes
|
299 |
+
298,health & beauty > beauty > hair care & styling
|
300 |
+
299,health & beauty > beauty > fragrances > men's fragrances
|
301 |
+
300,health & beauty > beauty > fragrances > women's fragrances
|
302 |
+
301,health & beauty > beauty > fragrances > kids' fragrances
|
303 |
+
302,health & beauty > beauty > fragrances
|
304 |
+
303,health & beauty > beauty > bath & body > bubble baths
|
305 |
+
304,health & beauty > beauty > bath & body > bath salts
|
306 |
+
305,health & beauty > beauty > bath & body > body lotions & moisturizers
|
307 |
+
306,health & beauty > beauty > bath & body > body washes & soaps
|
308 |
+
307,health & beauty > beauty > bath & body > sponges & brushes
|
309 |
+
308,health & beauty > beauty > bath & body > scrubs & exfoliants
|
310 |
+
309,health & beauty > beauty > bath & body > bath oils
|
311 |
+
310,health & beauty > beauty > bath & body > bath bombs
|
312 |
+
311,health & beauty > beauty > bath & body
|
313 |
+
312,health & beauty > beauty
|
314 |
+
313,health & beauty
|
315 |
+
314,jewelry & watches > watches > watch accessories
|
316 |
+
315,jewelry & watches > watches > kids' watches
|
317 |
+
316,jewelry & watches > watches > men's watches
|
318 |
+
317,jewelry & watches > watches > women's watches
|
319 |
+
318,jewelry & watches > watches
|
320 |
+
319,jewelry & watches > jewelry > rings
|
321 |
+
320,jewelry & watches > jewelry > necklaces
|
322 |
+
321,jewelry & watches > jewelry > jewelry sets
|
323 |
+
322,jewelry & watches > jewelry > lapel pins & brooches
|
324 |
+
323,jewelry & watches > jewelry > anklets
|
325 |
+
324,jewelry & watches > jewelry > charms & pendants
|
326 |
+
325,jewelry & watches > jewelry > earrings
|
327 |
+
326,jewelry & watches > jewelry > body jewelry
|
328 |
+
327,jewelry & watches > jewelry > bracelets
|
329 |
+
328,jewelry & watches > jewelry
|
330 |
+
329,jewelry & watches
|
331 |
+
330,home > cleaning supplies > cleaning products & chemicals
|
332 |
+
331,home > cleaning supplies > vacuums & floor cleaners
|
333 |
+
332,home > cleaning supplies > laundry supplies
|
334 |
+
333,home > cleaning supplies
|
335 |
+
334,home > large appliances > ranges & ovens
|
336 |
+
335,home > large appliances > refrigerators & freezers
|
337 |
+
336,home > large appliances > washers & dryers
|
338 |
+
337,home > large appliances > microwave ovens
|
339 |
+
338,home > large appliances > dishwashers
|
340 |
+
339,home > large appliances
|
341 |
+
340,home > bedding > comforters
|
342 |
+
341,home > bedding > mattress pads & protectors
|
343 |
+
342,home > bedding > duvet covers
|
344 |
+
343,home > bedding > blankets & throws
|
345 |
+
344,"home > bedding > bedspreads, quilts & coverlets"
|
346 |
+
345,home > bedding > bed skirts
|
347 |
+
346,home > bedding > bed sheets & pillowcases
|
348 |
+
347,home > bedding > bedding sets & collections
|
349 |
+
348,home > bedding > bed pillows & positioners
|
350 |
+
349,home > bedding
|
351 |
+
350,home > furniture > living room furniture
|
352 |
+
351,home > furniture > office furniture
|
353 |
+
352,home > furniture > dining room furniture
|
354 |
+
353,home > furniture > bedroom furniture
|
355 |
+
354,home > furniture
|
356 |
+
355,home > home goods > storage & organization
|
357 |
+
356,home > home goods > lamps & lighting
|
358 |
+
357,home > home goods > kitchen & dining > small kitchen appliances
|
359 |
+
358,home > home goods > kitchen & dining > flatware
|
360 |
+
359,home > home goods > kitchen & dining > dinnerware
|
361 |
+
360,home > home goods > kitchen & dining > kitchen tools & utensils
|
362 |
+
361,home > home goods > kitchen & dining > bakeware
|
363 |
+
362,home > home goods > kitchen & dining > drinkware
|
364 |
+
363,home > home goods > kitchen & dining > cookware
|
365 |
+
364,home > home goods > kitchen & dining > barware
|
366 |
+
365,home > home goods > kitchen & dining
|
367 |
+
366,home > home goods > bath > towels & bath linens
|
368 |
+
367,home > home goods > bath > bath accessories
|
369 |
+
368,home > home goods > bath
|
370 |
+
369,home > home goods > home decor > holiday & seasonal decor
|
371 |
+
370,home > home goods > home decor > rugs & carpets
|
372 |
+
371,home > home goods > home decor > window treatments & hardware
|
373 |
+
372,home > home goods > home decor > home fragrances
|
374 |
+
373,home > home goods > home decor > clocks
|
375 |
+
374,home > home goods > home decor > decorative accents
|
376 |
+
375,home > home goods > home decor
|
377 |
+
376,home > home goods
|
378 |
+
377,home
|
379 |
+
378,clothing & accessories > clothing accessories > women's accessories > belts
|
380 |
+
379,clothing & accessories > clothing accessories > women's accessories > gloves & mittens
|
381 |
+
380,clothing & accessories > clothing accessories > women's accessories > sunglasses
|
382 |
+
381,clothing & accessories > clothing accessories > women's accessories > scarves & wraps
|
383 |
+
382,clothing & accessories > clothing accessories > women's accessories > hats
|
384 |
+
383,clothing & accessories > clothing accessories > women's accessories
|
385 |
+
384,clothing & accessories > clothing accessories > men's accessories > ties
|
386 |
+
385,clothing & accessories > clothing accessories > men's accessories > belts
|
387 |
+
386,clothing & accessories > clothing accessories > men's accessories > hats
|
388 |
+
387,clothing & accessories > clothing accessories > men's accessories > suspenders
|
389 |
+
388,clothing & accessories > clothing accessories > men's accessories > sunglasses
|
390 |
+
389,clothing & accessories > clothing accessories > men's accessories > gloves & mittens
|
391 |
+
390,clothing & accessories > clothing accessories > men's accessories > scarves
|
392 |
+
391,clothing & accessories > clothing accessories > men's accessories
|
393 |
+
392,clothing & accessories > clothing accessories > girls' accessories > hats
|
394 |
+
393,clothing & accessories > clothing accessories > girls' accessories > gloves & mittens
|
395 |
+
394,clothing & accessories > clothing accessories > girls' accessories > belts
|
396 |
+
395,clothing & accessories > clothing accessories > girls' accessories > scarves
|
397 |
+
396,clothing & accessories > clothing accessories > girls' accessories > sunglasses
|
398 |
+
397,clothing & accessories > clothing accessories > girls' accessories
|
399 |
+
398,clothing & accessories > clothing accessories > boys' accessories > ties
|
400 |
+
399,clothing & accessories > clothing accessories > boys' accessories > suspenders
|
401 |
+
400,clothing & accessories > clothing accessories > boys' accessories > wallets
|
402 |
+
401,clothing & accessories > clothing accessories > boys' accessories > gloves & mittens
|
403 |
+
402,clothing & accessories > clothing accessories > boys' accessories > hats
|
404 |
+
403,clothing & accessories > clothing accessories > boys' accessories > scarves
|
405 |
+
404,clothing & accessories > clothing accessories > boys' accessories > belts
|
406 |
+
405,clothing & accessories > clothing accessories > boys' accessories > sunglasses
|
407 |
+
406,clothing & accessories > clothing accessories > boys' accessories
|
408 |
+
407,clothing & accessories > clothing accessories
|
409 |
+
408,clothing & accessories > shoes & footwear > women's shoes > boots
|
410 |
+
409,clothing & accessories > shoes & footwear > women's shoes > heels
|
411 |
+
410,clothing & accessories > shoes & footwear > women's shoes > fashion sneakers
|
412 |
+
411,clothing & accessories > shoes & footwear > women's shoes > slippers
|
413 |
+
412,clothing & accessories > shoes & footwear > women's shoes > sandals
|
414 |
+
413,clothing & accessories > shoes & footwear > women's shoes > flats
|
415 |
+
414,clothing & accessories > shoes & footwear > women's shoes > athletic shoes
|
416 |
+
415,clothing & accessories > shoes & footwear > women's shoes
|
417 |
+
416,clothing & accessories > shoes & footwear > men's shoes > sandals
|
418 |
+
417,clothing & accessories > shoes & footwear > men's shoes > casual & dress shoes
|
419 |
+
418,clothing & accessories > shoes & footwear > men's shoes > boots
|
420 |
+
419,clothing & accessories > shoes & footwear > men's shoes > athletic shoes
|
421 |
+
420,clothing & accessories > shoes & footwear > men's shoes > slippers
|
422 |
+
421,clothing & accessories > shoes & footwear > men's shoes > fashion sneakers
|
423 |
+
422,clothing & accessories > shoes & footwear > men's shoes
|
424 |
+
423,clothing & accessories > shoes & footwear > kids' shoes > boys' baby shoes
|
425 |
+
424,clothing & accessories > shoes & footwear > baby shoes > boys' baby shoes
|
426 |
+
425,clothing & accessories > shoes & footwear > kids' shoes > girls' baby shoes
|
427 |
+
426,clothing & accessories > shoes & footwear > baby shoes > girls' baby shoes
|
428 |
+
427,clothing & accessories > shoes & footwear > kids' shoes
|
429 |
+
428,clothing & accessories > shoes & footwear > baby shoes
|
430 |
+
429,clothing & accessories > shoes & footwear
|
431 |
+
430,clothing & accessories > clothing > women's clothing > tops > tops & t-shirts
|
432 |
+
431,"clothing & accessories > clothing > women's clothing > tights, socks & hosiery > socks"
|
433 |
+
432,"clothing & accessories > clothing > women's clothing > tights, socks & hosiery > leg warmers"
|
434 |
+
433,"clothing & accessories > clothing > women's clothing > tights, socks & hosiery > pantyhose & tights"
|
435 |
+
434,"clothing & accessories > clothing > women's clothing > tights, socks & hosiery > stockings & thigh-highs"
|
436 |
+
435,"clothing & accessories > clothing > women's clothing > tights, socks & hosiery"
|
437 |
+
436,clothing & accessories > clothing > women's clothing > tops > sweatshirts & hoodies
|
438 |
+
437,clothing & accessories > clothing > women's clothing > swimwear
|
439 |
+
438,clothing & accessories > clothing > women's clothing > suits & blazers
|
440 |
+
439,clothing & accessories > clothing > women's clothing > bottoms > shorts
|
441 |
+
440,clothing & accessories > clothing > women's clothing > tops > sweaters
|
442 |
+
441,clothing & accessories > clothing > women's clothing > pants
|
443 |
+
442,clothing & accessories > clothing > women's clothing > skirts
|
444 |
+
443,clothing & accessories > clothing > women's clothing > dresses
|
445 |
+
444,clothing & accessories > clothing > women's clothing > lingerie & sleepwear > sleepwear
|
446 |
+
445,clothing & accessories > clothing > women's clothing > lingerie & sleepwear > underwear
|
447 |
+
446,clothing & accessories > clothing > women's clothing > lingerie & sleepwear > slips
|
448 |
+
447,clothing & accessories > clothing > women's clothing > lingerie & sleepwear > bras
|
449 |
+
448,clothing & accessories > clothing > women's clothing > lingerie & sleepwear > shapewear
|
450 |
+
449,clothing & accessories > clothing > women's clothing > lingerie & sleepwear
|
451 |
+
450,clothing & accessories > clothing > women's clothing > jeans
|
452 |
+
451,clothing & accessories > clothing > women's clothing > jumpsuits & rompers
|
453 |
+
452,clothing & accessories > clothing > women's clothing > leggings
|
454 |
+
453,clothing & accessories > clothing > women's clothing > activewear
|
455 |
+
454,clothing & accessories > clothing > women's clothing > coats & jackets
|
456 |
+
455,clothing & accessories > clothing > women's clothing
|
457 |
+
456,clothing & accessories > clothing > men's clothing > bottoms > underwear
|
458 |
+
457,clothing & accessories > clothing > men's clothing > bottoms > swimwear
|
459 |
+
458,clothing & accessories > clothing > men's clothing > tops > sweatshirts & hoodies
|
460 |
+
459,clothing & accessories > clothing > men's clothing > t-shirts
|
461 |
+
460,clothing & accessories > clothing > men's clothing > sleepwear
|
462 |
+
461,clothing & accessories > clothing > men's clothing > suits
|
463 |
+
462,clothing & accessories > clothing > men's clothing > dress shirts
|
464 |
+
463,clothing & accessories > clothing > men's clothing > bottoms > jeans
|
465 |
+
464,clothing & accessories > clothing > men's clothing > socks
|
466 |
+
465,clothing & accessories > clothing > men's clothing > shorts
|
467 |
+
466,clothing & accessories > clothing > men's clothing > tops > sweaters
|
468 |
+
467,clothing & accessories > clothing > men's clothing > bottoms > pants
|
469 |
+
468,clothing & accessories > clothing > men's clothing > activewear
|
470 |
+
469,clothing & accessories > clothing > men's clothing > blazers & sport coats
|
471 |
+
470,clothing & accessories > clothing > men's clothing > coats & jackets
|
472 |
+
471,clothing & accessories > clothing > men's clothing > casual shirts
|
473 |
+
472,clothing & accessories > clothing > men's clothing
|
474 |
+
473,clothing & accessories > clothing > kids' clothing > girls' clothing > swimwear
|
475 |
+
474,clothing & accessories > clothing > kids' clothing > girls' clothing > underwear
|
476 |
+
475,clothing & accessories > clothing > kids' clothing > girls' clothing > tops & t-shirts
|
477 |
+
476,clothing & accessories > clothing > kids' clothing > girls' clothing > sweatshirts & hoodies
|
478 |
+
477,clothing & accessories > clothing > kids' clothing > girls' clothing > skirts
|
479 |
+
478,clothing & accessories > clothing > kids' clothing > girls' clothing > socks & tights
|
480 |
+
479,clothing & accessories > clothing > kids' clothing > girls' clothing > shorts
|
481 |
+
480,clothing & accessories > clothing > kids' clothing > girls' clothing > sleepwear
|
482 |
+
481,clothing & accessories > clothing > kids' clothing > girls' clothing > pants
|
483 |
+
482,clothing & accessories > clothing > kids' clothing > girls' clothing > sweaters
|
484 |
+
483,clothing & accessories > clothing > kids' clothing > girls' clothing > outerwear
|
485 |
+
484,clothing & accessories > clothing > kids' clothing > girls' clothing > jeans
|
486 |
+
485,clothing & accessories > clothing > kids' clothing > girls' clothing > jumpsuits & rompers
|
487 |
+
486,clothing & accessories > clothing > kids' clothing > girls' clothing > leggings
|
488 |
+
487,clothing & accessories > clothing > kids' clothing > girls' clothing > outfits & sets
|
489 |
+
488,clothing & accessories > clothing > kids' clothing > girls' clothing > dresses
|
490 |
+
489,clothing & accessories > clothing > kids' clothing > girls' clothing
|
491 |
+
490,clothing & accessories > clothing > kids' clothing > boys' clothing > socks
|
492 |
+
491,clothing & accessories > clothing > kids' clothing > boys' clothing > suits
|
493 |
+
492,clothing & accessories > clothing > kids' clothing > boys' clothing > underwear
|
494 |
+
493,clothing & accessories > clothing > kids' clothing > boys' clothing > sweatshirts & hoodies
|
495 |
+
494,clothing & accessories > clothing > kids' clothing > boys' clothing > sweaters
|
496 |
+
495,clothing & accessories > clothing > kids' clothing > boys' clothing > swimwear
|
497 |
+
496,clothing & accessories > clothing > kids' clothing > boys' clothing > tops & t-shirts
|
498 |
+
497,clothing & accessories > clothing > kids' clothing > boys' clothing > sleepwear
|
499 |
+
498,clothing & accessories > clothing > kids' clothing > boys' clothing > outfits & sets
|
500 |
+
499,clothing & accessories > clothing > kids' clothing > boys' clothing > pants
|
501 |
+
500,clothing & accessories > clothing > kids' clothing > boys' clothing > shorts
|
502 |
+
501,clothing & accessories > clothing > kids' clothing > boys' clothing > jeans
|
503 |
+
502,clothing & accessories > clothing > kids' clothing > boys' clothing > outerwear
|
504 |
+
503,clothing & accessories > clothing > kids' clothing > boys' clothing
|
505 |
+
504,clothing & accessories > clothing > kids' clothing
|
506 |
+
505,clothing & accessories > clothing > baby clothing > girls' baby clothing > tops
|
507 |
+
506,clothing & accessories > clothing > baby clothing > girls' baby clothing > swimwear
|
508 |
+
507,clothing & accessories > clothing > baby clothing > girls' baby clothing > dresses
|
509 |
+
508,clothing & accessories > clothing > baby clothing > girls' baby clothing > sleepwear
|
510 |
+
509,clothing & accessories > clothing > baby clothing > girls' baby clothing > outerwear
|
511 |
+
510,clothing & accessories > clothing > baby clothing > girls' baby clothing > bottoms
|
512 |
+
511,clothing & accessories > clothing > baby clothing > girls' baby clothing > sweaters
|
513 |
+
512,clothing & accessories > clothing > baby clothing > girls' baby clothing > outfits & sets
|
514 |
+
513,clothing & accessories > clothing > baby clothing > girls' baby clothing > socks
|
515 |
+
514,clothing & accessories > clothing > baby clothing > girls' baby clothing > bodysuits
|
516 |
+
515,clothing & accessories > clothing > baby clothing > girls' baby clothing
|
517 |
+
516,clothing & accessories > clothing > baby clothing > boys' baby clothing > suits
|
518 |
+
517,clothing & accessories > clothing > baby clothing > boys' baby clothing > swimwear
|
519 |
+
518,clothing & accessories > clothing > baby clothing > boys' baby clothing > sweaters
|
520 |
+
519,clothing & accessories > clothing > baby clothing > boys' baby clothing > socks
|
521 |
+
520,clothing & accessories > clothing > baby clothing > boys' baby clothing > tops
|
522 |
+
521,clothing & accessories > clothing > baby clothing > boys' baby clothing > bodysuits
|
523 |
+
522,clothing & accessories > clothing > baby clothing > boys' baby clothing > sleepwear
|
524 |
+
523,clothing & accessories > clothing > baby clothing > boys' baby clothing > bottoms
|
525 |
+
524,clothing & accessories > clothing > baby clothing > boys' baby clothing > outerwear
|
526 |
+
525,clothing & accessories > clothing > baby clothing > boys' baby clothing > outfits & sets
|
527 |
+
526,clothing & accessories > clothing > baby clothing > boys' baby clothing
|
528 |
+
527,clothing & accessories > clothing > baby clothing
|
529 |
+
528,clothing & accessories > clothing
|
530 |
+
529,clothing & accessories
|
531 |
+
530,other
|
532 |
+
535,clothing & accessories > clothing > men's clothing > tops
|
533 |
+
536,clothing & accessories > clothing > men's clothing > tops > activewear tops
|
534 |
+
537,clothing & accessories > clothing > men's clothing > tops > sleepwear tops
|
535 |
+
538,clothing & accessories > clothing > men's clothing > bottoms
|
536 |
+
539,clothing & accessories > clothing > men's clothing > bottoms > activewear bottoms
|
537 |
+
540,clothing & accessories > clothing > men's clothing > bottoms > sleepwear bottoms
|
538 |
+
541,clothing & accessories > clothing > women's clothing > tops
|
539 |
+
542,clothing & accessories > clothing > women's clothing > tops > activewear tops
|
540 |
+
543,clothing & accessories > clothing > women's clothing > tops > swimwear tops
|
541 |
+
544,clothing & accessories > clothing > women's clothing > bottoms
|
542 |
+
545,clothing & accessories > clothing > women's clothing > bottoms > swimwear bottoms
|
543 |
+
546,clothing & accessories > clothing > men's clothing > swimwear
|
544 |
+
547,baby products > baby bathing > baby scales
|
545 |
+
548,baby products > baby bathing > bath accessories
|
546 |
+
549,baby products > baby bathing > bath tub seats & floats
|
547 |
+
550,baby products > baby bathing > bath tubs
|
548 |
+
551,baby products > baby bathing > shampoo & soap
|
549 |
+
552,baby products > baby bathing > shower visors
|
550 |
+
553,baby products > baby bathing > skin care
|
551 |
+
554,baby products > baby bathing > towels & washcloths
|
552 |
+
555,baby products > baby feeding > baby food
|
553 |
+
556,baby products > baby feeding > bibs & burp cloths
|
554 |
+
557,baby products > baby feeding > booster chairs
|
555 |
+
558,baby products > baby feeding > bottle feeding supplies
|
556 |
+
559,baby products > baby feeding > bottle feeding supplies > baby bottles
|
557 |
+
560,baby products > baby feeding > bottle feeding supplies > baby formula
|
558 |
+
561,baby products > baby feeding > bottle feeding supplies > bottle bags
|
559 |
+
562,baby products > baby feeding > bottle feeding supplies > bottle brushes
|
560 |
+
563,baby products > baby feeding > bottle feeding supplies > bottle drying racks
|
561 |
+
564,baby products > baby feeding > bottle feeding supplies > bottle nipples
|
562 |
+
565,baby products > baby feeding > bottle feeding supplies > bottle sterilizers & cleaning supplies
|
563 |
+
566,baby products > baby feeding > bottle feeding supplies > bottle warmers
|
564 |
+
567,baby products > baby feeding > bottle feeding supplies > formula dispensers
|
565 |
+
568,baby products > baby feeding > breastfeeding & nursing
|
566 |
+
569,baby products > baby feeding > breastfeeding & nursing > breast milk storage
|
567 |
+
570,baby products > baby feeding > breastfeeding & nursing > breast pump parts & accessories
|
568 |
+
571,baby products > baby feeding > breastfeeding & nursing > breast pumps
|
569 |
+
572,baby products > baby feeding > breastfeeding & nursing > nursing covers
|
570 |
+
573,baby products > baby feeding > breastfeeding & nursing > nursing pads & shields
|
571 |
+
574,baby products > baby feeding > breastfeeding & nursing > nursing pillows & pillow covers
|
572 |
+
575,baby products > baby feeding > food grinders & blenders
|
573 |
+
576,baby products > baby feeding > high chairs
|
574 |
+
577,baby products > baby feeding > utensils
|
575 |
+
578,baby products > baby feeding > utensils > bowls & plates
|
576 |
+
579,baby products > baby feeding > utensils > cups & mugs
|
577 |
+
580,baby products > baby feeding > utensils > feeding sets
|
578 |
+
581,baby products > baby feeding > utensils > utensils
|
579 |
+
582,baby products > baby gear
|
580 |
+
583,baby products > baby gear > activity centers
|
581 |
+
584,baby products > baby gear > baby swings
|
582 |
+
585,baby products > baby gear > bouncers & vibrating chairs
|
583 |
+
586,baby products > baby gear > jumpers & exercisers
|
584 |
+
587,baby products > baby gear > play mats & gyms
|
585 |
+
588,baby products > baby gear > play tents & shades
|
586 |
+
589,baby products > baby gear > playpens
|
587 |
+
590,baby products > baby gear > walkers
|
588 |
+
591,baby products > baby health & safety > baby health
|
589 |
+
592,baby products > baby health & safety > baby health > baby thermometers
|
590 |
+
593,baby products > baby health & safety > baby health > health & grooming kits
|
591 |
+
594,baby products > baby health & safety > baby health > hearing protection
|
592 |
+
595,baby products > baby health & safety > baby health > nasal aspirators
|
593 |
+
596,baby products > baby health & safety > baby health > pacifier clips & holders
|
594 |
+
597,baby products > baby health & safety > baby health > pacifier wipes
|
595 |
+
598,baby products > baby health & safety > baby health > pacifiers & teethers
|
596 |
+
599,baby products > baby health & safety > baby safety
|
597 |
+
600,baby products > baby health & safety > baby safety > baby monitors
|
598 |
+
601,baby products > baby health & safety > baby safety > baby proofing supplies
|
599 |
+
602,baby products > baby health & safety > baby safety > baby proofing supplies > corner & edge cushions
|
600 |
+
603,baby products > baby health & safety > baby safety > baby proofing supplies > locks & latches
|
601 |
+
604,baby products > baby health & safety > baby safety > baby proofing supplies > outlet covers
|
602 |
+
605,baby products > baby health & safety > baby safety > baby proofing supplies > stove guards
|
603 |
+
606,baby products > baby health & safety > baby safety > bed rails
|
604 |
+
607,baby products > baby health & safety > baby safety > car decals
|
605 |
+
608,baby products > baby health & safety > baby safety > safety gates
|
606 |
+
609,baby products > baby health & safety > baby safety > safety harnesses & leashes
|
607 |
+
610,baby products > baby health & safety > baby safety > shopping cart covers
|
608 |
+
611,baby products > baby transport > baby carriers > backpacks
|
609 |
+
612,baby products > baby transport > baby carriers > hip seats
|
610 |
+
613,baby products > baby transport > baby carriers > slings
|
611 |
+
614,baby products > baby transport > baby carriers > soft structured carriers
|
612 |
+
615,baby products > baby transport > baby carriers > wraps
|
613 |
+
616,baby products > baby transport > car seats & accessories > booster seats
|
614 |
+
617,baby products > baby transport > car seats & accessories > car seat accessories
|
615 |
+
618,baby products > baby transport > car seats & accessories > convertible car seats
|
616 |
+
619,baby products > baby transport > car seats & accessories > head supports
|
617 |
+
620,baby products > baby transport > car seats & accessories > infant car seats
|
618 |
+
621,baby products > baby transport > strollers & accessories > bassinets
|
619 |
+
622,baby products > baby transport > strollers & accessories > covers & canopies
|
620 |
+
623,baby products > baby transport > strollers & accessories > cup holders & trays
|
621 |
+
624,baby products > baby transport > strollers & accessories > footmuffs
|
622 |
+
625,baby products > baby transport > strollers & accessories > hooks
|
623 |
+
626,baby products > baby transport > strollers & accessories > organizers & nets
|
624 |
+
627,baby products > baby transport > strollers & accessories > seat liners
|
625 |
+
628,baby products > baby transport > strollers & accessories > stroller parts
|
626 |
+
629,baby products > baby transport > strollers & accessories > stroller toys
|
627 |
+
630,baby products > baby transport > strollers & accessories > strollers
|
628 |
+
631,baby products > diapering & potty training > diapering
|
629 |
+
632,baby products > diapering & potty training > diapering > baby wipes
|
630 |
+
633,baby products > diapering & potty training > diapering > changing pads
|
631 |
+
634,baby products > diapering & potty training > diapering > diaper bags
|
632 |
+
635,baby products > diapering & potty training > diapering > diaper changing kits
|
633 |
+
636,baby products > diapering & potty training > diapering > diaper covers
|
634 |
+
637,baby products > diapering & potty training > diapering > diaper pails
|
635 |
+
638,baby products > diapering & potty training > diapering > diaper stackers
|
636 |
+
639,baby products > diapering & potty training > diapering > diapers
|
637 |
+
640,baby products > diapering & potty training > diapering > diapers > cloth diapers
|
638 |
+
641,baby products > diapering & potty training > diapering > diapers > disposable diapers
|
639 |
+
642,baby products > diapering & potty training > diapering > diapers > swim diapers
|
640 |
+
643,baby products > diapering & potty training > diapering > wipe warmers
|
641 |
+
644,baby products > diapering & potty training > potty training
|
642 |
+
645,baby products > diapering & potty training > potty training > potty seats
|
643 |
+
646,baby products > diapering & potty training > potty training > potty training kits
|
644 |
+
647,baby products > diapering & potty training > potty training > potty training pants
|
645 |
+
648,baby products > diapering & potty training > potty training > seat covers
|
646 |
+
649,baby products > diapering & potty training > potty training > step stools
|
647 |
+
650,baby products > keepsakes & gift sets
|
648 |
+
651,baby products > nursery > nursery bedding > bed canopies
|
649 |
+
652,baby products > nursery > nursery bedding > bed pillows
|
650 |
+
653,baby products > nursery > nursery bedding > blankets & throws
|
651 |
+
654,baby products > nursery > nursery bedding > bumpers
|
652 |
+
655,baby products > nursery > nursery bedding > crib sheets
|
653 |
+
656,baby products > nursery > nursery bedding > crib skirts
|
654 |
+
657,baby products > nursery > nursery bedding > duvet covers & inserts
|
655 |
+
658,baby products > nursery > nursery bedding > mattress pads & covers
|
656 |
+
659,baby products > nursery > nursery bedding > nursery bedding sets
|
657 |
+
660,baby products > nursery > nursery bedding > pillowcases
|
658 |
+
661,baby products > nursery > nursery bedding > quilts & coverlets
|
659 |
+
662,baby products > nursery > nursery bedding > sleeping bags & sleepsacks
|
660 |
+
663,baby products > nursery > nursery decor > boxes & storage
|
661 |
+
664,baby products > nursery > nursery decor > clocks
|
662 |
+
665,baby products > nursery > nursery decor > curtains & blinds
|
663 |
+
666,baby products > nursery > nursery decor > lamps & lighting
|
664 |
+
667,baby products > nursery > nursery decor > mats & rugs
|
665 |
+
668,baby products > nursery > nursery decor > mobiles
|
666 |
+
669,baby products > nursery > nursery decor > piggy banks
|
667 |
+
670,baby products > nursery > nursery decor > snow globes
|
668 |
+
671,baby products > nursery > nursery decor > wall decor
|
669 |
+
672,baby products > nursery > nursery furniture > baby dressers
|
670 |
+
673,baby products > nursery > nursery furniture > bassinets & cradles
|
671 |
+
674,baby products > nursery > nursery furniture > bedside sleepers
|
672 |
+
675,baby products > nursery > nursery furniture > chairs
|
673 |
+
676,baby products > nursery > nursery furniture > changing tables
|
674 |
+
677,baby products > nursery > nursery furniture > crib mattresses
|
675 |
+
678,baby products > nursery > nursery furniture > cribs
|
676 |
+
679,baby products > nursery > nursery furniture > nursery furniture sets
|
677 |
+
680,baby products > toys > baby toys > alphabet toys
|
678 |
+
681,baby products > toys > baby toys > baby books
|
679 |
+
682,baby products > toys > baby toys > baby soothers
|
680 |
+
683,baby products > toys > baby toys > bath toys
|
681 |
+
684,"baby products > toys > baby toys > blocks, sorting & stacking toys"
|
682 |
+
685,baby products > toys > baby toys > plush toys
|
683 |
+
686,baby products > toys > baby toys > push & pull toys
|
684 |
+
687,baby products > toys > baby toys > rattles
|
685 |
+
688,clothing & accessories > clothing accessories > newborn & baby fashion accessories
|
686 |
+
689,clothing & accessories > clothing accessories > newborn & baby fashion accessories > bags
|
687 |
+
690,clothing & accessories > clothing accessories > newborn & baby fashion accessories > belts
|
688 |
+
691,clothing & accessories > clothing accessories > newborn & baby fashion accessories > gloves & mittens
|
689 |
+
692,clothing & accessories > clothing accessories > newborn & baby fashion accessories > hats
|
690 |
+
693,clothing & accessories > clothing accessories > newborn & baby fashion accessories > scarves
|
691 |
+
694,clothing & accessories > clothing accessories > newborn & baby fashion accessories > sunglasses
|
692 |
+
695,clothing & accessories > clothing accessories > newborn & baby fashion accessories > ties
|
693 |
+
696,clothing & accessories > costumes
|
694 |
+
697,clothing & accessories > costumes > boys' costumes
|
695 |
+
698,clothing & accessories > costumes > costume accessories
|
696 |
+
699,clothing & accessories > costumes > costume accessories > bags & pouches
|
697 |
+
700,clothing & accessories > costumes > costume accessories > belts & sashes
|
698 |
+
701,clothing & accessories > costumes > costume accessories > boas & leis
|
699 |
+
702,clothing & accessories > costumes > costume accessories > capes & cloaks
|
700 |
+
703,clothing & accessories > costumes > costume accessories > crowns & tiaras
|
701 |
+
704,clothing & accessories > costumes > costume accessories > face paint & makeup
|
702 |
+
705,clothing & accessories > costumes > costume accessories > fans & parasols
|
703 |
+
706,clothing & accessories > costumes > costume accessories > glasses & eyewear
|
704 |
+
707,clothing & accessories > costumes > costume accessories > gloves
|
705 |
+
708,clothing & accessories > costumes > costume accessories > hats & headwear
|
706 |
+
709,clothing & accessories > costumes > costume accessories > masks
|
707 |
+
710,clothing & accessories > costumes > costume accessories > props & handheld items
|
708 |
+
711,clothing & accessories > costumes > costume accessories > prosthetics
|
709 |
+
712,clothing & accessories > costumes > costume accessories > shoes
|
710 |
+
713,clothing & accessories > costumes > costume accessories > wigs & facial hair
|
711 |
+
714,"clothing & accessories > costumes > costume accessories > wings, tails, ears & noses"
|
712 |
+
715,clothing & accessories > costumes > girls' costumes
|
713 |
+
716,clothing & accessories > costumes > infant & toddler costumes
|
714 |
+
717,clothing & accessories > costumes > men's costumes
|
715 |
+
718,clothing & accessories > costumes > unisex costumes
|
716 |
+
719,clothing & accessories > costumes > women's costumes
|
717 |
+
720,clothing & accessories > shoes & footwear > kids' shoes > boys' baby shoes
|
718 |
+
721,clothing & accessories > shoes & footwear > kids' shoes > girls' baby shoes
|
719 |
+
722,clothing & accessories > clothing > baby clothing > boys' baby clothing > sweatshirts & hoodies
|
720 |
+
723,clothing & accessories > clothing > baby clothing > boys' baby clothing > t-shirts
|
721 |
+
724,clothing & accessories > clothing > baby clothing > boys' baby clothing > underwear
|
722 |
+
725,clothing & accessories > clothing > baby clothing > girls' baby clothing > skirts
|
723 |
+
726,clothing & accessories > clothing > baby clothing > girls' baby clothing > sweatshirts & hoodies
|
724 |
+
727,clothing & accessories > clothing > baby clothing > girls' baby clothing > t-shirts
|
725 |
+
728,clothing & accessories > clothing > baby clothing > girls' baby clothing > tights
|
726 |
+
729,clothing & accessories > clothing > baby clothing > girls' baby clothing > underwear
|
727 |
+
730,clothing & accessories > clothing > baby clothing > newborn & baby fashion accessories
|
728 |
+
731,clothing & accessories > clothing > baby clothing > newborn & baby fashion accessories > bags
|
729 |
+
732,clothing & accessories > clothing > baby clothing > newborn & baby fashion accessories > belts
|
730 |
+
733,clothing & accessories > clothing > baby clothing > newborn & baby fashion accessories > gloves & mittens
|
731 |
+
734,clothing & accessories > clothing > baby clothing > newborn & baby fashion accessories > hats
|
732 |
+
735,clothing & accessories > clothing > baby clothing > unisex newborn & baby clothing
|
733 |
+
736,clothing & accessories > clothing > baby clothing > unisex newborn & baby clothing > bodysuits
|
734 |
+
737,clothing & accessories > clothing > baby clothing > unisex newborn & baby clothing > bottoms
|
735 |
+
738,clothing & accessories > clothing > baby clothing > unisex newborn & baby clothing > outerwear
|
736 |
+
739,clothing & accessories > clothing > baby clothing > unisex newborn & baby clothing > outfits & sets
|
737 |
+
740,clothing & accessories > clothing > baby clothing > unisex newborn & baby clothing > sleepwear
|
738 |
+
741,clothing & accessories > clothing > baby clothing > unisex newborn & baby clothing > socks
|
739 |
+
742,clothing & accessories > clothing > baby clothing > unisex newborn & baby clothing > tops & t-shirts
|
740 |
+
743,clothing & accessories > clothing > men's clothing > tops > blazers & sports coats
|
741 |
+
744,health & beauty > beauty > nail care > nail tools > cuticle treatments
|
742 |
+
745,health & beauty > beauty > nail care > nail tools > nail buffers
|
743 |
+
746,health & beauty > beauty > nail care > nail tools > nail clippers
|
744 |
+
747,health & beauty > beauty > nail care > nail tools > nail drills
|
745 |
+
748,health & beauty > beauty > nail care > nail tools > nail dryers & lamps
|
746 |
+
749,health & beauty > beauty > nail care > nail tools > nail files & emery boards
|
747 |
+
750,health & beauty > beauty > nail care > nail tools > nail spas & baths
|
748 |
+
751,health & beauty > beauty > skin care > anti-aging products
|
749 |
+
752,health & beauty > beauty > skin care > eye treatments & masks
|
750 |
+
753,health & beauty > beauty > skin care > facial rollers
|
751 |
+
754,health & beauty > beauty > skin care > facial saunas & steamers
|
752 |
+
755,health & beauty > beauty > skin care > lightening cream
|
753 |
+
756,health & beauty > beauty > skin care > makeup removers
|
754 |
+
757,health & beauty > beauty > skin care > pumice stones
|
755 |
+
758,health & beauty > beauty > skin care > sunscreen > self tanner & sunless tanning products
|
756 |
+
759,health & beauty > beauty > skin care > sunscreen > sun care
|
757 |
+
760,health & beauty > beauty > skin care > sunscreen > sun care > after-sun care
|
758 |
+
761,health & beauty > beauty > skin care > sunscreen > sun care > sunscreen
|
759 |
+
762,health & beauty > beauty > skin care > sunscreen > sun care > tanning oil & lotion
|
760 |
+
763,health & beauty > beauty > skin care > sunscreen > tanning beds & tents
|
761 |
+
764,health & beauty > beauty > bath & body > bath & body gift sets
|
762 |
+
765,health & beauty > beauty > bath & body > body powder
|
763 |
+
766,health & beauty > beauty > bath & body > deodorants & antiperspirants
|
764 |
+
767,health & beauty > beauty > bath & body > hand sanitizers
|
765 |
+
768,health & beauty > beauty > bath & body > hand soaps
|
766 |
+
769,health & beauty > beauty > bath & body > shower caps
|
767 |
+
770,health & beauty > beauty > foot care
|
768 |
+
771,health & beauty > beauty > foot care > bunion care
|
769 |
+
772,health & beauty > beauty > foot care > corn & callus care
|
770 |
+
773,health & beauty > beauty > foot care > foot odor removers
|
771 |
+
774,health & beauty > beauty > foot care > toe spacers
|
772 |
+
775,health & beauty > beauty > hair care & styling > hair extensions & wigs > hair extension & wig supplies
|
773 |
+
776,health & beauty > beauty > hair care & styling > hair extensions & wigs > hair extensions
|
774 |
+
777,health & beauty > beauty > hair care & styling > hair extensions & wigs > wigs & hair pieces
|
775 |
+
778,health & beauty > beauty > hair care & styling > hair relaxers & straightening products
|
776 |
+
779,health & beauty > beauty > hair care & styling > medicated hair treatments
|
777 |
+
780,health & beauty > beauty > hair care & styling > perms
|
778 |
+
781,health & beauty > beauty > hair care & styling > shampoos & conditioners > conditioners
|
779 |
+
782,health & beauty > beauty > hair care & styling > shampoos & conditioners > shampoo & conditioner sets
|
780 |
+
783,health & beauty > beauty > hair care & styling > shampoos & conditioners > shampoos
|
781 |
+
784,health & beauty > beauty > makeup > body makeup
|
782 |
+
785,health & beauty > beauty > makeup > eye makeup > lash growth enhancers & conditioners
|
783 |
+
786,health & beauty > beauty > makeup > lip makeup > lip primers
|
784 |
+
787,health & beauty > beauty > makeup > makeup tools & accessories > blotting paper
|
785 |
+
788,health & beauty > beauty > makeup > makeup tools & accessories > brush cleaners
|
786 |
+
789,health & beauty > beauty > makeup > makeup tools & accessories > brushes & sponges
|
787 |
+
790,health & beauty > beauty > makeup > makeup tools & accessories > eyelash tools
|
788 |
+
791,health & beauty > beauty > makeup > makeup tools & accessories > makeup bags & storage
|
789 |
+
792,health & beauty > beauty > makeup > makeup tools & accessories > makeup finishing sprays
|
790 |
+
793,health & beauty > beauty > makeup > makeup tools & accessories > makeup mirrors
|
791 |
+
794,health & beauty > beauty > makeup > makeup tools & accessories > refillable makeup palettes
|
792 |
+
795,health & beauty > beauty > makeup > makeup tools & accessories > sharpeners
|
793 |
+
796,health & beauty > beauty > makeup > temporary tattoos
|
794 |
+
797,health & beauty > beauty > nail care > artificial nails & accessories > acrylic powders & liquids
|
795 |
+
798,health & beauty > beauty > nail care > artificial nails & accessories > artificial nail tips
|
796 |
+
799,health & beauty > beauty > nail care > artificial nails & accessories > gel nails
|
797 |
+
800,health & beauty > beauty > nail care > artificial nails & accessories > manicure & pedicure spacers
|
798 |
+
801,health & beauty > beauty > nail care > artificial nails & accessories > manicure tool sets
|
799 |
+
802,health & beauty > beauty > nail care > nail polish & art > nail airbrush kits & supplies
|
800 |
+
803,health & beauty > beauty > nail care > nail polish & art > nail art accessories
|
801 |
+
804,health & beauty > beauty > nail care > nail polish & art > nail polish
|
802 |
+
805,health & beauty > beauty > nail care > nail polish & art > nail polish remover
|
803 |
+
806,health & beauty > beauty > nail care > nail tools > cuticle pushers
|
804 |
+
807,health & beauty > beauty > nail care > nail tools > cuticle scissors
|
805 |
+
808,home > home goods > kitchen & dining > kitchen organization
|
806 |
+
809,home > home goods > kitchen & dining > kitchen organization > sink caddies
|
807 |
+
810,home > home goods > kitchen & dining > kitchen organization > sink mats & grids
|
808 |
+
811,home > home goods > kitchen & dining > kitchen organization > spice organizers
|
809 |
+
812,home > home goods > kitchen & dining > kitchen organization > straw holders & dispensers
|
810 |
+
813,home > home goods > kitchen & dining > kitchen organization > sugar caddies
|
811 |
+
814,home > home goods > kitchen & dining > kitchen organization > toothpick holders & dispensers
|
812 |
+
815,home > home goods > kitchen & dining > kitchen tools & utensils > baking peels
|
813 |
+
816,home > home goods > kitchen & dining > kitchen tools & utensils > burger presses
|
814 |
+
817,home > home goods > kitchen & dining > kitchen tools & utensils > can crushers
|
815 |
+
818,home > home goods > kitchen & dining > kitchen tools & utensils > can openers
|
816 |
+
819,home > home goods > kitchen & dining > kitchen tools & utensils > canning supplies
|
817 |
+
820,"home > home goods > kitchen & dining > kitchen tools & utensils > colanders, strainers & sifters"
|
818 |
+
821,home > home goods > kitchen & dining > kitchen tools & utensils > cooking thermometers
|
819 |
+
822,home > home goods > kitchen & dining > kitchen tools & utensils > cooking torches
|
820 |
+
823,home > home goods > kitchen & dining > kitchen tools & utensils > cooking utensils
|
821 |
+
824,home > home goods > kitchen & dining > kitchen tools & utensils > cutting boards
|
822 |
+
825,home > home goods > kitchen & dining > kitchen tools & utensils > dish racks
|
823 |
+
826,home > home goods > kitchen & dining > kitchen tools & utensils > food choppers
|
824 |
+
827,home > home goods > kitchen & dining > kitchen tools & utensils > food scoops
|
825 |
+
828,home > home goods > kitchen & dining > kitchen tools & utensils > food steaming bags
|
826 |
+
829,home > home goods > kitchen & dining > kitchen tools & utensils > food sticks & skewers
|
827 |
+
830,home > home goods > kitchen & dining > kitchen tools & utensils > funnels
|
828 |
+
831,home > home goods > kitchen & dining > kitchen tools & utensils > garlic presses
|
829 |
+
832,home > home goods > kitchen & dining > kitchen tools & utensils > graters & zesters
|
830 |
+
833,home > home goods > kitchen & dining > kitchen tools & utensils > measuring cups & spoons
|
831 |
+
834,home > home goods > kitchen & dining > kitchen tools & utensils > mixed kitchen tool sets
|
832 |
+
835,home > home goods > kitchen & dining > kitchen tools & utensils > mixing bowls
|
833 |
+
836,home > home goods > kitchen & dining > kitchen tools & utensils > mortar & pestles
|
834 |
+
837,home > home goods > kitchen & dining > kitchen tools & utensils > nut & seafood crackers
|
835 |
+
838,home > home goods > kitchen & dining > kitchen tools & utensils > oil & vinegar dispensers
|
836 |
+
839,home > home goods > kitchen & dining > kitchen tools & utensils > oven bags
|
837 |
+
840,home > home goods > kitchen & dining > kitchen tools & utensils > peelers & corers
|
838 |
+
841,home > home goods > kitchen & dining > kitchen tools & utensils > pizza cutters
|
839 |
+
842,home > home goods > kitchen & dining > kitchen tools & utensils > rings & molds
|
840 |
+
843,home > home goods > kitchen & dining > kitchen tools & utensils > salad spinners
|
841 |
+
844,home > home goods > kitchen & dining > kitchen tools & utensils > scrapers
|
842 |
+
845,home > home goods > kitchen & dining > kitchen tools & utensils > spoon rests
|
843 |
+
846,home > home goods > kitchen & dining > kitchen tools & utensils > stove burner covers
|
844 |
+
847,home > home goods > kitchen & dining > kitchen tools & utensils > sushi mats & bento accessories
|
845 |
+
848,home > home goods > kitchen & dining > kitchen tools & utensils > timers
|
846 |
+
849,home > home goods > kitchen & dining > linens & textiles
|
847 |
+
850,home > home goods > kitchen & dining > linens & textiles > aprons
|
848 |
+
851,home > home goods > kitchen & dining > linens & textiles > doilies
|
849 |
+
852,home > home goods > kitchen & dining > linens & textiles > napkin rings & holders
|
850 |
+
853,home > home goods > kitchen & dining > linens & textiles > napkins
|
851 |
+
854,home > home goods > kitchen & dining > linens & textiles > oven mitts & potholders
|
852 |
+
855,home > home goods > kitchen & dining > linens & textiles > placemats
|
853 |
+
856,home > home goods > kitchen & dining > linens & textiles > table linen sets
|
854 |
+
857,home > home goods > kitchen & dining > linens & textiles > table runners
|
855 |
+
858,home > home goods > kitchen & dining > linens & textiles > table skirts
|
856 |
+
859,home > home goods > kitchen & dining > linens & textiles > tablecloths
|
857 |
+
860,home > home goods > kitchen & dining > linens & textiles > tea cozies
|
858 |
+
861,home > home goods > kitchen & dining > linens & textiles > towels & dishcloths
|
859 |
+
862,home > home goods > kitchen & dining > prefabricated kitchens & kitchenettes
|
860 |
+
863,home > home goods > kitchen & dining > small kitchen appliances > beverage warmers
|
861 |
+
864,home > home goods > kitchen & dining > small kitchen appliances > bread makers
|
862 |
+
865,home > home goods > kitchen & dining > small kitchen appliances > coffee makers & espresso machines
|
863 |
+
866,home > home goods > kitchen & dining > small kitchen appliances > coffee makers & espresso machines > coffee grinders
|
864 |
+
867,home > home goods > kitchen & dining > small kitchen appliances > coffee makers & espresso machines > coffee makers
|
865 |
+
868,home > home goods > kitchen & dining > small kitchen appliances > coffee makers & espresso machines > coffee roasters
|
866 |
+
869,home > home goods > kitchen & dining > small kitchen appliances > coffee makers & espresso machines > espresso machines
|
867 |
+
870,home > home goods > kitchen & dining > small kitchen appliances > coffee makers & espresso machines > french presses
|
868 |
+
871,home > home goods > kitchen & dining > small kitchen appliances > coffee makers & espresso machines > milk frothers
|
869 |
+
872,home > home goods > kitchen & dining > small kitchen appliances > coffee makers & espresso machines > percolators & moka pots
|
870 |
+
873,home > home goods > kitchen & dining > small kitchen appliances > coffee makers & espresso machines > tea infusers & strainers
|
871 |
+
874,home > home goods > kitchen & dining > small kitchen appliances > coffee makers & espresso machines > tea kettles
|
872 |
+
875,home > home goods > kitchen & dining > small kitchen appliances > coffee makers & espresso machines > tea makers
|
873 |
+
876,home > home goods > kitchen & dining > small kitchen appliances > cookers & steamers
|
874 |
+
877,home > home goods > kitchen & dining > small kitchen appliances > deep fryers & air fryers
|
875 |
+
878,home > home goods > kitchen & dining > small kitchen appliances > electric skillets & woks
|
876 |
+
879,home > home goods > kitchen & dining > small kitchen appliances > fondue pots
|
877 |
+
880,home > home goods > kitchen & dining > small kitchen appliances > food dehydrators
|
878 |
+
881,home > home goods > kitchen & dining > small kitchen appliances > food processors
|
879 |
+
882,home > home goods > kitchen & dining > small kitchen appliances > griddles & grills
|
880 |
+
883,home > home goods > kitchen & dining > small kitchen appliances > grinders & mills
|
881 |
+
884,home > home goods > kitchen & dining > small kitchen appliances > hot plates
|
882 |
+
885,home > home goods > kitchen & dining > small kitchen appliances > ice crushers & shavers
|
883 |
+
886,home > home goods > kitchen & dining > small kitchen appliances > juicers
|
884 |
+
887,home > home goods > kitchen & dining > small kitchen appliances > kitchen scales
|
885 |
+
888,home > home goods > kitchen & dining > small kitchen appliances > meat grinders
|
886 |
+
889,home > home goods > kitchen & dining > small kitchen appliances > mixers & blenders
|
887 |
+
890,home > home goods > kitchen & dining > small kitchen appliances > pizza makers & ovens
|
888 |
+
891,home > home goods > kitchen & dining > small kitchen appliances > portable stoves
|
889 |
+
892,home > home goods > kitchen & dining > small kitchen appliances > roaster ovens & rotisseries
|
890 |
+
893,home > home goods > kitchen & dining > small kitchen appliances > slicers & electric knives
|
891 |
+
894,home > home goods > kitchen & dining > small kitchen appliances > specialty kitchen appliances
|
892 |
+
895,home > home goods > kitchen & dining > small kitchen appliances > specialty kitchen appliances > cotton candy machines
|
893 |
+
896,"home > home goods > kitchen & dining > small kitchen appliances > specialty kitchen appliances > cupcake, pie & dessert makers"
|
894 |
+
897,home > home goods > kitchen & dining > small kitchen appliances > specialty kitchen appliances > frozen drink makers
|
895 |
+
898,home > home goods > kitchen & dining > small kitchen appliances > specialty kitchen appliances > hot drink makers
|
896 |
+
899,home > home goods > kitchen & dining > small kitchen appliances > specialty kitchen appliances > ice cream makers
|
897 |
+
900,home > home goods > kitchen & dining > small kitchen appliances > specialty kitchen appliances > pasta makers
|
898 |
+
901,home > home goods > kitchen & dining > small kitchen appliances > specialty kitchen appliances > popcorn makers
|
899 |
+
902,home > home goods > kitchen & dining > small kitchen appliances > specialty kitchen appliances > soda makers
|
900 |
+
903,home > home goods > kitchen & dining > small kitchen appliances > specialty kitchen appliances > soy milk makers
|
901 |
+
904,home > home goods > kitchen & dining > small kitchen appliances > specialty kitchen appliances > waffle makers
|
902 |
+
905,home > home goods > kitchen & dining > small kitchen appliances > specialty kitchen appliances > yogurt makers
|
903 |
+
906,home > home goods > kitchen & dining > small kitchen appliances > toasters & toaster ovens
|
904 |
+
907,home > home goods > kitchen & dining > small kitchen appliances > water filters & pitchers
|
905 |
+
908,home > home goods > lamps & lighting > ceiling fans
|
906 |
+
909,home > home goods > lamps & lighting > chandeliers
|
907 |
+
910,home > home goods > lamps & lighting > lamp shades
|
908 |
+
911,home > home goods > lamps & lighting > lamps
|
909 |
+
912,home > home goods > lamps & lighting > lamps > floor lamps
|
910 |
+
913,home > home goods > lamps & lighting > lamps > lamp accessories
|
911 |
+
914,home > home goods > lamps & lighting > lamps > table lamps
|
912 |
+
915,home > home goods > lamps & lighting > light bulbs
|
913 |
+
916,home > home goods > lamps & lighting > night lights
|
914 |
+
917,home > home goods > lamps & lighting > string lights
|
915 |
+
918,home > home goods > lamps & lighting > track lighting
|
916 |
+
919,home > home goods > lamps & lighting > wall fixtures
|
917 |
+
920,home > home goods > storage & organization > clothing storage
|
918 |
+
921,home > home goods > storage & organization > clothing storage > closet organizers
|
919 |
+
922,home > home goods > storage & organization > clothing storage > clothes hangers
|
920 |
+
923,home > home goods > storage & organization > clothing storage > garment racks
|
921 |
+
924,home > home goods > storage & organization > clothing storage > hat boxes
|
922 |
+
925,home > home goods > storage & organization > clothing storage > shoe organizers
|
923 |
+
926,home > home goods > storage & organization > clothing storage > umbrella stands & cases
|
924 |
+
927,home > home goods > storage & organization > general storage
|
925 |
+
928,home > home goods > storage & organization > general storage > hooks & hangers
|
926 |
+
929,home > home goods > storage & organization > general storage > storage bags
|
927 |
+
930,home > home goods > storage & organization > general storage > storage bins & baskets
|
928 |
+
931,home > home goods > storage & organization > general storage > storage drawers
|
929 |
+
932,home > home goods > storage & organization > jewelry organizers
|
930 |
+
933,home > home goods > storage & organization > jewelry organizers > hanging jewelry organizers
|
931 |
+
934,home > home goods > storage & organization > jewelry organizers > jewelry bags & pouches
|
932 |
+
935,home > home goods > storage & organization > jewelry organizers > jewelry boxes
|
933 |
+
936,home > home goods > storage & organization > jewelry organizers > jewelry displays
|
934 |
+
937,home > home goods > storage & organization > jewelry organizers > jewelry drawer inserts
|
935 |
+
938,home > home goods > storage & organization > jewelry organizers > jewelry rolls
|
936 |
+
939,home > home goods > storage & organization > jewelry organizers > jewelry stands
|
937 |
+
940,home > home goods > storage & organization > jewelry organizers > jewelry trays
|
938 |
+
941,home > large appliances > cooktops
|
939 |
+
942,home > large appliances > ice makers
|
940 |
+
943,home > large appliances > large appliance parts & accessories
|
941 |
+
944,home > large appliances > range hoods
|
942 |
+
945,home > large appliances > trash compactors
|
943 |
+
946,home > large appliances > washers & dryers > dryers
|
944 |
+
947,home > large appliances > washers & dryers > washer & dryer sets
|
945 |
+
948,home > large appliances > washers & dryers > washing machines
|
946 |
+
949,home > home goods > bath > bath accessories > soap dishes & dispensers
|
947 |
+
950,home > home goods > bath > bath accessories > tissue box covers
|
948 |
+
951,home > home goods > bath > bath accessories > toilet brushes
|
949 |
+
952,home > home goods > bath > bath accessories > toilet covers
|
950 |
+
953,home > home goods > bath > bath linens
|
951 |
+
954,home > home goods > bath > bath linens > bath mats & rugs
|
952 |
+
955,home > home goods > bath > bath linens > bath pillows
|
953 |
+
956,home > home goods > bath > bath linens > towels & washcloths
|
954 |
+
957,home > home goods > bath > bath storage
|
955 |
+
958,home > home goods > bath > bath storage > bath caddies
|
956 |
+
959,home > home goods > bath > bath storage > medicine cabinets
|
957 |
+
960,home > home goods > bath > bath storage > robe & towel hooks
|
958 |
+
961,home > home goods > bath > bath storage > toilet paper holders
|
959 |
+
962,home > home goods > bath > bath storage > toothbrush holders
|
960 |
+
963,home > home goods > bath > bath storage > towel racks & holders
|
961 |
+
964,home > home goods > bath > shower curtains
|
962 |
+
965,home > home goods > home decor > clocks > alarm clocks
|
963 |
+
966,home > home goods > home decor > clocks > clock parts
|
964 |
+
967,home > home goods > home decor > clocks > clocks
|
965 |
+
968,"home > home goods > home decor > clocks > desk, mantel & shelf clocks"
|
966 |
+
969,home > home goods > home decor > clocks > grandfather clocks
|
967 |
+
970,home > home goods > home decor > clocks > wall clocks
|
968 |
+
971,home > home goods > home decor > decorative accents > artificial food
|
969 |
+
972,home > home goods > home decor > decorative accents > artificial plants & flowers
|
970 |
+
973,home > home goods > home decor > decorative accents > baskets
|
971 |
+
974,home > home goods > home decor > decorative accents > bells
|
972 |
+
975,home > home goods > home decor > decorative accents > bookends
|
973 |
+
976,home > home goods > home decor > decorative accents > bottles
|
974 |
+
977,"home > home goods > home decor > decorative accents > boxes, jars & tins"
|
975 |
+
978,"home > home goods > home decor > decorative accents > decals, stickers & vinyl art"
|
976 |
+
979,"home > home goods > home decor > decorative accents > decorative plates, bowls & trays"
|
977 |
+
980,home > home goods > home decor > decorative accents > door decor
|
978 |
+
981,home > home goods > home decor > decorative accents > door mats
|
979 |
+
982,home > home goods > home decor > decorative accents > doorstops
|
980 |
+
983,home > home goods > home decor > decorative accents > dreamcatchers
|
981 |
+
984,home > home goods > home decor > decorative accents > dried flowers
|
982 |
+
985,home > home goods > home decor > decorative accents > figurines
|
983 |
+
986,home > home goods > home decor > decorative accents > finials
|
984 |
+
987,home > home goods > home decor > decorative accents > frames
|
985 |
+
988,home > home goods > home decor > decorative accents > hourglasses
|
986 |
+
989,home > home goods > home decor > decorative accents > house numbers & letters
|
987 |
+
990,home > home goods > home decor > decorative accents > indoor fountains
|
988 |
+
991,home > home goods > home decor > decorative accents > key & letter holders
|
989 |
+
992,home > home goods > home decor > decorative accents > masks
|
990 |
+
993,home > home goods > home decor > decorative accents > message boards & holders
|
991 |
+
994,home > home goods > home decor > decorative accents > mirrors
|
992 |
+
995,home > home goods > home decor > decorative accents > music boxes
|
993 |
+
996,home > home goods > home decor > decorative accents > piggy banks & money jars
|
994 |
+
997,home > home goods > home decor > decorative accents > plaques & signs
|
995 |
+
998,home > home goods > home decor > decorative accents > plate racks & hangers
|
996 |
+
999,"home > home goods > home decor > decorative accents > posters, prints & paintings"
|
997 |
+
1000,home > home goods > home decor > decorative accents > refrigerator magnets
|
998 |
+
1001,home > home goods > home decor > decorative accents > sculptures
|
999 |
+
1002,home > home goods > home decor > decorative accents > suncatchers & mobiles
|
1000 |
+
1003,home > home goods > home decor > decorative accents > tapestries
|
1001 |
+
1004,home > home goods > home decor > decorative accents > throw pillows
|
1002 |
+
1005,home > home goods > home decor > decorative accents > tile art
|
1003 |
+
1006,home > home goods > home decor > decorative accents > vase fillers
|
1004 |
+
1007,home > home goods > home decor > decorative accents > vases
|
1005 |
+
1008,home > home goods > home decor > decorative accents > wall pockets
|
1006 |
+
1009,home > home goods > home decor > decorative accents > world globes
|
1007 |
+
1010,home > home goods > home decor > decorative accents > wreaths & garlands
|
1008 |
+
1011,home > home goods > home decor > holiday & seasonal decor > advent calendars
|
1009 |
+
1012,home > home goods > home decor > holiday & seasonal decor > christmas lights
|
1010 |
+
1013,home > home goods > home decor > holiday & seasonal decor > christmas trees
|
1011 |
+
1014,home > home goods > home decor > holiday & seasonal decor > easter egg decorating kits
|
1012 |
+
1015,home > home goods > home decor > holiday & seasonal decor > holiday ornament hooks & stands
|
1013 |
+
1016,home > home goods > home decor > holiday & seasonal decor > holiday ornaments
|
1014 |
+
1017,home > home goods > home decor > holiday & seasonal decor > nativity sets
|
1015 |
+
1018,home > home goods > home decor > holiday & seasonal decor > seasonal village sets
|
1016 |
+
1019,home > home goods > home decor > holiday & seasonal decor > snow globes
|
1017 |
+
1020,home > home goods > home decor > holiday & seasonal decor > stockings & hangers
|
1018 |
+
1021,home > home goods > home decor > holiday & seasonal decor > table decor
|
1019 |
+
1022,home > home goods > home decor > holiday & seasonal decor > tree stands & skirts
|
1020 |
+
1023,home > home goods > home decor > holiday & seasonal decor > wall decor
|
1021 |
+
1024,home > home goods > home decor > holiday & seasonal decor > window decorations
|
1022 |
+
1025,"home > home goods > home decor > holiday & seasonal decor > wreaths, garlands & plants"
|
1023 |
+
1026,home > home goods > home decor > holiday & seasonal decor > yard decor
|
1024 |
+
1027,home > home goods > home decor > home fragrances > air fresheners
|
1025 |
+
1028,home > home goods > home decor > home fragrances > candle & oil warmers
|
1026 |
+
1029,home > home goods > home decor > home fragrances > candle holders
|
1027 |
+
1030,home > home goods > home decor > home fragrances > candle snuffers
|
1028 |
+
1031,home > home goods > home decor > home fragrances > candles
|
1029 |
+
1032,home > home goods > home decor > home fragrances > diffusers & fragrance oil
|
1030 |
+
1033,home > home goods > home decor > home fragrances > incense
|
1031 |
+
1034,home > home goods > home decor > home fragrances > incense holders
|
1032 |
+
1035,home > home goods > home decor > home fragrances > potpourri
|
1033 |
+
1036,home > home goods > home decor > home fragrances > wax tarts
|
1034 |
+
1037,home > home goods > home decor > rugs & carpets > area rugs
|
1035 |
+
1038,home > home goods > home decor > rugs & carpets > carpet tiles
|
1036 |
+
1039,home > home goods > home decor > rugs & carpets > floor mats
|
1037 |
+
1040,home > home goods > home decor > rugs & carpets > runners
|
1038 |
+
1041,home > home goods > home decor > rugs & carpets > stair treads
|
1039 |
+
1042,home > home goods > home decor > window treatments & hardware > curtain & drape rings
|
1040 |
+
1043,home > home goods > home decor > window treatments & hardware > curtain & drape rods
|
1041 |
+
1044,home > home goods > home decor > window treatments & hardware > curtain holdbacks & tassels
|
1042 |
+
1045,home > home goods > home decor > window treatments & hardware > curtains & drapes
|
1043 |
+
1046,home > home goods > home decor > window treatments & hardware > shutters
|
1044 |
+
1047,home > home goods > home decor > window treatments & hardware > stained glass panels
|
1045 |
+
1048,home > home goods > home decor > window treatments & hardware > window blinds & shades
|
1046 |
+
1049,home > home goods > home decor > window treatments & hardware > window films
|
1047 |
+
1050,home > home goods > home decor > window treatments & hardware > window magnets
|
1048 |
+
1051,home > home goods > home decor > window treatments & hardware > window screens
|
1049 |
+
1052,home > home goods > home decor > window treatments & hardware > window treatment replacement parts
|
1050 |
+
1053,home > home goods > home decor > window treatments & hardware > window valances & cornices
|
1051 |
+
1054,home > home goods > kitchen & dining > bakeware > bakeware sets
|
1052 |
+
1055,home > home goods > kitchen & dining > bakeware > baking & cookie sheets
|
1053 |
+
1056,home > home goods > kitchen & dining > bakeware > bread pans & molds
|
1054 |
+
1057,home > home goods > kitchen & dining > bakeware > cake pans & molds
|
1055 |
+
1058,home > home goods > kitchen & dining > bakeware > cooling racks
|
1056 |
+
1059,home > home goods > kitchen & dining > bakeware > muffin & pastry pans
|
1057 |
+
1060,home > home goods > kitchen & dining > bakeware > pie & quiche pans
|
1058 |
+
1061,home > home goods > kitchen & dining > bakeware > pizza pans & stones
|
1059 |
+
1062,home > home goods > kitchen & dining > bakeware > ramekins & soufflé dishes
|
1060 |
+
1063,home > home goods > kitchen & dining > bakeware > roasting pans
|
1061 |
+
1064,home > home goods > kitchen & dining > baking accessories
|
1062 |
+
1065,home > home goods > kitchen & dining > baking accessories > baking cups & liners
|
1063 |
+
1066,home > home goods > kitchen & dining > baking accessories > baking weights
|
1064 |
+
1067,home > home goods > kitchen & dining > baking accessories > cake boards
|
1065 |
+
1068,home > home goods > kitchen & dining > baking accessories > cake decorating supplies
|
1066 |
+
1069,home > home goods > kitchen & dining > baking accessories > cookie cutters & presses
|
1067 |
+
1070,home > home goods > kitchen & dining > baking accessories > icing bags
|
1068 |
+
1071,home > home goods > kitchen & dining > baking accessories > pastry cutters
|
1069 |
+
1072,home > home goods > kitchen & dining > baking accessories > pastry forms
|
1070 |
+
1073,home > home goods > kitchen & dining > baking accessories > rolling pins
|
1071 |
+
1074,home > home goods > kitchen & dining > barware > bar ice picks
|
1072 |
+
1075,home > home goods > kitchen & dining > barware > bottle caps
|
1073 |
+
1076,home > home goods > kitchen & dining > barware > bottle stoppers & corks
|
1074 |
+
1077,home > home goods > kitchen & dining > barware > coaster holders
|
1075 |
+
1078,home > home goods > kitchen & dining > barware > coasters
|
1076 |
+
1079,home > home goods > kitchen & dining > barware > cocktail & barware tool sets
|
1077 |
+
1080,home > home goods > kitchen & dining > barware > cocktail shakers
|
1078 |
+
1081,home > home goods > kitchen & dining > barware > cocktail strainers
|
1079 |
+
1082,home > home goods > kitchen & dining > barware > corkscrews & bottle openers
|
1080 |
+
1083,home > home goods > kitchen & dining > barware > decanters
|
1081 |
+
1084,home > home goods > kitchen & dining > barware > ice buckets & wine coolers
|
1082 |
+
1085,home > home goods > kitchen & dining > barware > ice cube trays & molds
|
1083 |
+
1086,home > home goods > kitchen & dining > barware > liquor & beer dispensers
|
1084 |
+
1087,home > home goods > kitchen & dining > barware > muddlers
|
1085 |
+
1088,home > home goods > kitchen & dining > barware > wine aerators
|
1086 |
+
1089,home > home goods > kitchen & dining > barware > wine fridges & cellars
|
1087 |
+
1090,home > home goods > kitchen & dining > barware > wine glass charms
|
1088 |
+
1091,home > home goods > kitchen & dining > barware > wine glass holders
|
1089 |
+
1092,home > home goods > kitchen & dining > barware > wine racks & bottle holders
|
1090 |
+
1093,home > home goods > kitchen & dining > cookware > casserole dishes
|
1091 |
+
1094,"home > home goods > kitchen & dining > cookware > cookware handles, lids & accessories"
|
1092 |
+
1095,home > home goods > kitchen & dining > cookware > cookware sets
|
1093 |
+
1096,home > home goods > kitchen & dining > cookware > crepe & blini pans
|
1094 |
+
1097,home > home goods > kitchen & dining > cookware > double boilers
|
1095 |
+
1098,home > home goods > kitchen & dining > cookware > dutch ovens
|
1096 |
+
1099,home > home goods > kitchen & dining > cookware > fermentation & pickling crocks
|
1097 |
+
1100,home > home goods > kitchen & dining > cookware > griddles & grill pans
|
1098 |
+
1101,home > home goods > kitchen & dining > cookware > grill presses
|
1099 |
+
1102,home > home goods > kitchen & dining > cookware > paella pans
|
1100 |
+
1103,home > home goods > kitchen & dining > cookware > saucepans
|
1101 |
+
1104,home > home goods > kitchen & dining > cookware > skillets & frying pans
|
1102 |
+
1105,home > home goods > kitchen & dining > cookware > stock pots
|
1103 |
+
1106,home > home goods > kitchen & dining > cookware > tagines & clay cooking pots
|
1104 |
+
1107,home > home goods > kitchen & dining > cookware > woks
|
1105 |
+
1108,home > home goods > kitchen & dining > dinnerware > bowls
|
1106 |
+
1109,home > home goods > kitchen & dining > dinnerware > butter dishes
|
1107 |
+
1110,home > home goods > kitchen & dining > dinnerware > creamers & sugar bowls
|
1108 |
+
1111,home > home goods > kitchen & dining > dinnerware > dinnerware sets
|
1109 |
+
1112,home > home goods > kitchen & dining > dinnerware > pitchers & carafes
|
1110 |
+
1113,home > home goods > kitchen & dining > dinnerware > plates
|
1111 |
+
1114,home > home goods > kitchen & dining > dinnerware > platters & trays
|
1112 |
+
1115,home > home goods > kitchen & dining > dinnerware > salt & pepper shakers
|
1113 |
+
1116,home > home goods > kitchen & dining > dinnerware > serving bowls & tureens
|
1114 |
+
1117,home > home goods > kitchen & dining > dinnerware > specialty serving dishes
|
1115 |
+
1118,home > home goods > kitchen & dining > dinnerware > specialty serving dishes > cake stands
|
1116 |
+
1119,home > home goods > kitchen & dining > dinnerware > specialty serving dishes > egg cups
|
1117 |
+
1120,home > home goods > kitchen & dining > dinnerware > specialty serving dishes > gravy & sauce boats
|
1118 |
+
1121,home > home goods > kitchen & dining > dinnerware > specialty serving dishes > punch bowls & sets
|
1119 |
+
1122,home > home goods > kitchen & dining > dinnerware > specialty serving dishes > trivets
|
1120 |
+
1123,home > home goods > kitchen & dining > drinkware > coffee & tea
|
1121 |
+
1124,home > home goods > kitchen & dining > drinkware > coffee & tea > coffee & tea cups
|
1122 |
+
1125,home > home goods > kitchen & dining > drinkware > coffee & tea > coffee & tea saucers
|
1123 |
+
1126,home > home goods > kitchen & dining > drinkware > coffee & tea > coffee & tea sets
|
1124 |
+
1127,home > home goods > kitchen & dining > drinkware > coffee & tea > teapots
|
1125 |
+
1128,home > home goods > kitchen & dining > drinkware > drinkware sets
|
1126 |
+
1129,home > home goods > kitchen & dining > drinkware > mugs
|
1127 |
+
1130,home > home goods > kitchen & dining > drinkware > stemware & liquor glasses
|
1128 |
+
1131,home > home goods > kitchen & dining > drinkware > stemware & liquor glasses > beer glasses
|
1129 |
+
1132,home > home goods > kitchen & dining > drinkware > stemware & liquor glasses > cocktail & liquor glasses
|
1130 |
+
1133,home > home goods > kitchen & dining > drinkware > stemware & liquor glasses > wine & champagne glasses
|
1131 |
+
1134,home > home goods > kitchen & dining > drinkware > tumblers
|
1132 |
+
1135,home > home goods > kitchen & dining > flatware > chopsticks
|
1133 |
+
1136,home > home goods > kitchen & dining > flatware > cutlery & kitchen knives
|
1134 |
+
1137,home > home goods > kitchen & dining > flatware > flatware sets
|
1135 |
+
1138,home > home goods > kitchen & dining > flatware > forks
|
1136 |
+
1139,home > home goods > kitchen & dining > flatware > knife blocks & storage
|
1137 |
+
1140,home > home goods > kitchen & dining > flatware > knife sharpeners
|
1138 |
+
1141,home > home goods > kitchen & dining > flatware > knives
|
1139 |
+
1142,home > home goods > kitchen & dining > flatware > scissors & shears
|
1140 |
+
1143,home > home goods > kitchen & dining > flatware > spoons
|
1141 |
+
1144,home > home goods > kitchen & dining > food & beverage carriers
|
1142 |
+
1145,home > home goods > kitchen & dining > food & beverage carriers > airpots
|
1143 |
+
1146,home > home goods > kitchen & dining > food & beverage carriers > canteens
|
1144 |
+
1147,home > home goods > kitchen & dining > food & beverage carriers > coolers
|
1145 |
+
1148,home > home goods > kitchen & dining > food & beverage carriers > drink sleeves
|
1146 |
+
1149,home > home goods > kitchen & dining > food & beverage carriers > flasks
|
1147 |
+
1150,home > home goods > kitchen & dining > food & beverage carriers > grocery bags
|
1148 |
+
1151,home > home goods > kitchen & dining > food & beverage carriers > insulated bags
|
1149 |
+
1152,home > home goods > kitchen & dining > food & beverage carriers > lunch boxes & totes
|
1150 |
+
1153,home > home goods > kitchen & dining > food & beverage carriers > picnic baskets
|
1151 |
+
1154,home > home goods > kitchen & dining > food & beverage carriers > replacement drink lids
|
1152 |
+
1155,home > home goods > kitchen & dining > food & beverage carriers > reusable straws
|
1153 |
+
1156,home > home goods > kitchen & dining > food & beverage carriers > thermoses
|
1154 |
+
1157,home > home goods > kitchen & dining > food & beverage carriers > water bottles
|
1155 |
+
1158,home > home goods > kitchen & dining > food & beverage carriers > wine carriers
|
1156 |
+
1159,home > home goods > kitchen & dining > food storage
|
1157 |
+
1160,home > home goods > kitchen & dining > food storage > bread boxes
|
1158 |
+
1161,home > home goods > kitchen & dining > food storage > candy buckets
|
1159 |
+
1162,home > home goods > kitchen & dining > food storage > cookie jars
|
1160 |
+
1163,home > home goods > kitchen & dining > food storage > foil
|
1161 |
+
1164,home > home goods > kitchen & dining > food storage > food & beverage labels
|
1162 |
+
1165,home > home goods > kitchen & dining > food storage > food storage bags
|
1163 |
+
1166,home > home goods > kitchen & dining > food storage > food storage containers
|
1164 |
+
1167,home > home goods > kitchen & dining > food storage > food wrap dispensers
|
1165 |
+
1168,home > home goods > kitchen & dining > food storage > honey jars
|
1166 |
+
1169,home > home goods > kitchen & dining > food storage > parchment paper
|
1167 |
+
1170,home > home goods > kitchen & dining > food storage > pastry cloth
|
1168 |
+
1171,home > home goods > kitchen & dining > food storage > plastic wrap
|
1169 |
+
1172,home > home goods > kitchen & dining > food storage > storage canisters & jars
|
1170 |
+
1173,home > home goods > kitchen & dining > food storage > twist ties & bag clips
|
1171 |
+
1174,home > home goods > kitchen & dining > food storage > vacuum sealers
|
1172 |
+
1175,home > home goods > kitchen & dining > food storage > wax paper
|
1173 |
+
1176,home > home goods > kitchen & dining > kitchen organization > cabinet organizers
|
1174 |
+
1177,home > home goods > kitchen & dining > kitchen organization > can organizers
|
1175 |
+
1178,home > home goods > kitchen & dining > kitchen organization > counter organizers
|
1176 |
+
1179,home > home goods > kitchen & dining > kitchen organization > drawer organizer inserts
|
1177 |
+
1180,home > home goods > kitchen & dining > kitchen organization > drinkware holders
|
1178 |
+
1181,home > home goods > kitchen & dining > kitchen organization > flatware storage
|
1179 |
+
1182,home > home goods > kitchen & dining > kitchen organization > paper towel holders
|
1180 |
+
1183,home > home goods > kitchen & dining > kitchen organization > pot racks
|
1181 |
+
1184,home improvement > home heating & cooling > air conditioners
|
1182 |
+
1185,home improvement > home heating & cooling > air filters
|
1183 |
+
1186,home improvement > home heating & cooling > air purifiers
|
1184 |
+
1187,home improvement > home heating & cooling > dehumidifiers
|
1185 |
+
1188,home improvement > home heating & cooling > fans
|
1186 |
+
1189,home improvement > home heating & cooling > fireplaces & stoves
|
1187 |
+
1190,"home improvement > home heating & cooling > fireplaces & stoves > andirons, grates & firedogs"
|
1188 |
+
1191,home improvement > home heating & cooling > fireplaces & stoves > chimney brushes
|
1189 |
+
1192,"home improvement > home heating & cooling > fireplaces & stoves > decorative logs, stone & glass"
|
1190 |
+
1193,home improvement > home heating & cooling > fireplaces & stoves > fireplace hearths
|
1191 |
+
1194,home improvement > home heating & cooling > fireplaces & stoves > fireplace mantels & surrounds
|
1192 |
+
1195,home improvement > home heating & cooling > fireplaces & stoves > fireplace screens & doors
|
1193 |
+
1196,home improvement > home heating & cooling > fireplaces & stoves > fireplaces
|
1194 |
+
1197,home improvement > home heating & cooling > fireplaces & stoves > fuel & firewood
|
1195 |
+
1198,home improvement > home heating & cooling > fireplaces & stoves > heating stoves
|
1196 |
+
1199,home improvement > home heating & cooling > fireplaces & stoves > log holders & carriers
|
1197 |
+
1200,"home improvement > home heating & cooling > fireplaces & stoves > pokers, tools & sets"
|
1198 |
+
1201,home improvement > home heating & cooling > fireplaces & stoves > replacement parts
|
1199 |
+
1202,home improvement > home heating & cooling > fireplaces & stoves > stove & chimney pipes
|
1200 |
+
1203,home improvement > home heating & cooling > furnaces & heating systems
|
1201 |
+
1204,home improvement > home heating & cooling > heated flooring
|
1202 |
+
1205,home improvement > home heating & cooling > humidifiers
|
1203 |
+
1206,home improvement > home heating & cooling > space heaters
|
1204 |
+
1207,home improvement > home heating & cooling > thermostats
|
1205 |
+
1208,home improvement > home heating & cooling > water heaters
|
1206 |
+
1209,home improvement > tools > miscellaneous tools
|
1207 |
+
1210,home improvement > tools > miscellaneous tools > lighters & matches
|
1208 |
+
1211,home improvement > tools > miscellaneous tools > magnetizers & demagnetizers
|
1209 |
+
1212,home improvement > tools > miscellaneous tools > marking tools
|
1210 |
+
1213,home improvement > tools > miscellaneous tools > milling machines
|
1211 |
+
1214,home improvement > tools > miscellaneous tools > pipe & bar benders
|
1212 |
+
1215,home improvement > tools > miscellaneous tools > reamers
|
1213 |
+
1216,home improvement > tools > miscellaneous tools > rivet guns & pliers
|
1214 |
+
1217,home improvement > tools > miscellaneous tools > sanding blocks
|
1215 |
+
1218,home improvement > tools > miscellaneous tools > saw horses
|
1216 |
+
1219,home improvement > tools > miscellaneous tools > shapers
|
1217 |
+
1220,home improvement > tools > miscellaneous tools > socket drivers
|
1218 |
+
1221,"home improvement > tools > miscellaneous tools > tool boxes, belts & storage"
|
1219 |
+
1222,home improvement > tools > miscellaneous tools > welding & soldering tools
|
1220 |
+
1223,home improvement > tools > miscellaneous tools > wet/dry & shop vacuums
|
1221 |
+
1224,home improvement > tools > miscellaneous tools > work benches
|
1222 |
+
1225,home improvement > tools > miscellaneous tools > work lights
|
1223 |
+
1226,home improvement > tools > painting tools > caulk & sealant
|
1224 |
+
1227,home improvement > tools > painting tools > caulking guns
|
1225 |
+
1228,home improvement > tools > painting tools > cleaning solutions
|
1226 |
+
1229,home improvement > tools > painting tools > drop cloths
|
1227 |
+
1230,home improvement > tools > painting tools > extension poles
|
1228 |
+
1231,home improvement > tools > painting tools > paint brushes
|
1229 |
+
1232,home improvement > tools > painting tools > paint buckets
|
1230 |
+
1233,home improvement > tools > painting tools > paint mixers
|
1231 |
+
1234,home improvement > tools > painting tools > paint rollers
|
1232 |
+
1235,home improvement > tools > painting tools > paint sprayers
|
1233 |
+
1236,home improvement > tools > painting tools > paint trays
|
1234 |
+
1237,home improvement > tools > painting tools > painter's tape
|
1235 |
+
1238,home improvement > tools > power tools > buffers & polishers
|
1236 |
+
1239,home improvement > tools > power tools > drills
|
1237 |
+
1240,home improvement > tools > power tools > grinders
|
1238 |
+
1241,home improvement > tools > power tools > heat guns
|
1239 |
+
1242,home improvement > tools > power tools > impact drivers & wrenches
|
1240 |
+
1243,home improvement > tools > power tools > jacks & stands
|
1241 |
+
1244,home improvement > tools > power tools > jigs
|
1242 |
+
1245,home improvement > tools > power tools > joiners
|
1243 |
+
1246,home improvement > tools > power tools > lathes
|
1244 |
+
1247,home improvement > tools > power tools > mixed power tool sets
|
1245 |
+
1248,home improvement > tools > power tools > nail & staple guns
|
1246 |
+
1249,home improvement > tools > power tools > planers
|
1247 |
+
1250,home improvement > tools > power tools > power tool parts & accessories
|
1248 |
+
1251,home improvement > tools > power tools > rotary tools
|
1249 |
+
1252,home improvement > tools > power tools > router bits
|
1250 |
+
1253,home improvement > tools > power tools > router tables
|
1251 |
+
1254,home improvement > tools > power tools > routers
|
1252 |
+
1255,home improvement > tools > power tools > sanders
|
1253 |
+
1256,home improvement > tools > power tools > saws & blades
|
1254 |
+
1257,home improvement > tools > power tools > screwdrivers
|
1255 |
+
1258,home improvement > tools > power tools > sharpeners
|
1256 |
+
1259,home improvement > tools > power tools > winches
|
1257 |
+
1260,home > bedding > bed canopies
|
1258 |
+
1261,home > cleaning supplies > cleaning products & chemicals > carpet shampooers
|
1259 |
+
1262,home > cleaning supplies > cleaning products & chemicals > carpet steamers
|
1260 |
+
1263,home > cleaning supplies > cleaning products & chemicals > cleaning products & solutions
|
1261 |
+
1264,home > cleaning supplies > cleaning tools
|
1262 |
+
1265,home > cleaning supplies > cleaning tools > carpet & floor sweepers
|
1263 |
+
1266,home > cleaning supplies > cleaning tools > cleaning buckets
|
1264 |
+
1267,home > cleaning supplies > cleaning tools > cleaning gloves
|
1265 |
+
1268,home > cleaning supplies > cleaning tools > cleaning towels & cloths
|
1266 |
+
1269,home > cleaning supplies > cleaning tools > dusters
|
1267 |
+
1270,home > cleaning supplies > cleaning tools > dustpans
|
1268 |
+
1271,home > cleaning supplies > cleaning tools > mops & brooms
|
1269 |
+
1272,home > cleaning supplies > cleaning tools > pipe cleaners
|
1270 |
+
1273,home > cleaning supplies > cleaning tools > scrub brushes
|
1271 |
+
1274,home > cleaning supplies > cleaning tools > sponges & scouring pads
|
1272 |
+
1275,home > cleaning supplies > cleaning tools > squeegees
|
1273 |
+
1276,home > cleaning supplies > dishwashing supplies
|
1274 |
+
1277,home > cleaning supplies > dishwashing supplies > dish soaps
|
1275 |
+
1278,home > cleaning supplies > dishwashing supplies > dishwasher detergents
|
1276 |
+
1279,home > cleaning supplies > dishwashing supplies > dishwasher rinse aids
|
1277 |
+
1280,home > cleaning supplies > drawer & shelf liners
|
1278 |
+
1281,home > cleaning supplies > fabric & upholstery protectors
|
1279 |
+
1282,home > cleaning supplies > floor protectors & runners
|
1280 |
+
1283,home > cleaning supplies > household disposables
|
1281 |
+
1284,home > cleaning supplies > household disposables > disposable straws
|
1282 |
+
1285,home > cleaning supplies > household disposables > disposable tableware
|
1283 |
+
1286,home > cleaning supplies > household disposables > disposable tableware > disposable cups
|
1284 |
+
1287,home > cleaning supplies > household disposables > disposable tableware > disposable cutlery
|
1285 |
+
1288,home > cleaning supplies > household disposables > disposable tableware > disposable napkins
|
1286 |
+
1289,home > cleaning supplies > household disposables > disposable tableware > disposable plates
|
1287 |
+
1290,home > cleaning supplies > household disposables > disposable tableware > disposable tablecloths
|
1288 |
+
1291,home > cleaning supplies > household disposables > facial tissues
|
1289 |
+
1292,home > cleaning supplies > household disposables > paper towels
|
1290 |
+
1293,home > cleaning supplies > household disposables > toilet paper
|
1291 |
+
1294,home > cleaning supplies > household disposables > trash bags
|
1292 |
+
1295,home > cleaning supplies > laundry supplies > bleaches & stain removers
|
1293 |
+
1296,home > cleaning supplies > laundry supplies > clothespins
|
1294 |
+
1297,home > cleaning supplies > laundry supplies > dry cleaning kits
|
1295 |
+
1298,home > cleaning supplies > laundry supplies > drying racks & hangers
|
1296 |
+
1299,home > cleaning supplies > laundry supplies > fabric deodorizers
|
1297 |
+
1300,home > cleaning supplies > laundry supplies > fabric shavers
|
1298 |
+
1301,home > cleaning supplies > laundry supplies > fabric softeners & dryer sheets
|
1299 |
+
1302,home > cleaning supplies > laundry supplies > fabric starch
|
1300 |
+
1303,home > cleaning supplies > laundry supplies > garment shields
|
1301 |
+
1304,home > cleaning supplies > laundry supplies > garment steamers
|
1302 |
+
1305,home > cleaning supplies > laundry supplies > hampers & baskets
|
1303 |
+
1306,home > cleaning supplies > laundry supplies > iron rests
|
1304 |
+
1307,home > cleaning supplies > laundry supplies > ironing board covers
|
1305 |
+
1308,home > cleaning supplies > laundry supplies > ironing board racks
|
1306 |
+
1309,home > cleaning supplies > laundry supplies > ironing boards
|
1307 |
+
1310,home > cleaning supplies > laundry supplies > irons
|
1308 |
+
1311,home > cleaning supplies > laundry supplies > laundry balls
|
1309 |
+
1312,home > cleaning supplies > laundry supplies > laundry detergents
|
1310 |
+
1313,home > cleaning supplies > laundry supplies > lint rollers
|
1311 |
+
1314,home > cleaning supplies > laundry supplies > washing bags
|
1312 |
+
1315,home > cleaning supplies > laundry supplies > wrinkle releasers & anti-static sprays
|
1313 |
+
1316,home > cleaning supplies > party supplies
|
1314 |
+
1317,home > cleaning supplies > party supplies > aisle runners
|
1315 |
+
1318,home > cleaning supplies > party supplies > badges & pins
|
1316 |
+
1319,home > cleaning supplies > party supplies > balloons
|
1317 |
+
1320,"home > cleaning supplies > party supplies > banners, bunting & garlands"
|
1318 |
+
1321,home > cleaning supplies > party supplies > cake toppers
|
1319 |
+
1322,home > cleaning supplies > party supplies > candles
|
1320 |
+
1323,home > cleaning supplies > party supplies > card boxes
|
1321 |
+
1324,home > cleaning supplies > party supplies > centerpieces
|
1322 |
+
1325,home > cleaning supplies > party supplies > confetti
|
1323 |
+
1326,home > cleaning supplies > party supplies > gift bags
|
1324 |
+
1327,home > cleaning supplies > party supplies > glow sticks
|
1325 |
+
1328,home > cleaning supplies > party supplies > guest books
|
1326 |
+
1329,home > cleaning supplies > party supplies > invitations & stationery
|
1327 |
+
1330,home > cleaning supplies > party supplies > organizers & planners
|
1328 |
+
1331,home > cleaning supplies > party supplies > party favors
|
1329 |
+
1332,home > cleaning supplies > party supplies > party sets & kits
|
1330 |
+
1333,home > cleaning supplies > party supplies > piñatas
|
1331 |
+
1334,home > cleaning supplies > party supplies > ribbons & bows
|
1332 |
+
1335,home > cleaning supplies > party supplies > tulle
|
1333 |
+
1336,home > cleaning supplies > party supplies > wrapping paper
|
1334 |
+
1337,home > cleaning supplies > shoe care
|
1335 |
+
1338,home > cleaning supplies > shoe care > boot pulls
|
1336 |
+
1339,home > cleaning supplies > shoe care > shoe bags
|
1337 |
+
1340,home > cleaning supplies > shoe care > shoe brushes
|
1338 |
+
1341,home > cleaning supplies > shoe care > shoe care kits
|
1339 |
+
1342,home > cleaning supplies > shoe care > shoe dryers
|
1340 |
+
1343,home > cleaning supplies > shoe care > shoe horns
|
1341 |
+
1344,home > cleaning supplies > shoe care > shoe polishers
|
1342 |
+
1345,home > cleaning supplies > shoe care > shoe polishes & waxes
|
1343 |
+
1346,home > cleaning supplies > shoe care > shoe scrapers
|
1344 |
+
1347,home > cleaning supplies > shoe care > shoe treatments & dyes
|
1345 |
+
1348,home > cleaning supplies > shoe care > shoe trees & shapers
|
1346 |
+
1349,home > cleaning supplies > trash cans & wastebaskets
|
1347 |
+
1350,home > cleaning supplies > vacuums & floor cleaners > canister vacuum cleaners
|
1348 |
+
1351,home > cleaning supplies > vacuums & floor cleaners > handheld vacuum cleaners
|
1349 |
+
1352,home > cleaning supplies > vacuums & floor cleaners > robotic vacuum cleaners
|
1350 |
+
1353,home > cleaning supplies > vacuums & floor cleaners > stick vacuum cleaners
|
1351 |
+
1354,home > cleaning supplies > vacuums & floor cleaners > upright vacuum cleaners
|
1352 |
+
1355,home > cleaning supplies > vacuums & floor cleaners > vacuum cleaner parts & accessories
|
1353 |
+
1356,home > cleaning supplies > vacuums & floor cleaners > vacuum cleaners
|
1354 |
+
1357,home > furniture > bean bags & inflatable furniture
|
1355 |
+
1358,home > furniture > bedroom furniture > armoires & wardrobes
|
1356 |
+
1359,home > furniture > bedroom furniture > bedroom furniture sets
|
1357 |
+
1360,home > furniture > bedroom furniture > beds & mattresses
|
1358 |
+
1361,home > furniture > bedroom furniture > beds & mattresses > bed & waterbed accessories
|
1359 |
+
1362,home > furniture > bedroom furniture > beds & mattresses > beds & bed frames
|
1360 |
+
1363,home > furniture > bedroom furniture > beds & mattresses > headboards & footboards
|
1361 |
+
1364,home > furniture > bedroom furniture > beds & mattresses > inflatable mattresses
|
1362 |
+
1365,home > furniture > bedroom furniture > beds & mattresses > mattress foundations
|
1363 |
+
1366,home > furniture > bedroom furniture > beds & mattresses > mattresses
|
1364 |
+
1367,home > furniture > bedroom furniture > dressers & chests of drawers
|
1365 |
+
1368,home > furniture > bedroom furniture > nightstands
|
1366 |
+
1369,home > furniture > benches
|
1367 |
+
1370,home > furniture > dining room furniture > bar carts & serving carts
|
1368 |
+
1371,home > furniture > dining room furniture > bar stools
|
1369 |
+
1372,home > furniture > dining room furniture > buffets & sideboards
|
1370 |
+
1373,home > furniture > dining room furniture > china cabinets & hutches
|
1371 |
+
1374,home > furniture > dining room furniture > dining chairs
|
1372 |
+
1375,home > furniture > dining room furniture > dining furniture sets
|
1373 |
+
1376,home > furniture > dining room furniture > dining tables
|
1374 |
+
1377,home > furniture > dining room furniture > kitchen islands
|
1375 |
+
1378,home > furniture > furniture parts & accessories
|
1376 |
+
1379,home > furniture > hall trees & coat racks
|
1377 |
+
1380,home > furniture > living room furniture > bookcases
|
1378 |
+
1381,home > furniture > living room furniture > chaise lounges
|
1379 |
+
1382,home > furniture > living room furniture > coffee tables
|
1380 |
+
1383,home > furniture > living room furniture > console tables
|
1381 |
+
1384,home > furniture > living room furniture > end & side tables
|
1382 |
+
1385,home > furniture > living room furniture > entertainment units & tv stands
|
1383 |
+
1386,home > furniture > living room furniture > futons
|
1384 |
+
1387,home > furniture > living room furniture > living room chairs
|
1385 |
+
1388,home > furniture > living room furniture > living room furniture sets
|
1386 |
+
1389,home > furniture > living room furniture > magazine racks
|
1387 |
+
1390,home > furniture > living room furniture > media storage racks
|
1388 |
+
1391,home > furniture > living room furniture > ottomans & footstools
|
1389 |
+
1392,"home > furniture > living room furniture > sofas, loveseats & sectionals"
|
1390 |
+
1393,home > furniture > office furniture > desks
|
1391 |
+
1394,home > furniture > office furniture > office chairs
|
1392 |
+
1395,home > furniture > office furniture > office furniture sets
|
1393 |
+
1396,home > furniture > office furniture > office suites
|
1394 |
+
1397,home > furniture > office furniture > storage & filing cabinets
|
1395 |
+
1398,home > furniture > room dividers
|
1396 |
+
1399,home > furniture > slipcovers
|
1397 |
+
1400,home > furniture > trunks & chests
|
1398 |
+
1401,home > furniture > vanities & makeup tables
|
1399 |
+
1402,home > furniture > wall shelves & ledges
|
1400 |
+
1403,home > home goods > bath > bath accessories > mirrors
|
1401 |
+
1404,home > home goods > bath > bath accessories > plungers
|
1402 |
+
1405,home > home goods > bath > bath accessories > scales
|
1403 |
+
1406,home > home goods > bath > bath accessories > shower curtain hooks & rods
|
1404 |
+
1407,home > home goods > bath > bath accessories > shower heads
|
1405 |
+
1408,home improvement > building supplies & hardware > consumables
|
1406 |
+
1409,home improvement > building supplies & hardware > consumables > grout
|
1407 |
+
1410,home improvement > building supplies & hardware > consumables > insulation
|
1408 |
+
1411,home improvement > building supplies & hardware > consumables > lubricants
|
1409 |
+
1412,home improvement > building supplies & hardware > consumables > paint & varnish
|
1410 |
+
1413,home improvement > building supplies & hardware > consumables > paint & varnish > paint
|
1411 |
+
1414,home improvement > building supplies & hardware > consumables > paint & varnish > paint binders
|
1412 |
+
1415,home improvement > building supplies & hardware > consumables > paint & varnish > paint primers
|
1413 |
+
1416,home improvement > building supplies & hardware > consumables > paint & varnish > stains
|
1414 |
+
1417,home improvement > building supplies & hardware > consumables > paint & varnish > varnishes & finishes
|
1415 |
+
1418,home improvement > building supplies & hardware > consumables > plaster & patching compounds
|
1416 |
+
1419,home improvement > building supplies & hardware > consumables > plumbing primers
|
1417 |
+
1420,home improvement > building supplies & hardware > consumables > protective coatings & sealants
|
1418 |
+
1421,home improvement > building supplies & hardware > consumables > rebar & remesh
|
1419 |
+
1422,home improvement > building supplies & hardware > consumables > solder & flux
|
1420 |
+
1423,"home improvement > building supplies & hardware > consumables > solvents, strippers & thinners"
|
1421 |
+
1424,home improvement > building supplies & hardware > consumables > tape
|
1422 |
+
1425,home improvement > building supplies & hardware > countertops
|
1423 |
+
1426,home improvement > building supplies & hardware > doors & door hardware
|
1424 |
+
1427,home improvement > building supplies & hardware > doors & door hardware > door closers
|
1425 |
+
1428,home improvement > building supplies & hardware > doors & door hardware > door frames
|
1426 |
+
1429,home improvement > building supplies & hardware > doors & door hardware > door hinges
|
1427 |
+
1430,home improvement > building supplies & hardware > doors & door hardware > door keyhole covers & escutcheons
|
1428 |
+
1431,home improvement > building supplies & hardware > doors & door hardware > door knobs & levers
|
1429 |
+
1432,home improvement > building supplies & hardware > doors & door hardware > door knockers
|
1430 |
+
1433,home improvement > building supplies & hardware > doors & door hardware > door locks & lock mechanisms
|
1431 |
+
1434,home improvement > building supplies & hardware > doors & door hardware > door push plates
|
1432 |
+
1435,home improvement > building supplies & hardware > doors & door hardware > door stops
|
1433 |
+
1436,home improvement > building supplies & hardware > doors & door hardware > door strikes
|
1434 |
+
1437,home improvement > building supplies & hardware > doors & door hardware > door viewers
|
1435 |
+
1438,home improvement > building supplies & hardware > doors & door hardware > doorbells
|
1436 |
+
1439,home improvement > building supplies & hardware > doors & door hardware > doors
|
1437 |
+
1440,home improvement > building supplies & hardware > doors & door hardware > latches & bolts
|
1438 |
+
1441,home improvement > building supplies & hardware > doors & door hardware > screen doors
|
1439 |
+
1442,home improvement > building supplies & hardware > doors & door hardware > weather stripping
|
1440 |
+
1443,home improvement > building supplies & hardware > electrical & solar supplies
|
1441 |
+
1444,home improvement > building supplies & hardware > electrical & solar supplies > circuit breakers & fuse boxes
|
1442 |
+
1445,home improvement > building supplies & hardware > electrical & solar supplies > extension cords
|
1443 |
+
1446,home improvement > building supplies & hardware > electrical & solar supplies > generators
|
1444 |
+
1447,home improvement > building supplies & hardware > electrical & solar supplies > plug caps
|
1445 |
+
1448,home improvement > building supplies & hardware > electrical & solar supplies > solar chargers & inverters
|
1446 |
+
1449,home improvement > building supplies & hardware > electrical & solar supplies > solar panels
|
1447 |
+
1450,home improvement > building supplies & hardware > electrical & solar supplies > solar water pumps
|
1448 |
+
1451,home improvement > building supplies & hardware > electrical & solar supplies > switch plates & outlet covers
|
1449 |
+
1452,home improvement > building supplies & hardware > electrical & solar supplies > switches & outlets
|
1450 |
+
1453,home improvement > building supplies & hardware > electrical & solar supplies > wall socket controls & sensors
|
1451 |
+
1454,home improvement > building supplies & hardware > flooring & tiles
|
1452 |
+
1455,home improvement > building supplies & hardware > flooring & tiles > floor & wall tiles
|
1453 |
+
1456,home improvement > building supplies & hardware > flooring & tiles > flooring & tiling accessories
|
1454 |
+
1457,home improvement > building supplies & hardware > flooring & tiles > flooring moldings & trims
|
1455 |
+
1458,home improvement > building supplies & hardware > flooring & tiles > flooring underlayment
|
1456 |
+
1459,home improvement > building supplies & hardware > flooring & tiles > laminate & vinyl flooring
|
1457 |
+
1460,home improvement > building supplies & hardware > flooring & tiles > wood flooring
|
1458 |
+
1461,home improvement > building supplies & hardware > garage doors & openers
|
1459 |
+
1462,home improvement > building supplies & hardware > garage doors & openers > garage door parts & accessories
|
1460 |
+
1463,home improvement > building supplies & hardware > garage doors & openers > garage door remotes
|
1461 |
+
1464,home improvement > building supplies & hardware > garage doors & openers > garage doors
|
1462 |
+
1465,home improvement > building supplies & hardware > garage doors & openers > opener systems
|
1463 |
+
1466,home improvement > building supplies & hardware > locks & keys
|
1464 |
+
1467,home improvement > building supplies & hardware > locks & keys > key blanks
|
1465 |
+
1468,home improvement > building supplies & hardware > locks & keys > key caps
|
1466 |
+
1469,home improvement > building supplies & hardware > locks & keys > key card entry systems
|
1467 |
+
1470,home improvement > building supplies & hardware > locks & keys > locks & latches
|
1468 |
+
1471,home improvement > building supplies & hardware > lumber & composites
|
1469 |
+
1472,home improvement > building supplies & hardware > lumber & composites > lumber
|
1470 |
+
1473,home improvement > building supplies & hardware > lumber & composites > wall paneling
|
1471 |
+
1474,home improvement > building supplies & hardware > lumber & composites > wood composite panels & sheets
|
1472 |
+
1475,home improvement > building supplies & hardware > lumber & composites > wood veneer sheets
|
1473 |
+
1476,home improvement > building supplies & hardware > mailboxes & mailbox hardware
|
1474 |
+
1477,home improvement > building supplies & hardware > mailboxes & mailbox hardware > mail slots
|
1475 |
+
1478,home improvement > building supplies & hardware > mailboxes & mailbox hardware > mailbox covers
|
1476 |
+
1479,home improvement > building supplies & hardware > mailboxes & mailbox hardware > mailbox enclosures
|
1477 |
+
1480,home improvement > building supplies & hardware > mailboxes & mailbox hardware > mailbox flags
|
1478 |
+
1481,home improvement > building supplies & hardware > mailboxes & mailbox hardware > mailbox posts
|
1479 |
+
1482,home improvement > building supplies & hardware > mailboxes & mailbox hardware > mailbox replacement doors
|
1480 |
+
1483,home improvement > building supplies & hardware > mailboxes & mailbox hardware > mailboxes
|
1481 |
+
1484,"home improvement > building supplies & hardware > nails, screws & fasteners"
|
1482 |
+
1485,"home improvement > building supplies & hardware > nails, screws & fasteners > anchors"
|
1483 |
+
1486,"home improvement > building supplies & hardware > nails, screws & fasteners > braces & brackets"
|
1484 |
+
1487,"home improvement > building supplies & hardware > nails, screws & fasteners > chain connectors & links"
|
1485 |
+
1488,"home improvement > building supplies & hardware > nails, screws & fasteners > clamps & shackles"
|
1486 |
+
1489,"home improvement > building supplies & hardware > nails, screws & fasteners > coils"
|
1487 |
+
1490,"home improvement > building supplies & hardware > nails, screws & fasteners > fastener assortments"
|
1488 |
+
1491,"home improvement > building supplies & hardware > nails, screws & fasteners > gear ties"
|
1489 |
+
1492,"home improvement > building supplies & hardware > nails, screws & fasteners > hooks"
|
1490 |
+
1493,"home improvement > building supplies & hardware > nails, screws & fasteners > nails"
|
1491 |
+
1494,"home improvement > building supplies & hardware > nails, screws & fasteners > nuts & bolts"
|
1492 |
+
1495,"home improvement > building supplies & hardware > nails, screws & fasteners > pins"
|
1493 |
+
1496,"home improvement > building supplies & hardware > nails, screws & fasteners > rivets"
|
1494 |
+
1497,"home improvement > building supplies & hardware > nails, screws & fasteners > screw posts"
|
1495 |
+
1498,"home improvement > building supplies & hardware > nails, screws & fasteners > screws"
|
1496 |
+
1499,"home improvement > building supplies & hardware > nails, screws & fasteners > springs"
|
1497 |
+
1500,"home improvement > building supplies & hardware > nails, screws & fasteners > threaded rods"
|
1498 |
+
1501,"home improvement > building supplies & hardware > nails, screws & fasteners > utility buckles"
|
1499 |
+
1502,"home improvement > building supplies & hardware > nails, screws & fasteners > washers"
|
1500 |
+
1503,home improvement > building supplies & hardware > roofing supplies
|
1501 |
+
1504,home improvement > building supplies & hardware > roofing supplies > gutters
|
1502 |
+
1505,home improvement > building supplies & hardware > roofing supplies > roof flashings
|
1503 |
+
1506,home improvement > building supplies & hardware > roofing supplies > shingles & tiles
|
1504 |
+
1507,home improvement > building supplies & hardware > siding
|
1505 |
+
1508,home improvement > building supplies & hardware > staircases
|
1506 |
+
1509,home improvement > building supplies & hardware > wallpaper & accessories
|
1507 |
+
1510,home improvement > building supplies & hardware > wallpaper & accessories > wallpaper borders
|
1508 |
+
1511,home improvement > building supplies & hardware > wallpaper & accessories > wallpaper murals
|
1509 |
+
1512,home improvement > building supplies & hardware > wallpaper & accessories > wallpaper rolls & sheets
|
1510 |
+
1513,home improvement > building supplies & hardware > wallpaper & accessories > wallpaper tools & accessories
|
1511 |
+
1514,home improvement > building supplies & hardware > windows & window hardware
|
1512 |
+
1515,home improvement > building supplies & hardware > windows & window hardware > weather stripping
|
1513 |
+
1516,home improvement > building supplies & hardware > windows & window hardware > window cranks
|
1514 |
+
1517,home improvement > building supplies & hardware > windows & window hardware > window frames
|
1515 |
+
1518,home improvement > building supplies & hardware > windows & window hardware > window hardware
|
1516 |
+
1519,home improvement > building supplies & hardware > windows & window hardware > window screens
|
1517 |
+
1520,home improvement > building supplies & hardware > windows & window hardware > window sills
|
1518 |
+
1521,home improvement > building supplies & hardware > windows & window hardware > windows
|
1519 |
+
1522,home improvement > plumbing & fixtures > bathroom suites
|
1520 |
+
1523,home improvement > plumbing & fixtures > bathtubs
|
1521 |
+
1524,home improvement > plumbing & fixtures > drains
|
1522 |
+
1525,home improvement > plumbing & fixtures > faucets
|
1523 |
+
1526,home improvement > plumbing & fixtures > garbage disposals
|
1524 |
+
1527,home improvement > plumbing & fixtures > pipes
|
1525 |
+
1528,home improvement > plumbing & fixtures > pumps
|
1526 |
+
1529,home improvement > plumbing & fixtures > shower parts & accessories
|
1527 |
+
1530,home improvement > plumbing & fixtures > shower parts & accessories > bathtub & shower jets
|
1528 |
+
1531,home improvement > plumbing & fixtures > shower parts & accessories > electric & power showers
|
1529 |
+
1532,home improvement > plumbing & fixtures > shower parts & accessories > shower arms & connectors
|
1530 |
+
1533,home improvement > plumbing & fixtures > shower parts & accessories > shower bases
|
1531 |
+
1534,home improvement > plumbing & fixtures > shower parts & accessories > shower columns
|
1532 |
+
1535,home improvement > plumbing & fixtures > shower parts & accessories > shower doors & enclosures
|
1533 |
+
1536,home improvement > plumbing & fixtures > shower parts & accessories > shower heads
|
1534 |
+
1537,home improvement > plumbing & fixtures > shower parts & accessories > shower walls & surrounds
|
1535 |
+
1538,home improvement > plumbing & fixtures > shower stalls
|
1536 |
+
1539,home improvement > plumbing & fixtures > sinks
|
1537 |
+
1540,home improvement > plumbing & fixtures > toilet parts & accessories
|
1538 |
+
1541,home improvement > plumbing & fixtures > toilet parts & accessories > ballcocks & flappers
|
1539 |
+
1542,home improvement > plumbing & fixtures > toilet parts & accessories > bidet faucets & sprayers
|
1540 |
+
1543,home improvement > plumbing & fixtures > toilet parts & accessories > toilet & bidet seats
|
1541 |
+
1544,home improvement > plumbing & fixtures > toilet parts & accessories > toilet tank levers
|
1542 |
+
1545,home improvement > plumbing & fixtures > toilet parts & accessories > toilet tanks
|
1543 |
+
1546,home improvement > plumbing & fixtures > toilet parts & accessories > toilet trim
|
1544 |
+
1547,home improvement > plumbing & fixtures > toilets
|
1545 |
+
1548,"home improvement > plumbing & fixtures > valves, fittings & clamps"
|
1546 |
+
1549,home improvement > plumbing & fixtures > vanities
|
1547 |
+
1550,home improvement > plumbing & fixtures > water levelers
|
1548 |
+
1551,home improvement > plumbing & fixtures > water softeners
|
1549 |
+
1552,home improvement > plumbing & fixtures > water timers
|
1550 |
+
1553,home improvement > plumbing & fixtures > well supplies
|
1551 |
+
1554,home improvement > tools > air tools > air compressors
|
1552 |
+
1555,home improvement > tools > air tools > air tool kits
|
1553 |
+
1556,home improvement > tools > air tools > air tool parts & accessories
|
1554 |
+
1557,home improvement > tools > air tools > cut-off tools
|
1555 |
+
1558,home improvement > tools > air tools > drills
|
1556 |
+
1559,home improvement > tools > air tools > grease & sealant guns
|
1557 |
+
1560,home improvement > tools > air tools > grinders
|
1558 |
+
1561,home improvement > tools > air tools > hammers
|
1559 |
+
1562,home improvement > tools > air tools > nailers
|
1560 |
+
1563,home improvement > tools > air tools > ratchets
|
1561 |
+
1564,home improvement > tools > air tools > sandblasters
|
1562 |
+
1565,home improvement > tools > air tools > sanders
|
1563 |
+
1566,home improvement > tools > air tools > wrenches
|
1564 |
+
1567,home improvement > tools > hand tools > chisels
|
1565 |
+
1568,home improvement > tools > hand tools > clamps & vises
|
1566 |
+
1569,home improvement > tools > hand tools > cutters
|
1567 |
+
1570,home improvement > tools > hand tools > files
|
1568 |
+
1571,home improvement > tools > hand tools > hammers & mallets
|
1569 |
+
1572,home improvement > tools > hand tools > hand tool parts & accessories
|
1570 |
+
1573,home improvement > tools > hand tools > knives & blades
|
1571 |
+
1574,home improvement > tools > hand tools > mixed hand tool sets
|
1572 |
+
1575,home improvement > tools > hand tools > multitools
|
1573 |
+
1576,home improvement > tools > hand tools > pickup tools
|
1574 |
+
1577,home improvement > tools > hand tools > planes
|
1575 |
+
1578,home improvement > tools > hand tools > pliers
|
1576 |
+
1579,home improvement > tools > hand tools > pry bars
|
1577 |
+
1580,home improvement > tools > hand tools > punches
|
1578 |
+
1581,home improvement > tools > hand tools > putty knives & scrapers
|
1579 |
+
1582,home improvement > tools > hand tools > saws
|
1580 |
+
1583,home improvement > tools > hand tools > screwdrivers
|
1581 |
+
1584,home improvement > tools > hand tools > taps & dies
|
1582 |
+
1585,home improvement > tools > hand tools > tool keys
|
1583 |
+
1586,home improvement > tools > hand tools > trowels
|
1584 |
+
1587,home improvement > tools > hand tools > winches
|
1585 |
+
1588,home improvement > tools > hand tools > wrenches
|
1586 |
+
1589,home improvement > tools > ladders & scaffolding > ladder carts
|
1587 |
+
1590,home improvement > tools > ladders & scaffolding > ladders
|
1588 |
+
1591,home improvement > tools > ladders & scaffolding > scaffolding
|
1589 |
+
1592,home improvement > tools > ladders & scaffolding > step stools
|
1590 |
+
1593,home improvement > tools > ladders & scaffolding > work platforms
|
1591 |
+
1594,home improvement > tools > masonry tools
|
1592 |
+
1595,home improvement > tools > masonry tools > brick tools
|
1593 |
+
1596,home improvement > tools > masonry tools > cement mixers
|
1594 |
+
1597,home improvement > tools > masonry tools > construction lines
|
1595 |
+
1598,home improvement > tools > masonry tools > floats
|
1596 |
+
1599,home improvement > tools > masonry tools > grout sponges
|
1597 |
+
1600,home improvement > tools > masonry tools > masonry edgers & groovers
|
1598 |
+
1601,home improvement > tools > masonry tools > masonry jointers
|
1599 |
+
1602,home improvement > tools > masonry tools > masonry trowels
|
1600 |
+
1603,home improvement > tools > masonry tools > power trowels
|
1601 |
+
1604,home improvement > tools > measuring tools & sensors > air quality meters
|
1602 |
+
1605,home improvement > tools > measuring tools & sensors > altimeters
|
1603 |
+
1606,home improvement > tools > measuring tools & sensors > anemometers
|
1604 |
+
1607,home improvement > tools > measuring tools & sensors > barometers
|
1605 |
+
1608,home improvement > tools > measuring tools & sensors > calipers
|
1606 |
+
1609,home improvement > tools > measuring tools & sensors > cruising rods
|
1607 |
+
1610,home improvement > tools > measuring tools & sensors > distance meters
|
1608 |
+
1611,home improvement > tools > measuring tools & sensors > dividers
|
1609 |
+
1612,home improvement > tools > measuring tools & sensors > electrical testing tools
|
1610 |
+
1613,home improvement > tools > measuring tools & sensors > flow meters & controllers
|
1611 |
+
1614,home improvement > tools > measuring tools & sensors > gas detectors
|
1612 |
+
1615,home improvement > tools > measuring tools & sensors > gauges
|
1613 |
+
1616,home improvement > tools > measuring tools & sensors > geiger counters
|
1614 |
+
1617,home improvement > tools > measuring tools & sensors > hygrometers
|
1615 |
+
1618,home improvement > tools > measuring tools & sensors > infrared thermometers
|
1616 |
+
1619,home improvement > tools > measuring tools & sensors > knife guides
|
1617 |
+
1620,home improvement > tools > measuring tools & sensors > levels
|
1618 |
+
1621,home improvement > tools > measuring tools & sensors > measuring scales
|
1619 |
+
1622,home improvement > tools > measuring tools & sensors > measuring wheels
|
1620 |
+
1623,home improvement > tools > measuring tools & sensors > moisture meters
|
1621 |
+
1624,home improvement > tools > measuring tools & sensors > multimeters
|
1622 |
+
1625,home improvement > tools > measuring tools & sensors > probes & finders
|
1623 |
+
1626,home improvement > tools > measuring tools & sensors > protractors
|
1624 |
+
1627,home improvement > tools > measuring tools & sensors > rebar locators
|
1625 |
+
1628,home improvement > tools > measuring tools & sensors > rulers & squares
|
1626 |
+
1629,home improvement > tools > measuring tools & sensors > seismometer
|
1627 |
+
1630,home improvement > tools > measuring tools & sensors > sound meters
|
1628 |
+
1631,home improvement > tools > measuring tools & sensors > stud finders
|
1629 |
+
1632,home improvement > tools > measuring tools & sensors > tape measures
|
1630 |
+
1633,home improvement > tools > measuring tools & sensors > theodolites
|
1631 |
+
1634,home improvement > tools > measuring tools & sensors > thermal imaging cameras
|
1632 |
+
1635,home improvement > tools > measuring tools & sensors > thermocouples & thermopiles
|
1633 |
+
1636,home improvement > tools > measuring tools & sensors > transducers
|
1634 |
+
1637,home improvement > tools > measuring tools & sensors > uv light meters
|
1635 |
+
1638,home improvement > tools > measuring tools & sensors > vibration meters
|
1636 |
+
1639,home improvement > tools > measuring tools & sensors > weather forecasters & stations
|
1637 |
+
1640,home improvement > tools > measuring tools & sensors > ph meters
|
1638 |
+
1641,home improvement > tools > miscellaneous tools > anvils
|
1639 |
+
1642,home improvement > tools > miscellaneous tools > blowtorches
|
1640 |
+
1643,home improvement > tools > miscellaneous tools > compactors
|
1641 |
+
1644,home improvement > tools > miscellaneous tools > concrete brooms
|
1642 |
+
1645,home improvement > tools > miscellaneous tools > deburrers
|
1643 |
+
1646,home improvement > tools > miscellaneous tools > dollies & hand trucks
|
1644 |
+
1647,home improvement > tools > miscellaneous tools > flashlights
|
1645 |
+
1648,home improvement > tools > miscellaneous tools > handheld power mixers
|
1646 |
+
1649,home improvement > tools > miscellaneous tools > inspection mirrors
|
1647 |
+
1650,home improvement > tools > miscellaneous tools > light bulb changers
|
1648 |
+
1651,home improvement > tools > miscellaneous tools > magnetic sweepers
|
1649 |
+
1652,home improvement > building supplies & hardware > building plans & blueprints
|
1650 |
+
1653,home improvement > building supplies & hardware > cabinets & cabinet hardware
|
1651 |
+
1654,home improvement > building supplies & hardware > cabinets & cabinet hardware > cabinet & drawer locks
|
1652 |
+
1655,home improvement > building supplies & hardware > cabinets & cabinet hardware > cabinet backplates
|
1653 |
+
1656,home improvement > building supplies & hardware > cabinets & cabinet hardware > cabinet catches
|
1654 |
+
1657,home improvement > building supplies & hardware > cabinets & cabinet hardware > cabinet hinges
|
1655 |
+
1658,home improvement > building supplies & hardware > cabinets & cabinet hardware > cabinet keyhole covers & escutcheons
|
1656 |
+
1659,home improvement > building supplies & hardware > cabinets & cabinet hardware > cabinet knobs & pulls
|
1657 |
+
1660,home improvement > building supplies & hardware > cabinets & cabinet hardware > cabinets
|
1658 |
+
1661,home improvement > building supplies & hardware > cabinets & cabinet hardware > drawer slides
|
1659 |
+
1662,"home improvement > building supplies & hardware > chain, wire & rope"
|
1660 |
+
1663,"home improvement > building supplies & hardware > chain, wire & rope > bungee cords"
|
1661 |
+
1664,"home improvement > building supplies & hardware > chain, wire & rope > chains"
|
1662 |
+
1665,"home improvement > building supplies & hardware > chain, wire & rope > ropes"
|
1663 |
+
1666,"home improvement > building supplies & hardware > chain, wire & rope > tie downs & straps"
|
1664 |
+
1667,"home improvement > building supplies & hardware > chain, wire & rope > twine"
|
1665 |
+
1668,"home improvement > building supplies & hardware > chain, wire & rope > utility wire"
|
1666 |
+
1669,home improvement > building supplies & hardware > consumables > bricks & concrete blocks
|
1667 |
+
1670,"home improvement > building supplies & hardware > consumables > cement, mortar & concrete mixes"
|
1668 |
+
1671,home improvement > building supplies & hardware > consumables > chemicals
|
1669 |
+
1672,home improvement > building supplies & hardware > consumables > drywall
|
1670 |
+
1673,home improvement > building supplies & hardware > consumables > glass
|
1671 |
+
1674,home improvement > building supplies & hardware > consumables > glue & adhesives
|
1672 |
+
1675,jewelry & watches > jewelry > cremation & memorial jewelry
|
1673 |
+
1676,jewelry & watches > jewelry > engagement jewelry
|
1674 |
+
1677,jewelry & watches > jewelry > engagement jewelry > bridal jewelry
|
1675 |
+
1678,jewelry & watches > jewelry > engagement jewelry > engagement & wedding ring sets
|
1676 |
+
1679,jewelry & watches > jewelry > engagement jewelry > engagement rings
|
1677 |
+
1680,jewelry & watches > jewelry > engagement jewelry > wedding & anniversary bands
|
1678 |
+
1681,jewelry & watches > jewelry > loose beads
|
1679 |
+
1682,jewelry & watches > jewelry > loose gemstones
|
1680 |
+
1683,jewelry & watches > jewelry > men's jewelry
|
1681 |
+
1684,jewelry & watches > jewelry > men's jewelry > bolo ties
|
1682 |
+
1685,jewelry & watches > jewelry > men's jewelry > bracelets
|
1683 |
+
1686,jewelry & watches > jewelry > men's jewelry > cufflinks & button studs
|
1684 |
+
1687,jewelry & watches > jewelry > men's jewelry > earrings
|
1685 |
+
1688,jewelry & watches > jewelry > men's jewelry > jewelry sets
|
1686 |
+
1689,jewelry & watches > jewelry > men's jewelry > lapel pins & brooches
|
1687 |
+
1690,jewelry & watches > jewelry > men's jewelry > necklaces
|
1688 |
+
1691,jewelry & watches > jewelry > men's jewelry > rings
|
1689 |
+
1692,jewelry & watches > jewelry > men's jewelry > tie clips
|
1690 |
+
1693,jewelry & watches > watches > watch accessories > watch bands
|
1691 |
+
1694,jewelry & watches > watches > watch accessories > watch boxes & cases
|
1692 |
+
1695,jewelry & watches > watches > watch accessories > watch manuals & guides
|
1693 |
+
1696,jewelry & watches > watches > watch accessories > watch parts
|
1694 |
+
1697,jewelry & watches > watches > watch accessories > watch repair kits & tools
|
1695 |
+
1698,jewelry & watches > watches > watch accessories > watch winders
|
1696 |
+
1699,jewelry & watches > watches > watch parts & accessories
|
1697 |
+
1700,patio & garden > gardening supplies
|
1698 |
+
1701,patio & garden > gardening supplies > landscaping materials
|
1699 |
+
1702,patio & garden > gardening supplies > landscaping materials > edging & borders
|
1700 |
+
1703,patio & garden > gardening supplies > landscaping materials > landscape fabric
|
1701 |
+
1704,patio & garden > gardening supplies > landscaping materials > landscape rocks & pebbles
|
1702 |
+
1705,patio & garden > gardening supplies > landscaping materials > paving & decking
|
1703 |
+
1706,patio & garden > gardening supplies > landscaping materials > sod
|
1704 |
+
1707,patio & garden > gardening supplies > landscaping materials > synthetic grass
|
1705 |
+
1708,patio & garden > gardening supplies > snow removal
|
1706 |
+
1709,patio & garden > gardening supplies > snow removal > ice melt
|
1707 |
+
1710,patio & garden > gardening supplies > snow removal > snow shovels & ice scrapers
|
1708 |
+
1711,patio & garden > gardening supplies > weed & pest control
|
1709 |
+
1712,patio & garden > gardening supplies > weed & pest control > insect & grub control
|
1710 |
+
1713,patio & garden > gardening supplies > weed & pest control > insect & grub control > foggers
|
1711 |
+
1714,patio & garden > gardening supplies > weed & pest control > insect & grub control > insect repellent sprays
|
1712 |
+
1715,patio & garden > gardening supplies > weed & pest control > insect & grub control > insect traps & baits
|
1713 |
+
1716,patio & garden > gardening supplies > weed & pest control > insect & grub control > insect zappers
|
1714 |
+
1717,patio & garden > gardening supplies > weed & pest control > insect & grub control > insecticides
|
1715 |
+
1718,patio & garden > gardening supplies > weed & pest control > insect & grub control > swatters
|
1716 |
+
1719,patio & garden > gardening supplies > weed & pest control > protective netting/mesh
|
1717 |
+
1720,patio & garden > gardening supplies > weed & pest control > rodent & animal traps
|
1718 |
+
1721,patio & garden > gardening supplies > weed & pest control > rodenticides & baits
|
1719 |
+
1722,patio & garden > gardening supplies > weed & pest control > ultrasonic pest repellers
|
1720 |
+
1723,patio & garden > gardening supplies > weed & pest control > weed control
|
1721 |
+
1724,patio & garden > gardening supplies > weed & pest control > weed control > herbicides & fungicides
|
1722 |
+
1725,patio & garden > gardening supplies > weed & pest control > weed control > weed control fabric
|
1723 |
+
1726,patio & garden > gardening supplies > weed & pest control > weed control > weed preventers
|
1724 |
+
1727,patio & garden > gardening supplies > weed & pest control > weed control > weeders
|
1725 |
+
1728,patio & garden > outdoor furniture > hammocks
|
1726 |
+
1729,patio & garden > outdoor furniture > outdoor beds
|
1727 |
+
1730,patio & garden > outdoor furniture > outdoor blankets
|
1728 |
+
1731,"patio & garden > outdoor furniture > outdoor chairs, benches & swings"
|
1729 |
+
1732,patio & garden > outdoor furniture > outdoor cushions
|
1730 |
+
1733,patio & garden > outdoor furniture > outdoor furniture covers
|
1731 |
+
1734,patio & garden > outdoor furniture > outdoor furniture parts & accessories
|
1732 |
+
1735,patio & garden > outdoor furniture > outdoor furniture sets
|
1733 |
+
1736,patio & garden > outdoor furniture > outdoor heaters
|
1734 |
+
1737,patio & garden > outdoor furniture > outdoor ottomans
|
1735 |
+
1738,patio & garden > outdoor furniture > outdoor sofas
|
1736 |
+
1739,patio & garden > outdoor furniture > outdoor storage boxes
|
1737 |
+
1740,patio & garden > outdoor furniture > outdoor tables
|
1738 |
+
1741,patio & garden > outdoor lighting > garden & patio torches
|
1739 |
+
1742,patio & garden > outdoor lighting > landscape & walkway lights
|
1740 |
+
1743,patio & garden > outdoor lighting > outdoor decor candle lanterns
|
1741 |
+
1744,patio & garden > outdoor lighting > outdoor security & floodlights
|
1742 |
+
1745,patio & garden > outdoor lighting > outdoor string lights
|
1743 |
+
1746,patio & garden > outdoor lighting > outdoor wall & porch lights
|
1744 |
+
1747,patio & garden > outdoor power equipment > chainsaws
|
1745 |
+
1748,"patio & garden > outdoor power equipment > chippers, shredders & mulchers"
|
1746 |
+
1749,patio & garden > outdoor power equipment > edgers
|
1747 |
+
1750,patio & garden > outdoor power equipment > grass shears
|
1748 |
+
1751,patio & garden > outdoor power equipment > hedge & weed trimmers
|
1749 |
+
1752,patio & garden > outdoor power equipment > hole diggers & augers
|
1750 |
+
1753,patio & garden > outdoor power equipment > lawn mower parts & accessories
|
1751 |
+
1754,patio & garden > outdoor power equipment > lawn mowers
|
1752 |
+
1755,patio & garden > outdoor power equipment > leaf blowers & vacuums
|
1753 |
+
1756,patio & garden > outdoor power equipment > log splitters
|
1754 |
+
1757,patio & garden > outdoor power equipment > outdoor power equipment batteries
|
1755 |
+
1758,patio & garden > outdoor power equipment > outdoor power equipment sets
|
1756 |
+
1759,patio & garden > outdoor power equipment > pressure washers
|
1757 |
+
1760,patio & garden > outdoor power equipment > snow blowers
|
1758 |
+
1761,patio & garden > outdoor power equipment > sweepers
|
1759 |
+
1762,patio & garden > outdoor power equipment > tillers
|
1760 |
+
1763,"patio & garden > plant care, soil & accessories > bark mulch & wood chips"
|
1761 |
+
1764,"patio & garden > plant care, soil & accessories > fertilizers"
|
1762 |
+
1765,"patio & garden > plant care, soil & accessories > frost protection"
|
1763 |
+
1766,"patio & garden > plant care, soil & accessories > garden sprayers"
|
1764 |
+
1767,"patio & garden > plant care, soil & accessories > moisture & ph meters"
|
1765 |
+
1768,"patio & garden > plant care, soil & accessories > plant hooks & hangers"
|
1766 |
+
1769,"patio & garden > plant care, soil & accessories > plant labels"
|
1767 |
+
1770,"patio & garden > plant care, soil & accessories > plant stands"
|
1768 |
+
1771,"patio & garden > plant care, soil & accessories > plant ties & supports"
|
1769 |
+
1772,"patio & garden > plant care, soil & accessories > planter liners"
|
1770 |
+
1773,"patio & garden > plant care, soil & accessories > pots & planters"
|
1771 |
+
1774,"patio & garden > plant care, soil & accessories > seed starting pots & trays"
|
1772 |
+
1775,"patio & garden > plant care, soil & accessories > seeders & spreaders"
|
1773 |
+
1776,"patio & garden > plant care, soil & accessories > soil & soil amendments"
|
1774 |
+
1777,"patio & garden > plants, seeds & bulbs > moss"
|
1775 |
+
1778,"patio & garden > plants, seeds & bulbs > mushrooms, spawns & kits"
|
1776 |
+
1779,"patio & garden > plants, seeds & bulbs > plant growing kits"
|
1777 |
+
1780,"patio & garden > plants, seeds & bulbs > plants & seedlings"
|
1778 |
+
1781,"patio & garden > plants, seeds & bulbs > seeds & bulbs"
|
1779 |
+
1782,patio & garden > ponds & water features > outdoor fountains
|
1780 |
+
1783,patio & garden > ponds & water features > pond & fountain pumps
|
1781 |
+
1784,patio & garden > ponds & water features > pond de-icers
|
1782 |
+
1785,patio & garden > ponds & water features > pond decor
|
1783 |
+
1786,patio & garden > ponds & water features > pond filter media
|
1784 |
+
1787,patio & garden > ponds & water features > pond filtration equipment
|
1785 |
+
1788,patio & garden > ponds & water features > pond lights
|
1786 |
+
1789,patio & garden > ponds & water features > pond liners
|
1787 |
+
1790,patio & garden > ponds & water features > pond vacuums
|
1788 |
+
1791,patio & garden > ponds & water features > pond water testing & treatments
|
1789 |
+
1792,patio & garden > ponds & water features > ponds
|
1790 |
+
1793,patio & garden > ponds & water features > waterfall boxes & spillways
|
1791 |
+
1794,patio & garden > pools & spas > pool chemicals & testing
|
1792 |
+
1795,patio & garden > pools & spas > pool chemicals & testing > pool & spa thermometers
|
1793 |
+
1796,patio & garden > pools & spas > pool chemicals & testing > pool chemicals & clarifiers
|
1794 |
+
1797,patio & garden > pools & spas > pool chemicals & testing > pool water testing & kits
|
1795 |
+
1798,patio & garden > pools & spas > pool cleaning tools
|
1796 |
+
1799,patio & garden > pools & spas > pool cleaning tools > handheld pool brushes & nets
|
1797 |
+
1800,patio & garden > pools & spas > pool cleaning tools > pool cleaners & vacuums
|
1798 |
+
1801,patio & garden > pools & spas > pool cleaning tools > pool hoses
|
1799 |
+
1802,patio & garden > pools & spas > pool equipment & parts
|
1800 |
+
1803,patio & garden > pools & spas > pool equipment & parts > pool & spa lights
|
1801 |
+
1804,patio & garden > pools & spas > pool equipment & parts > pool chlorine generators
|
1802 |
+
1805,patio & garden > pools & spas > pool equipment & parts > pool covers & rollers
|
1803 |
+
1806,patio & garden > pools & spas > pool equipment & parts > pool fences
|
1804 |
+
1807,patio & garden > pools & spas > pool equipment & parts > pool filters
|
1805 |
+
1808,patio & garden > pools & spas > pool equipment & parts > pool heaters & solar panels
|
1806 |
+
1809,patio & garden > pools & spas > pool equipment & parts > pool ladders & steps
|
1807 |
+
1810,patio & garden > pools & spas > pool equipment & parts > pool liners
|
1808 |
+
1811,patio & garden > pools & spas > pool equipment & parts > pool pumps
|
1809 |
+
1812,patio & garden > pools & spas > pool equipment & parts > pool skimmer systems & baskets
|
1810 |
+
1813,patio & garden > pools & spas > pool equipment & parts > pool slides & diving boards
|
1811 |
+
1814,patio & garden > pools & spas > pool floats & rafts
|
1812 |
+
1815,patio & garden > pools & spas > pool toys
|
1813 |
+
1816,patio & garden > pools & spas > sauna heaters
|
1814 |
+
1817,patio & garden > pools & spas > saunas
|
1815 |
+
1818,patio & garden > pools & spas > spa & hot tub covers
|
1816 |
+
1819,patio & garden > pools & spas > spas & hot tubs
|
1817 |
+
1820,patio & garden > pools & spas > swimming pools
|
1818 |
+
1821,patio & garden > structures
|
1819 |
+
1822,patio & garden > structures > arbors & arches
|
1820 |
+
1823,patio & garden > structures > awnings & canopies
|
1821 |
+
1824,patio & garden > structures > bridges
|
1822 |
+
1825,patio & garden > structures > gazebos
|
1823 |
+
1826,patio & garden > structures > greenhouses
|
1824 |
+
1827,patio & garden > structures > marquees & tents
|
1825 |
+
1828,patio & garden > structures > pergolas
|
1826 |
+
1829,patio & garden > structures > shade sails
|
1827 |
+
1830,patio & garden > structures > storage sheds
|
1828 |
+
1831,patio & garden > structures > umbrellas
|
1829 |
+
1832,"patio & garden > watering equipment > connectors, clamps & fittings"
|
1830 |
+
1833,patio & garden > watering equipment > drip irrigation
|
1831 |
+
1834,patio & garden > watering equipment > globes & spikes
|
1832 |
+
1835,patio & garden > watering equipment > hose guides
|
1833 |
+
1836,patio & garden > watering equipment > hose nozzles & wands
|
1834 |
+
1837,patio & garden > watering equipment > hose reels & storage
|
1835 |
+
1838,patio & garden > watering equipment > hoses
|
1836 |
+
1839,patio & garden > watering equipment > lawn sprinklers
|
1837 |
+
1840,patio & garden > watering equipment > spigots
|
1838 |
+
1841,patio & garden > watering equipment > valves
|
1839 |
+
1842,patio & garden > watering equipment > water pumps & pressure tanks
|
1840 |
+
1843,patio & garden > watering equipment > water storage & rain barrels
|
1841 |
+
1844,patio & garden > watering equipment > watering cans
|
1842 |
+
1845,patio & garden > watering equipment > watering timers & controllers
|
1843 |
+
1846,patio & garden > barbecues & outdoor cooking > bbq & grill replacement parts
|
1844 |
+
1847,patio & garden > barbecues & outdoor cooking > bbq tools & accessories
|
1845 |
+
1848,patio & garden > barbecues & outdoor cooking > barbecue & grill covers
|
1846 |
+
1849,"patio & garden > barbecues & outdoor cooking > barbecues, grills & smokers"
|
1847 |
+
1850,patio & garden > barbecues & outdoor cooking > fire pits & chimineas
|
1848 |
+
1851,patio & garden > bird & wildlife accessories
|
1849 |
+
1852,patio & garden > bird & wildlife accessories > bird feeders
|
1850 |
+
1853,patio & garden > bird & wildlife accessories > birdbaths
|
1851 |
+
1854,patio & garden > bird & wildlife accessories > birdhouses
|
1852 |
+
1855,patio & garden > bird & wildlife accessories > butterfly feeders
|
1853 |
+
1856,patio & garden > bird & wildlife accessories > squirrel feeders
|
1854 |
+
1857,patio & garden > bird & wildlife accessories > wildlife houses
|
1855 |
+
1858,patio & garden > fencing
|
1856 |
+
1859,patio & garden > fencing > chain link fencing
|
1857 |
+
1860,patio & garden > fencing > fence panels
|
1858 |
+
1861,patio & garden > fencing > fence pickets
|
1859 |
+
1862,patio & garden > fencing > fence posts
|
1860 |
+
1863,patio & garden > fencing > gates
|
1861 |
+
1864,patio & garden > fencing > hardware cloth & metal mesh
|
1862 |
+
1865,"patio & garden > fencing > post bases, supports & spikes"
|
1863 |
+
1866,patio & garden > fencing > post caps & drivers
|
1864 |
+
1867,patio & garden > fencing > privacy screens & windscreens
|
1865 |
+
1868,patio & garden > fencing > railings
|
1866 |
+
1869,patio & garden > fencing > trellises
|
1867 |
+
1870,patio & garden > garden decor > flags & flag poles
|
1868 |
+
1871,patio & garden > garden decor > outdoor thermometers
|
1869 |
+
1872,patio & garden > garden decor > plaques & signs
|
1870 |
+
1873,patio & garden > garden decor > rain gauges
|
1871 |
+
1874,patio & garden > garden decor > statues & lawn ornaments
|
1872 |
+
1875,patio & garden > garden decor > stepping stones
|
1873 |
+
1876,patio & garden > garden decor > sundials
|
1874 |
+
1877,patio & garden > garden decor > weathervanes
|
1875 |
+
1878,patio & garden > garden decor > wind chimes
|
1876 |
+
1879,patio & garden > garden decor > windmills & spinners
|
1877 |
+
1880,patio & garden > garden hand tools & equipment > axes & hatchets
|
1878 |
+
1881,patio & garden > garden hand tools & equipment > bonsai tools
|
1879 |
+
1882,patio & garden > garden hand tools & equipment > forks
|
1880 |
+
1883,patio & garden > garden hand tools & equipment > fruit pickers
|
1881 |
+
1884,patio & garden > garden hand tools & equipment > garden tool racks
|
1882 |
+
1885,patio & garden > garden hand tools & equipment > garden tool sets
|
1883 |
+
1886,patio & garden > garden hand tools & equipment > hedge & grass shears
|
1884 |
+
1887,patio & garden > garden hand tools & equipment > hoes & cultivators
|
1885 |
+
1888,patio & garden > garden hand tools & equipment > lawn aerators
|
1886 |
+
1889,patio & garden > garden hand tools & equipment > lawn rollers
|
1887 |
+
1890,patio & garden > garden hand tools & equipment > loppers
|
1888 |
+
1891,patio & garden > garden hand tools & equipment > manual edgers
|
1889 |
+
1892,patio & garden > garden hand tools & equipment > mattocks & picks
|
1890 |
+
1893,patio & garden > garden hand tools & equipment > parts & accessories
|
1891 |
+
1894,patio & garden > garden hand tools & equipment > post hole diggers & augers
|
1892 |
+
1895,patio & garden > garden hand tools & equipment > pruning shears & snips
|
1893 |
+
1896,patio & garden > garden hand tools & equipment > rakes
|
1894 |
+
1897,patio & garden > garden hand tools & equipment > saws
|
1895 |
+
1898,patio & garden > garden hand tools & equipment > scythes & sickles
|
1896 |
+
1899,patio & garden > garden hand tools & equipment > shovels
|
1897 |
+
1900,patio & garden > garden hand tools & equipment > trowels
|
1898 |
+
1901,"patio & garden > garden hand tools & equipment > wheelbarrows, carts & wagons"
|
1899 |
+
1902,patio & garden > gardening supplies > composting & yard waste
|
1900 |
+
1903,patio & garden > gardening supplies > composting & yard waste > compost
|
1901 |
+
1904,patio & garden > gardening supplies > composting & yard waste > compost accelerators
|
1902 |
+
1905,patio & garden > gardening supplies > composting & yard waste > compost aerators
|
1903 |
+
1906,patio & garden > gardening supplies > composting & yard waste > compost waste bags
|
1904 |
+
1907,patio & garden > gardening supplies > composting & yard waste > compost worms
|
1905 |
+
1908,patio & garden > gardening supplies > composting & yard waste > composters
|
1906 |
+
1909,patio & garden > gardening supplies > garden clothing & gear
|
1907 |
+
1910,"patio & garden > gardening supplies > garden clothing & gear > garden kneelers, pads & seats"
|
1908 |
+
1911,patio & garden > gardening supplies > garden clothing & gear > gardening boots & shoes
|
1909 |
+
1912,patio & garden > gardening supplies > garden clothing & gear > gardening gloves
|
1910 |
+
1913,"patio & garden > gardening supplies > garden clothing & gear > tool carriers, aprons & belts"
|
1911 |
+
1914,patio & garden > gardening supplies > hydroponics & seed starting
|
1912 |
+
1915,patio & garden > gardening supplies > hydroponics & seed starting > environmental controls
|
1913 |
+
1916,patio & garden > gardening supplies > hydroponics & seed starting > grow light ballasts
|
1914 |
+
1917,patio & garden > gardening supplies > hydroponics & seed starting > grow light bulbs
|
1915 |
+
1918,patio & garden > gardening supplies > hydroponics & seed starting > grow light kits
|
1916 |
+
1919,patio & garden > gardening supplies > hydroponics & seed starting > grow light parts & accessories
|
1917 |
+
1920,patio & garden > gardening supplies > hydroponics & seed starting > growing media
|
1918 |
+
1921,patio & garden > gardening supplies > hydroponics & seed starting > hydroponic parts & accessories
|
1919 |
+
1922,patio & garden > gardening supplies > hydroponics & seed starting > hydroponic systems
|
1920 |
+
1923,"patio & garden > gardening supplies > hydroponics & seed starting > nutrients, ph & supplements"
|
1921 |
+
1924,"patio & garden > gardening supplies > hydroponics & seed starting > tents, tarps & shelves"
|
1922 |
+
1925,"patio & garden > gardening supplies > landscaping materials > anchor pins, staples & stakes"
|
1923 |
+
1926,sporting goods > emergency preparedness
|
1924 |
+
1927,sporting goods > emergency preparedness > earthquake alarms
|
1925 |
+
1928,sporting goods > emergency preparedness > emergency blankets
|
1926 |
+
1929,sporting goods > emergency preparedness > emergency food kits
|
1927 |
+
1930,sporting goods > emergency preparedness > emergency tools & kits
|
1928 |
+
1931,sporting goods > sports equipment > broomball
|
1929 |
+
1932,sporting goods > sports equipment > broomball > broomball brooms
|
1930 |
+
1933,sporting goods > sports equipment > broomball > broomballs
|
1931 |
+
1934,sporting goods > sports equipment > broomball > clothing & shoes
|
1932 |
+
1935,sporting goods > sports equipment > broomball > protective gear
|
1933 |
+
1936,sporting goods > sports equipment > broomball > protective gear > chest protectors
|
1934 |
+
1937,sporting goods > sports equipment > broomball > protective gear > gloves
|
1935 |
+
1938,sporting goods > sports equipment > broomball > protective gear > goalie masks
|
1936 |
+
1939,sporting goods > sports equipment > broomball > protective gear > helmets
|
1937 |
+
1940,sporting goods > sports equipment > broomball > protective gear > knee & elbow guards
|
1938 |
+
1941,sporting goods > sports equipment > broomball > protective gear > shin guards
|
1939 |
+
1942,sporting goods > sports equipment > cheerleading
|
1940 |
+
1943,sporting goods > sports equipment > cheerleading > clothing & accessories
|
1941 |
+
1944,sporting goods > sports equipment > cheerleading > clothing & accessories > hair accessories
|
1942 |
+
1945,sporting goods > sports equipment > cheerleading > clothing & accessories > outfits
|
1943 |
+
1946,sporting goods > sports equipment > cheerleading > clothing & accessories > pom poms
|
1944 |
+
1947,sporting goods > sports equipment > cheerleading > clothing & accessories > shoes
|
1945 |
+
1948,sporting goods > sports equipment > cheerleading > training equipment
|
1946 |
+
1949,sporting goods > sports equipment > cheerleading > training equipment > floor systems & tracks
|
1947 |
+
1950,sporting goods > sports equipment > cheerleading > training equipment > landing mats
|
1948 |
+
1951,sporting goods > sports equipment > cheerleading > training equipment > safety pits
|
1949 |
+
1952,sporting goods > sports equipment > cheerleading > training equipment > spring boards & trampolines
|
1950 |
+
1953,sporting goods > sports equipment > cheerleading > training equipment > training shapes
|
1951 |
+
1954,sporting goods > sports equipment > coaching & referee gear
|
1952 |
+
1955,sporting goods > sports equipment > coaching & referee gear > captains armbands
|
1953 |
+
1956,sporting goods > sports equipment > coaching & referee gear > flip coins & discs
|
1954 |
+
1957,sporting goods > sports equipment > coaching & referee gear > linesman flags & boundary markers
|
1955 |
+
1958,sporting goods > sports equipment > coaching & referee gear > megaphones
|
1956 |
+
1959,sporting goods > sports equipment > coaching & referee gear > penalty cards & flags
|
1957 |
+
1960,sporting goods > sports equipment > coaching & referee gear > referee stands & chairs
|
1958 |
+
1961,sporting goods > sports equipment > coaching & referee gear > referee wallets
|
1959 |
+
1962,sporting goods > sports equipment > coaching & referee gear > score boards & cards
|
1960 |
+
1963,sporting goods > sports equipment > coaching & referee gear > uniforms
|
1961 |
+
1964,sporting goods > sports equipment > coaching & referee gear > whistles
|
1962 |
+
1965,sporting goods > sports equipment > fencing
|
1963 |
+
1966,sporting goods > sports equipment > fencing > clothing & shoes
|
1964 |
+
1967,sporting goods > sports equipment > fencing > fencing weapons
|
1965 |
+
1968,sporting goods > sports equipment > fencing > protective gear
|
1966 |
+
1969,sporting goods > sports equipment > fencing > protective gear > chest protectors
|
1967 |
+
1970,sporting goods > sports equipment > fencing > protective gear > gloves & cuffs
|
1968 |
+
1971,sporting goods > sports equipment > fencing > protective gear > jackets & lames
|
1969 |
+
1972,sporting goods > sports equipment > fencing > protective gear > masks
|
1970 |
+
1973,sporting goods > sports equipment > fencing > protective gear > uniforms
|
1971 |
+
1974,sporting goods > sports equipment > general purpose equipment
|
1972 |
+
1975,sporting goods > sports equipment > general purpose equipment > athletic cups
|
1973 |
+
1976,sporting goods > sports equipment > general purpose equipment > ball carrying carts
|
1974 |
+
1977,sporting goods > sports equipment > general purpose equipment > ball pumps
|
1975 |
+
1978,sporting goods > sports equipment > general purpose equipment > elevation training masks
|
1976 |
+
1979,sporting goods > sports equipment > general purpose equipment > exercise mat storage racks
|
1977 |
+
1980,sporting goods > sports equipment > general purpose equipment > fitness & activity monitors
|
1978 |
+
1981,sporting goods > sports equipment > general purpose equipment > grip spray & chalk
|
1979 |
+
1982,sporting goods > sports equipment > general purpose equipment > gym mats
|
1980 |
+
1983,sporting goods > sports equipment > general purpose equipment > mouth guards
|
1981 |
+
1984,sporting goods > sports equipment > general purpose equipment > reflective gear
|
1982 |
+
1985,"sporting goods > sports equipment > general purpose equipment > speed & agility ladders, hurdles & cones"
|
1983 |
+
1986,sporting goods > sports equipment > general purpose equipment > stadium seats & cushions
|
1984 |
+
1987,sporting goods > sports equipment > general purpose equipment > stopwatches
|
1985 |
+
1988,sporting goods > sports equipment > gymnastics
|
1986 |
+
1989,sporting goods > sports equipment > gymnastics > bars & balance beams
|
1987 |
+
1990,sporting goods > sports equipment > gymnastics > floor systems
|
1988 |
+
1991,sporting goods > sports equipment > gymnastics > gymnastics bars
|
1989 |
+
1992,sporting goods > sports equipment > gymnastics > gymnastics grips
|
1990 |
+
1993,sporting goods > sports equipment > gymnastics > gymnastics rings
|
1991 |
+
1994,sporting goods > sports equipment > gymnastics > springboards
|
1992 |
+
1995,sporting goods > sports equipment > gymnastics > vaulting & pommel horses
|
1993 |
+
1996,sporting goods > sports equipment > ice skating
|
1994 |
+
1997,sporting goods > sports equipment > ice skating > blade guards
|
1995 |
+
1998,sporting goods > sports equipment > ice skating > clothing
|
1996 |
+
1999,sporting goods > sports equipment > ice skating > figure skating boots
|
1997 |
+
2000,sporting goods > sports equipment > ice skating > ice skate blades
|
1998 |
+
2001,sporting goods > sports equipment > ice skating > ice skate sharpeners
|
1999 |
+
2002,sporting goods > sports equipment > ice skating > ice skates
|
2000 |
+
2003,sporting goods > sports equipment > ice skating > lace tighteners
|
2001 |
+
2004,sporting goods > sports equipment > ice skating > protective gear
|
2002 |
+
2005,sporting goods > sports equipment > ice skating > protective gear > chest protectors
|
2003 |
+
2006,sporting goods > sports equipment > ice skating > protective gear > hand wraps
|
2004 |
+
2007,sporting goods > sports equipment > ice skating > protective gear > headgear
|
2005 |
+
2008,sporting goods > sports equipment > ice skating > protective gear > knee & elbow guards
|
2006 |
+
2009,sporting goods > sports equipment > rugby > jerseys & cleats
|
2007 |
+
2010,sporting goods > sports equipment > rugby > protective gear
|
2008 |
+
2011,sporting goods > sports equipment > rugby > protective gear > rugby gloves
|
2009 |
+
2012,sporting goods > sports equipment > rugby > protective gear > rugby headgear
|
2010 |
+
2013,sporting goods > sports equipment > rugby > protective gear > shoulder pads
|
2011 |
+
2014,sporting goods > sports equipment > rugby > protective gear > tackle suits
|
2012 |
+
2015,sporting goods > sports equipment > rugby > rugby balls
|
2013 |
+
2016,sporting goods > sports equipment > rugby > rugby posts
|
2014 |
+
2017,sporting goods > sports equipment > rugby > training aids
|
2015 |
+
2018,sporting goods > sports equipment > soccer > jerseys & cleats
|
2016 |
+
2019,sporting goods > sports equipment > soccer > protective gear
|
2017 |
+
2020,sporting goods > sports equipment > soccer > protective gear > goalkeeper bottoms
|
2018 |
+
2021,sporting goods > sports equipment > soccer > protective gear > goalkeeper tops
|
2019 |
+
2022,sporting goods > sports equipment > soccer > protective gear > headguards
|
2020 |
+
2023,sporting goods > sports equipment > soccer > protective gear > shin guards
|
2021 |
+
2024,sporting goods > sports equipment > soccer > protective gear > soccer gloves
|
2022 |
+
2025,sporting goods > sports equipment > soccer > soccer balls
|
2023 |
+
2026,sporting goods > sports equipment > soccer > soccer goals & nets
|
2024 |
+
2027,sporting goods > sports equipment > soccer > training equipment
|
2025 |
+
2028,sporting goods > sports equipment > tennis & racquet sports > badminton
|
2026 |
+
2029,sporting goods > sports equipment > tennis & racquet sports > badminton > badminton nets
|
2027 |
+
2030,sporting goods > sports equipment > tennis & racquet sports > badminton > badminton racquets
|
2028 |
+
2031,sporting goods > sports equipment > tennis & racquet sports > badminton > shuttlecocks
|
2029 |
+
2032,sporting goods > sports equipment > tennis & racquet sports > ball & racquet accessories
|
2030 |
+
2033,sporting goods > sports equipment > tennis & racquet sports > ball & racquet accessories > racquet accessories
|
2031 |
+
2034,sporting goods > sports equipment > tennis & racquet sports > ball & racquet accessories > racquet stringing machines
|
2032 |
+
2035,sporting goods > sports equipment > tennis & racquet sports > ball & racquet accessories > tennis ball hoppers & carts
|
2033 |
+
2036,sporting goods > sports equipment > tennis & racquet sports > ball & racquet accessories > tennis ball machines
|
2034 |
+
2037,sporting goods > sports equipment > tennis & racquet sports > ball & racquet accessories > tennis ball savers
|
2035 |
+
2038,sporting goods > sports equipment > tennis & racquet sports > clothing & shoes
|
2036 |
+
2039,sporting goods > sports equipment > tennis & racquet sports > pickleball & paddle tennis equipment
|
2037 |
+
2040,sporting goods > sports equipment > tennis & racquet sports > racquetball & squash
|
2038 |
+
2041,sporting goods > sports equipment > tennis & racquet sports > racquetball & squash > racquetball & squash balls
|
2039 |
+
2042,sporting goods > sports equipment > tennis & racquet sports > racquetball & squash > racquetball & squash gloves
|
2040 |
+
2043,sporting goods > sports equipment > tennis & racquet sports > racquetball & squash > racquetball & squash goggles
|
2041 |
+
2044,sporting goods > sports equipment > tennis & racquet sports > racquetball & squash > racquetball & squash racquets
|
2042 |
+
2045,sporting goods > sports equipment > tennis & racquet sports > tennis
|
2043 |
+
2046,sporting goods > sports equipment > tennis & racquet sports > tennis > tennis bags
|
2044 |
+
2047,sporting goods > sports equipment > tennis & racquet sports > tennis > tennis balls
|
2045 |
+
2048,sporting goods > sports equipment > tennis & racquet sports > tennis > tennis nets
|
2046 |
+
2049,sporting goods > sports equipment > tennis & racquet sports > tennis > tennis racquets
|
2047 |
+
2050,sporting goods > sports equipment > track & field > discus
|
2048 |
+
2051,sporting goods > sports equipment > track & field > high jump crossbars
|
2049 |
+
2052,sporting goods > sports equipment > track & field > javelins
|
2050 |
+
2053,sporting goods > sports equipment > track & field > shot puts
|
2051 |
+
2054,sporting goods > sports equipment > track & field > throwing hammers
|
2052 |
+
2055,sporting goods > sports equipment > track & field > track & field accessories
|
2053 |
+
2056,sporting goods > sports equipment > track & field > track & field pits
|
2054 |
+
2057,sporting goods > sports equipment > track & field > track hurdles
|
2055 |
+
2058,sporting goods > sports equipment > track & field > track starting blocks
|
2056 |
+
2059,sporting goods > sports equipment > track & field > vaulting poles
|
2057 |
+
2060,sporting goods > sports equipment > volleyball > protective gear
|
2058 |
+
2061,sporting goods > sports equipment > volleyball > protective gear > braces & supports
|
2059 |
+
2062,sporting goods > sports equipment > volleyball > protective gear > knee pads
|
2060 |
+
2063,sporting goods > sports equipment > volleyball > volleyball accessories
|
2061 |
+
2064,sporting goods > sports equipment > volleyball > volleyball accessories > carts & hammocks
|
2062 |
+
2065,sporting goods > sports equipment > volleyball > volleyball accessories > training equipment
|
2063 |
+
2066,sporting goods > sports equipment > volleyball > volleyball accessories > volleyball bags
|
2064 |
+
2067,sporting goods > sports equipment > volleyball > volleyball nets & poles
|
2065 |
+
2068,sporting goods > sports equipment > volleyball > volleyballs
|
2066 |
+
2069,sporting goods > sports equipment > wrestling
|
2067 |
+
2070,sporting goods > sports equipment > wrestling > clothing & shoes
|
2068 |
+
2071,sporting goods > sports equipment > wrestling > protective gear
|
2069 |
+
2072,sporting goods > sports equipment > wrestling > protective gear > headgear
|
2070 |
+
2073,sporting goods > sports equipment > wrestling > protective gear > knee pads
|
2071 |
+
2074,sporting goods > sports equipment > wrestling > wrestling mats
|
2072 |
+
2075,sporting goods > outdoor recreation > hunting & shooting
|
2073 |
+
2076,sporting goods > outdoor recreation > hunting & shooting > hunting accessories
|
2074 |
+
2077,sporting goods > outdoor recreation > hunting & shooting > hunting accessories > wildlife attractants
|
2075 |
+
2078,sporting goods > outdoor recreation > hunting & shooting > hunting accessories > wildlife attractants > game calls
|
2076 |
+
2079,sporting goods > outdoor recreation > hunting & shooting > hunting accessories > wildlife attractants > game feeders
|
2077 |
+
2080,"sporting goods > outdoor recreation > hunting & shooting > hunting accessories > wildlife attractants > hunting bait, feed & minerals"
|
2078 |
+
2081,sporting goods > outdoor recreation > hunting & shooting > hunting accessories > wildlife attractants > hunting decoys
|
2079 |
+
2082,sporting goods > outdoor recreation > hunting & shooting > hunting clothing
|
2080 |
+
2083,sporting goods > outdoor recreation > hunting & shooting > hunting clothing > ghillie suits
|
2081 |
+
2084,sporting goods > outdoor recreation > hunting & shooting > hunting clothing > hunting gloves
|
2082 |
+
2085,sporting goods > outdoor recreation > hunting & shooting > hunting clothing > hunting jackets
|
2083 |
+
2086,sporting goods > outdoor recreation > hunting & shooting > hunting clothing > hunting vests
|
2084 |
+
2087,sporting goods > outdoor recreation > hunting & shooting > hunting clothing > hunting waders
|
2085 |
+
2088,sporting goods > outdoor recreation > hunting & shooting > shooting accessories
|
2086 |
+
2089,sporting goods > outdoor recreation > hunting & shooting > shooting accessories > clay pigeon throwers
|
2087 |
+
2090,sporting goods > outdoor recreation > hunting & shooting > shooting accessories > clay pigeons
|
2088 |
+
2091,sporting goods > outdoor recreation > hunting & shooting > shooting accessories > gun coatings & wraps
|
2089 |
+
2092,sporting goods > outdoor recreation > hunting & shooting > shooting accessories > shooting glasses
|
2090 |
+
2093,sporting goods > outdoor recreation > hunting & shooting > shooting accessories > shooting rests
|
2091 |
+
2094,sporting goods > outdoor recreation > hunting & shooting > shooting accessories > shooting sticks & bipods
|
2092 |
+
2095,sporting goods > outdoor recreation > hunting & shooting > shooting accessories > shooting targets
|
2093 |
+
2096,sporting goods > outdoor recreation > hunting & shooting > tactical gear
|
2094 |
+
2097,sporting goods > outdoor recreation > hunting & shooting > tactical gear > body armor
|
2095 |
+
2098,sporting goods > outdoor recreation > hunting & shooting > tactical gear > tactical bags
|
2096 |
+
2099,sporting goods > outdoor recreation > hunting & shooting > tactical gear > tactical gloves
|
2097 |
+
2100,sporting goods > outdoor recreation > hunting & shooting > tactical gear > tactical leg rigs
|
2098 |
+
2101,sporting goods > outdoor recreation > hunting & shooting > tactical gear > tactical pants
|
2099 |
+
2102,sporting goods > outdoor recreation > hunting & shooting > tactical gear > tactical shoes
|
2100 |
+
2103,sporting goods > outdoor recreation > hunting & shooting > tactical gear > tactical slings
|
2101 |
+
2104,sporting goods > outdoor recreation > hunting & shooting > tactical gear > tactical vests & chest rigs
|
2102 |
+
2105,sporting goods > outdoor recreation > hunting & shooting > taxidermy animals
|
2103 |
+
2106,sporting goods > outdoor recreation > hunting & shooting > taxidermy supplies
|
2104 |
+
2107,sporting goods > outdoor recreation > kite buggying
|
2105 |
+
2108,sporting goods > outdoor recreation > paintball & airsoft
|
2106 |
+
2109,sporting goods > outdoor recreation > paintball & airsoft > airsoft
|
2107 |
+
2110,sporting goods > outdoor recreation > paintball & airsoft > airsoft > airsoft gun parts & accessories
|
2108 |
+
2111,sporting goods > outdoor recreation > paintball & airsoft > airsoft > airsoft gun parts & accessories > airsoft foregrips
|
2109 |
+
2112,sporting goods > outdoor recreation > paintball & airsoft > airsoft > airsoft gun parts & accessories > airsoft gun barrels
|
2110 |
+
2113,sporting goods > outdoor recreation > paintball & airsoft > airsoft > airsoft gun parts & accessories > airsoft gun batteries
|
2111 |
+
2114,sporting goods > outdoor recreation > paintball & airsoft > airsoft > airsoft gun parts & accessories > airsoft magazines
|
2112 |
+
2115,sporting goods > outdoor recreation > paintball & airsoft > airsoft > airsoft guns
|
2113 |
+
2116,sporting goods > outdoor recreation > paintball & airsoft > airsoft > airsoft pellets
|
2114 |
+
2117,sporting goods > outdoor recreation > paintball & airsoft > paintball
|
2115 |
+
2118,sporting goods > outdoor recreation > paintball & airsoft > paintball & airsoft equipment bags
|
2116 |
+
2119,sporting goods > outdoor recreation > paintball & airsoft > paintball & airsoft holsters
|
2117 |
+
2120,sporting goods > outdoor recreation > paintball & airsoft > paintball & airsoft optics
|
2118 |
+
2121,sporting goods > outdoor recreation > paintball & airsoft > paintball & airsoft sets
|
2119 |
+
2122,sporting goods > outdoor recreation > paintball & airsoft > paintball & airsoft targets
|
2120 |
+
2123,sporting goods > outdoor recreation > paintball & airsoft > paintball > clothing & shoes
|
2121 |
+
2124,sporting goods > outdoor recreation > paintball & airsoft > paintball > paintball filling stations
|
2122 |
+
2125,sporting goods > outdoor recreation > paintball & airsoft > paintball > paintball grenade launchers
|
2123 |
+
2126,sporting goods > outdoor recreation > paintball & airsoft > paintball > paintball gun parts & accessories
|
2124 |
+
2127,sporting goods > outdoor recreation > paintball & airsoft > paintball > paintball gun parts & accessories > paintball drop forwards
|
2125 |
+
2128,sporting goods > outdoor recreation > paintball & airsoft > paintball > paintball gun parts & accessories > paintball feednecks
|
2126 |
+
2129,sporting goods > outdoor recreation > paintball & airsoft > paintball > paintball gun parts & accessories > paintball grips
|
2127 |
+
2130,sporting goods > outdoor recreation > paintball & airsoft > paintball > paintball gun parts & accessories > paintball gun barrels
|
2128 |
+
2131,sporting goods > outdoor recreation > paintball & airsoft > paintball > paintball gun parts & accessories > paintball hoppers & loaders
|
2129 |
+
2132,sporting goods > outdoor recreation > paintball & airsoft > paintball > paintball gun parts & accessories > paintball regulators
|
2130 |
+
2133,sporting goods > outdoor recreation > paintball & airsoft > paintball > paintball gun parts & accessories > paintball tanks
|
2131 |
+
2134,sporting goods > outdoor recreation > paintball & airsoft > paintball > paintball gun parts & accessories > paintball triggers & frames
|
2132 |
+
2135,sporting goods > outdoor recreation > paintball & airsoft > paintball > paintball guns
|
2133 |
+
2136,sporting goods > outdoor recreation > paintball & airsoft > paintball > paintball harnesses & packs
|
2134 |
+
2137,sporting goods > outdoor recreation > paintball & airsoft > paintball > paintballs
|
2135 |
+
2138,sporting goods > outdoor recreation > paintball & airsoft > protective gear
|
2136 |
+
2139,sporting goods > outdoor recreation > paintball & airsoft > protective gear > paintball & airsoft chest protectors
|
2137 |
+
2140,sporting goods > outdoor recreation > paintball & airsoft > protective gear > paintball & airsoft gloves
|
2138 |
+
2141,sporting goods > outdoor recreation > paintball & airsoft > protective gear > paintball & airsoft masks
|
2139 |
+
2142,sporting goods > outdoor recreation > paintball & airsoft > protective gear > paintball & airsoft pads
|
2140 |
+
2143,sporting goods > outdoor recreation > skydiving & hangliding
|
2141 |
+
2144,sporting goods > outdoor recreation > skydiving & hangliding > airframes
|
2142 |
+
2145,sporting goods > outdoor recreation > skydiving & hangliding > clothing & protective gear
|
2143 |
+
2146,sporting goods > outdoor recreation > skydiving & hangliding > clothing & protective gear > jumpsuits
|
2144 |
+
2147,sporting goods > outdoor recreation > skydiving & hangliding > clothing & protective gear > skydiving goggles
|
2145 |
+
2148,sporting goods > outdoor recreation > skydiving & hangliding > clothing & protective gear > skydiving harness systems
|
2146 |
+
2149,sporting goods > outdoor recreation > skydiving & hangliding > clothing & protective gear > skydiving helmets
|
2147 |
+
2150,sporting goods > outdoor recreation > skydiving & hangliding > clothing & protective gear > wing suits & air suits
|
2148 |
+
2151,sporting goods > outdoor recreation > skydiving & hangliding > complete gear packages
|
2149 |
+
2152,sporting goods > outdoor recreation > skydiving & hangliding > hang gliders
|
2150 |
+
2153,sporting goods > outdoor recreation > skydiving & hangliding > parachute canopies
|
2151 |
+
2154,sporting goods > outdoor recreation > skydiving & hangliding > parachutes
|
2152 |
+
2155,sporting goods > outdoor recreation > skydiving & hangliding > paragliders
|
2153 |
+
2156,sporting goods > outdoor recreation > skydiving & hangliding > variometers & altimeters
|
2154 |
+
2157,sporting goods > sports equipment > baseball & softball > baseball & softball bats
|
2155 |
+
2158,sporting goods > sports equipment > baseball & softball > baseballs & softballs
|
2156 |
+
2159,sporting goods > sports equipment > baseball & softball > field equipment
|
2157 |
+
2160,sporting goods > sports equipment > baseball & softball > field equipment > backstop netting
|
2158 |
+
2161,sporting goods > sports equipment > baseball & softball > field equipment > bases & plates
|
2159 |
+
2162,sporting goods > sports equipment > baseball & softball > field equipment > pitching & batting mats
|
2160 |
+
2163,sporting goods > sports equipment > baseball & softball > gloves & mitts
|
2161 |
+
2164,sporting goods > sports equipment > baseball & softball > jerseys & cleats
|
2162 |
+
2165,sporting goods > sports equipment > baseball & softball > protective gear
|
2163 |
+
2166,sporting goods > sports equipment > baseball & softball > protective gear > batting helmets
|
2164 |
+
2167,sporting goods > sports equipment > baseball & softball > protective gear > chest protectors
|
2165 |
+
2168,sporting goods > sports equipment > baseball & softball > protective gear > leg guards
|
2166 |
+
2169,sporting goods > sports equipment > baseball & softball > protective gear > umpire's equipment
|
2167 |
+
2170,sporting goods > sports equipment > baseball & softball > training equipment
|
2168 |
+
2171,sporting goods > sports equipment > baseball & softball > training equipment > batting tees
|
2169 |
+
2172,sporting goods > sports equipment > baseball & softball > training equipment > pitch counters
|
2170 |
+
2173,sporting goods > sports equipment > baseball & softball > training equipment > pitching machines
|
2171 |
+
2174,sporting goods > sports equipment > baseball & softball > training equipment > radar guns & speed sensors
|
2172 |
+
2175,sporting goods > sports equipment > baseball & softball > training equipment > umpire indicators
|
2173 |
+
2176,sporting goods > sports equipment > baseball & softball > training equipment > weighted balls & bats
|
2174 |
+
2177,sporting goods > sports equipment > basketball > basketballs
|
2175 |
+
2178,sporting goods > sports equipment > basketball > hoops & hoop accessories
|
2176 |
+
2179,sporting goods > sports equipment > basketball > hoops & hoop accessories > backboards
|
2177 |
+
2180,sporting goods > sports equipment > basketball > hoops & hoop accessories > hoop padding
|
2178 |
+
2181,sporting goods > sports equipment > basketball > hoops & hoop accessories > hoop posts
|
2179 |
+
2182,sporting goods > sports equipment > basketball > hoops & hoop accessories > hoops
|
2180 |
+
2183,sporting goods > sports equipment > basketball > hoops & hoop accessories > rims & nets
|
2181 |
+
2184,sporting goods > sports equipment > basketball > jerseys
|
2182 |
+
2185,sporting goods > sports equipment > basketball > training aids
|
2183 |
+
2186,sporting goods > sports equipment > boxing & martial arts > boxing rings
|
2184 |
+
2187,sporting goods > sports equipment > boxing & martial arts > clothing & accessories
|
2185 |
+
2188,sporting goods > sports equipment > boxing & martial arts > clothing & accessories > boxing & martial arts gloves
|
2186 |
+
2189,sporting goods > sports equipment > boxing & martial arts > clothing & accessories > boxing & martial arts shorts
|
2187 |
+
2190,sporting goods > sports equipment > boxing & martial arts > clothing & accessories > martial arts belts
|
2188 |
+
2191,sporting goods > sports equipment > boxing & martial arts > clothing & accessories > martial arts uniforms & outfits
|
2189 |
+
2192,sporting goods > sports equipment > boxing & martial arts > martial arts weapons
|
2190 |
+
2193,sporting goods > sports equipment > boxing & martial arts > protective gear
|
2191 |
+
2194,sporting goods > sports equipment > boxing & martial arts > protective gear > arm guards
|
2192 |
+
2195,sporting goods > sports equipment > boxing & martial arts > protective gear > chest guards
|
2193 |
+
2196,sporting goods > sports equipment > boxing & martial arts > protective gear > hand wraps
|
2194 |
+
2197,sporting goods > sports equipment > boxing & martial arts > protective gear > headgear
|
2195 |
+
2198,sporting goods > sports equipment > boxing & martial arts > protective gear > knee & elbow guards
|
2196 |
+
2199,sporting goods > sports equipment > boxing & martial arts > protective gear > shin guards
|
2197 |
+
2200,sporting goods > sports equipment > boxing & martial arts > training equipment
|
2198 |
+
2201,sporting goods > sports equipment > boxing & martial arts > training equipment > blockers & targets
|
2199 |
+
2202,sporting goods > sports equipment > boxing & martial arts > training equipment > floor mats & pads
|
2200 |
+
2203,sporting goods > sports equipment > boxing & martial arts > training equipment > grappling dummies
|
2201 |
+
2204,sporting goods > sports equipment > boxing & martial arts > training equipment > punching bags
|
2202 |
+
2205,sporting goods > sports equipment > boxing & martial arts > training equipment > strike pads & mitts
|
2203 |
+
2206,sporting goods > sports equipment > cricket > clothing & shoes
|
2204 |
+
2207,sporting goods > sports equipment > cricket > cricket balls
|
2205 |
+
2208,sporting goods > sports equipment > cricket > cricket bats
|
2206 |
+
2209,sporting goods > sports equipment > cricket > cricket sets
|
2207 |
+
2210,sporting goods > sports equipment > cricket > cricket stumps
|
2208 |
+
2211,sporting goods > sports equipment > cricket > protective gear
|
2209 |
+
2212,sporting goods > sports equipment > cricket > protective gear > chest & leg guards
|
2210 |
+
2213,sporting goods > sports equipment > cricket > protective gear > gloves
|
2211 |
+
2214,sporting goods > sports equipment > cricket > protective gear > helmets
|
2212 |
+
2215,sporting goods > sports equipment > dance & gymnastics > baby & toddler dancewear
|
2213 |
+
2216,sporting goods > sports equipment > dance & gymnastics > children's dancewear
|
2214 |
+
2217,sporting goods > sports equipment > dance & gymnastics > children's dancewear > dresses & tutus
|
2215 |
+
2218,sporting goods > sports equipment > dance & gymnastics > children's dancewear > leg warmers
|
2216 |
+
2219,sporting goods > sports equipment > dance & gymnastics > children's dancewear > leggings & tights
|
2217 |
+
2220,sporting goods > sports equipment > dance & gymnastics > children's dancewear > leotards & unitards
|
2218 |
+
2221,sporting goods > sports equipment > dance & gymnastics > children's dancewear > pants & shorts
|
2219 |
+
2222,sporting goods > sports equipment > dance & gymnastics > children's dancewear > tops & shirts
|
2220 |
+
2223,sporting goods > sports equipment > dance & gymnastics > dance accessories
|
2221 |
+
2224,sporting goods > sports equipment > dance & gymnastics > dance equipment
|
2222 |
+
2225,sporting goods > sports equipment > dance & gymnastics > dance equipment > ballet barres
|
2223 |
+
2226,sporting goods > sports equipment > dance & gymnastics > dance equipment > dance floors
|
2224 |
+
2227,sporting goods > sports equipment > dance & gymnastics > dance equipment > glassless mirrors
|
2225 |
+
2228,sporting goods > sports equipment > dance & gymnastics > dance shoes
|
2226 |
+
2229,sporting goods > sports equipment > dance & gymnastics > dancewear
|
2227 |
+
2230,sporting goods > sports equipment > dance & gymnastics > leotards & unitards
|
2228 |
+
2231,sporting goods > sports equipment > dance & gymnastics > men's dancewear
|
2229 |
+
2232,sporting goods > sports equipment > dance & gymnastics > men's dancewear > leg warmers
|
2230 |
+
2233,sporting goods > sports equipment > dance & gymnastics > men's dancewear > leggings & tights
|
2231 |
+
2234,sporting goods > sports equipment > dance & gymnastics > men's dancewear > pants & shorts
|
2232 |
+
2235,sporting goods > sports equipment > dance & gymnastics > men's dancewear > tops & shirts
|
2233 |
+
2236,sporting goods > sports equipment > dance & gymnastics > women's dancewear
|
2234 |
+
2237,sporting goods > sports equipment > dance & gymnastics > women's dancewear > leg warmers
|
2235 |
+
2238,sporting goods > sports equipment > dance & gymnastics > women's dancewear > leggings & tights
|
2236 |
+
2239,sporting goods > sports equipment > dance & gymnastics > women's dancewear > leotards & unitards
|
2237 |
+
2240,sporting goods > sports equipment > dance & gymnastics > women's dancewear > pants & shorts
|
2238 |
+
2241,sporting goods > sports equipment > dance & gymnastics > women's dancewear > skirts
|
2239 |
+
2242,sporting goods > sports equipment > dance & gymnastics > women's dancewear > tops & shirts
|
2240 |
+
2243,sporting goods > sports equipment > field hockey & lacrosse > field hockey
|
2241 |
+
2244,sporting goods > sports equipment > field hockey & lacrosse > field hockey > field hockey balls
|
2242 |
+
2245,sporting goods > sports equipment > field hockey & lacrosse > field hockey > field hockey goals
|
2243 |
+
2246,sporting goods > sports equipment > field hockey & lacrosse > field hockey > field hockey sticks
|
2244 |
+
2247,sporting goods > sports equipment > field hockey & lacrosse > lacrosse
|
2245 |
+
2248,sporting goods > sports equipment > field hockey & lacrosse > lacrosse > lacrosse balls
|
2246 |
+
2249,sporting goods > sports equipment > field hockey & lacrosse > lacrosse > lacrosse equipment sets
|
2247 |
+
2250,sporting goods > sports equipment > field hockey & lacrosse > lacrosse > lacrosse goals
|
2248 |
+
2251,sporting goods > sports equipment > field hockey & lacrosse > lacrosse > lacrosse sticks
|
2249 |
+
2252,sporting goods > sports equipment > field hockey & lacrosse > protective gear
|
2250 |
+
2253,sporting goods > sports equipment > field hockey & lacrosse > protective gear > gloves
|
2251 |
+
2254,sporting goods > sports equipment > field hockey & lacrosse > protective gear > goggles & masks
|
2252 |
+
2255,sporting goods > sports equipment > field hockey & lacrosse > protective gear > helmets
|
2253 |
+
2256,sporting goods > sports equipment > field hockey & lacrosse > protective gear > pads & body protectors
|
2254 |
+
2257,sporting goods > sports equipment > field hockey & lacrosse > training aids
|
2255 |
+
2258,sporting goods > sports equipment > football > clothing & shoes
|
2256 |
+
2259,sporting goods > sports equipment > football > football dummies & sleds
|
2257 |
+
2260,sporting goods > sports equipment > football > football gloves
|
2258 |
+
2261,sporting goods > sports equipment > football > football goal posts
|
2259 |
+
2262,sporting goods > sports equipment > football > football kicking tees
|
2260 |
+
2263,sporting goods > sports equipment > football > footballs
|
2261 |
+
2264,sporting goods > sports equipment > football > protective gear
|
2262 |
+
2265,sporting goods > sports equipment > football > protective gear > football pants
|
2263 |
+
2266,sporting goods > sports equipment > football > protective gear > girdles
|
2264 |
+
2267,sporting goods > sports equipment > football > protective gear > helmets
|
2265 |
+
2268,sporting goods > sports equipment > football > protective gear > neck rolls
|
2266 |
+
2269,sporting goods > sports equipment > football > protective gear > rib protection shirts
|
2267 |
+
2270,sporting goods > sports equipment > football > protective gear > shoulder pads
|
2268 |
+
2271,sporting goods > sports equipment > golf > golf accessories
|
2269 |
+
2272,sporting goods > sports equipment > golf > golf accessories > golf accessory sets
|
2270 |
+
2273,sporting goods > sports equipment > golf > golf accessories > golf bag covers
|
2271 |
+
2274,sporting goods > sports equipment > golf > golf accessories > golf bags
|
2272 |
+
2275,sporting goods > sports equipment > golf > golf accessories > golf divot tools
|
2273 |
+
2276,sporting goods > sports equipment > golf > golf accessories > golf flags
|
2274 |
+
2277,sporting goods > sports equipment > golf > golf accessories > golf gloves
|
2275 |
+
2278,sporting goods > sports equipment > golf > golf accessories > golf groove sharpeners
|
2276 |
+
2279,sporting goods > sports equipment > golf > golf accessories > golf push carts
|
2277 |
+
2280,sporting goods > sports equipment > golf > golf accessories > golf rangefinders
|
2278 |
+
2281,sporting goods > sports equipment > golf > golf accessories > golf stroke counters
|
2279 |
+
2282,sporting goods > sports equipment > golf > golf accessories > golf tees
|
2280 |
+
2283,sporting goods > sports equipment > golf > golf accessories > golf towels
|
2281 |
+
2284,sporting goods > sports equipment > golf > golf accessories > golf umbrellas
|
2282 |
+
2285,sporting goods > sports equipment > golf > golf ball accessories
|
2283 |
+
2286,sporting goods > sports equipment > golf > golf ball accessories > golf ball markers
|
2284 |
+
2287,sporting goods > sports equipment > golf > golf ball accessories > golf ball pickups & retrievers
|
2285 |
+
2288,sporting goods > sports equipment > golf > golf ball accessories > golf ball tags
|
2286 |
+
2289,sporting goods > sports equipment > golf > golf balls
|
2287 |
+
2290,sporting goods > sports equipment > golf > golf club parts & accessories
|
2288 |
+
2291,sporting goods > sports equipment > golf > golf club parts & accessories > golf club grips
|
2289 |
+
2292,sporting goods > sports equipment > golf > golf club parts & accessories > golf club headcovers
|
2290 |
+
2293,sporting goods > sports equipment > golf > golf club parts & accessories > golf club heads
|
2291 |
+
2294,sporting goods > sports equipment > golf > golf club parts & accessories > golf club shafts
|
2292 |
+
2295,sporting goods > sports equipment > golf > golf clubs
|
2293 |
+
2296,sporting goods > sports equipment > golf > golf training aids
|
2294 |
+
2297,"sporting goods > sports equipment > golf > golf training aids > golf nets, cages & mats"
|
2295 |
+
2298,sporting goods > sports equipment > golf > golf training aids > putting greens
|
2296 |
+
2299,sporting goods > sports equipment > golf > golf training aids > swing trainers
|
2297 |
+
2300,sporting goods > sports equipment > ice & roller hockey > clothing & shoes
|
2298 |
+
2301,sporting goods > sports equipment > ice & roller hockey > hockey balls & pucks
|
2299 |
+
2302,sporting goods > sports equipment > ice & roller hockey > hockey goals
|
2300 |
+
2303,sporting goods > sports equipment > ice & roller hockey > hockey skates
|
2301 |
+
2304,sporting goods > sports equipment > ice & roller hockey > hockey sledges
|
2302 |
+
2305,sporting goods > sports equipment > ice & roller hockey > hockey sticks
|
2303 |
+
2306,sporting goods > sports equipment > ice & roller hockey > protective gear
|
2304 |
+
2307,sporting goods > sports equipment > ice & roller hockey > protective gear > chest protectors
|
2305 |
+
2308,sporting goods > sports equipment > ice & roller hockey > protective gear > elbow pads
|
2306 |
+
2309,sporting goods > sports equipment > ice & roller hockey > protective gear > gloves
|
2307 |
+
2310,sporting goods > sports equipment > ice & roller hockey > protective gear > goalie equipment
|
2308 |
+
2311,sporting goods > sports equipment > ice & roller hockey > protective gear > helmets
|
2309 |
+
2312,sporting goods > sports equipment > ice & roller hockey > protective gear > pants
|
2310 |
+
2313,sporting goods > sports equipment > ice & roller hockey > protective gear > shin guards
|
2311 |
+
2314,sporting goods > sports equipment > ice & roller hockey > protective gear > suspenders & belts
|
2312 |
+
2315,sporting goods > outdoor recreation > archery
|
2313 |
+
2316,sporting goods > outdoor recreation > archery > archery accessories
|
2314 |
+
2317,sporting goods > outdoor recreation > archery > archery accessories > archery bags & cases
|
2315 |
+
2318,sporting goods > outdoor recreation > archery > archery accessories > archery releases
|
2316 |
+
2319,sporting goods > outdoor recreation > archery > archery accessories > archery sights
|
2317 |
+
2320,sporting goods > outdoor recreation > archery > archery accessories > archery stabilizers
|
2318 |
+
2321,sporting goods > outdoor recreation > archery > archery accessories > archery targets
|
2319 |
+
2322,sporting goods > outdoor recreation > archery > archery accessories > arrow rests
|
2320 |
+
2323,sporting goods > outdoor recreation > archery > archery accessories > bow slings
|
2321 |
+
2324,sporting goods > outdoor recreation > archery > archery accessories > bow strings
|
2322 |
+
2325,sporting goods > outdoor recreation > archery > archery accessories > quivers
|
2323 |
+
2326,sporting goods > outdoor recreation > archery > archery arrows & bolts
|
2324 |
+
2327,sporting goods > outdoor recreation > archery > archery sets
|
2325 |
+
2328,sporting goods > outdoor recreation > archery > arrow parts
|
2326 |
+
2329,sporting goods > outdoor recreation > archery > arrow parts > arrow fletchings
|
2327 |
+
2330,sporting goods > outdoor recreation > archery > arrow parts > arrow nocks
|
2328 |
+
2331,sporting goods > outdoor recreation > archery > arrow parts > arrow points & arrowheads
|
2329 |
+
2332,sporting goods > outdoor recreation > archery > arrow parts > arrow shafts
|
2330 |
+
2333,sporting goods > outdoor recreation > archery > bows
|
2331 |
+
2334,sporting goods > outdoor recreation > archery > bows > compound bows
|
2332 |
+
2335,sporting goods > outdoor recreation > archery > bows > crossbows
|
2333 |
+
2336,sporting goods > outdoor recreation > archery > bows > recurve & longbows
|
2334 |
+
2337,sporting goods > outdoor recreation > archery > protective gear
|
2335 |
+
2338,sporting goods > outdoor recreation > archery > protective gear > archery gloves
|
2336 |
+
2339,sporting goods > outdoor recreation > archery > protective gear > arm guards & chest guards
|
2337 |
+
2340,sporting goods > outdoor recreation > archery > protective gear > finger guards
|
2338 |
+
2341,sporting goods > outdoor recreation > equestrian
|
2339 |
+
2342,sporting goods > outdoor recreation > equestrian > clothing & shoes
|
2340 |
+
2343,sporting goods > outdoor recreation > equestrian > clothing & shoes > chaps & pants
|
2341 |
+
2344,sporting goods > outdoor recreation > equestrian > clothing & shoes > hats
|
2342 |
+
2345,sporting goods > outdoor recreation > equestrian > clothing & shoes > jackets
|
2343 |
+
2346,sporting goods > outdoor recreation > equestrian > clothing & shoes > jodhpurs & breeches
|
2344 |
+
2347,sporting goods > outdoor recreation > equestrian > clothing & shoes > riding boots
|
2345 |
+
2348,sporting goods > outdoor recreation > equestrian > clothing & shoes > riding gloves
|
2346 |
+
2349,sporting goods > outdoor recreation > equestrian > clothing & shoes > shirts
|
2347 |
+
2350,sporting goods > outdoor recreation > equestrian > clothing & shoes > vests
|
2348 |
+
2351,sporting goods > outdoor recreation > equestrian > horse care
|
2349 |
+
2352,sporting goods > outdoor recreation > equestrian > horse care > fly & insect repellents
|
2350 |
+
2353,sporting goods > outdoor recreation > equestrian > horse care > grooming kits
|
2351 |
+
2354,sporting goods > outdoor recreation > equestrian > horse care > hoof oil & moisturizer
|
2352 |
+
2355,sporting goods > outdoor recreation > equestrian > horse care > hoof rasps & farrier tools
|
2353 |
+
2356,sporting goods > outdoor recreation > equestrian > horse care > horse clippers
|
2354 |
+
2357,sporting goods > outdoor recreation > equestrian > horse care > horse combs & brushes
|
2355 |
+
2358,sporting goods > outdoor recreation > equestrian > horse care > horse shampoo & conditioner
|
2356 |
+
2359,sporting goods > outdoor recreation > equestrian > horse care > horse wormers
|
2357 |
+
2360,sporting goods > outdoor recreation > equestrian > horse care > sweat scrapers
|
2358 |
+
2361,sporting goods > outdoor recreation > equestrian > horse care > tail extensions
|
2359 |
+
2362,sporting goods > outdoor recreation > equestrian > horse carts & carriages
|
2360 |
+
2363,sporting goods > outdoor recreation > equestrian > horse feed
|
2361 |
+
2364,sporting goods > outdoor recreation > equestrian > horse feed > horse feed
|
2362 |
+
2365,sporting goods > outdoor recreation > equestrian > horse feed > horse supplements
|
2363 |
+
2366,sporting goods > outdoor recreation > equestrian > horse feed > horse treats
|
2364 |
+
2367,sporting goods > outdoor recreation > equestrian > horse jumps & arena equipment
|
2365 |
+
2368,sporting goods > outdoor recreation > equestrian > horse jumps & arena equipment > horse jumps
|
2366 |
+
2369,sporting goods > outdoor recreation > equestrian > horse jumps & arena equipment > lunge lines & cavessons
|
2367 |
+
2370,sporting goods > outdoor recreation > equestrian > horse jumps & arena equipment > lunging rollers & pads
|
2368 |
+
2371,sporting goods > outdoor recreation > equestrian > horse jumps & arena equipment > rodeo & roping equipment
|
2369 |
+
2372,sporting goods > outdoor recreation > equestrian > horse wear
|
2370 |
+
2373,sporting goods > outdoor recreation > equestrian > horse wear > fly masks
|
2371 |
+
2374,sporting goods > outdoor recreation > equestrian > horse wear > grazing muzzles
|
2372 |
+
2375,sporting goods > outdoor recreation > equestrian > horse wear > hoods & neck covers
|
2373 |
+
2376,sporting goods > outdoor recreation > equestrian > horse wear > horse blankets & sheets
|
2374 |
+
2377,sporting goods > outdoor recreation > equestrian > horse wear > horse boots & leg wraps
|
2375 |
+
2378,sporting goods > outdoor recreation > equestrian > horse wear > shoulder guards
|
2376 |
+
2379,sporting goods > outdoor recreation > equestrian > horse wear > tail bags & wraps
|
2377 |
+
2380,sporting goods > outdoor recreation > equestrian > protective gear
|
2378 |
+
2381,sporting goods > outdoor recreation > equestrian > protective gear > body protectors
|
2379 |
+
2382,sporting goods > outdoor recreation > equestrian > protective gear > riding helmets
|
2380 |
+
2383,sporting goods > outdoor recreation > equestrian > protective gear > safety vests
|
2381 |
+
2384,sporting goods > outdoor recreation > equestrian > saddles & tack
|
2382 |
+
2385,sporting goods > outdoor recreation > equestrian > saddles & tack > breast collars
|
2383 |
+
2386,sporting goods > outdoor recreation > equestrian > saddles & tack > bridle bits
|
2384 |
+
2387,sporting goods > outdoor recreation > equestrian > saddles & tack > bridles
|
2385 |
+
2388,sporting goods > outdoor recreation > equestrian > saddles & tack > cinches
|
2386 |
+
2389,sporting goods > outdoor recreation > equestrian > saddles & tack > halters
|
2387 |
+
2390,sporting goods > outdoor recreation > equestrian > saddles & tack > harnesses
|
2388 |
+
2391,sporting goods > outdoor recreation > equestrian > saddles & tack > lead ropes
|
2389 |
+
2392,sporting goods > outdoor recreation > equestrian > saddles & tack > martingales & breastplates
|
2390 |
+
2393,sporting goods > outdoor recreation > equestrian > saddles & tack > reins
|
2391 |
+
2394,sporting goods > outdoor recreation > equestrian > saddles & tack > riding crops & whips
|
2392 |
+
2395,sporting goods > outdoor recreation > equestrian > saddles & tack > saddle accessories
|
2393 |
+
2396,sporting goods > outdoor recreation > equestrian > saddles & tack > saddle accessories > saddle bags
|
2394 |
+
2397,sporting goods > outdoor recreation > equestrian > saddles & tack > saddle accessories > saddle covers
|
2395 |
+
2398,sporting goods > outdoor recreation > equestrian > saddles & tack > saddle accessories > saddle pads
|
2396 |
+
2399,sporting goods > outdoor recreation > equestrian > saddles & tack > saddle accessories > seat savers
|
2397 |
+
2400,sporting goods > outdoor recreation > equestrian > saddles & tack > saddles
|
2398 |
+
2401,sporting goods > outdoor recreation > equestrian > saddles & tack > spurs & spur straps
|
2399 |
+
2402,sporting goods > outdoor recreation > equestrian > saddles & tack > stirrups
|
2400 |
+
2403,sporting goods > outdoor recreation > equestrian > stable accessories
|
2401 |
+
2404,sporting goods > outdoor recreation > equestrian > stable accessories > bridle & halter bags
|
2402 |
+
2405,sporting goods > outdoor recreation > equestrian > stable accessories > feeders & waterers
|
2403 |
+
2406,sporting goods > outdoor recreation > equestrian > stable accessories > hay nets & bags
|
2404 |
+
2407,sporting goods > outdoor recreation > equestrian > stable accessories > saddle racks & stands
|
2405 |
+
2408,"sporting goods > outdoor recreation > equestrian > stable accessories > tack hooks, racks & boxes"
|
2406 |
+
2409,sporting goods > outdoor recreation > equestrian > stable accessories > toys & salt licks
|
2407 |
+
2410,sporting goods > outdoor recreation > hunting & shooting > gun parts & accessories
|
2408 |
+
2411,sporting goods > outdoor recreation > hunting & shooting > gun parts & accessories > gun maintenance
|
2409 |
+
2412,sporting goods > outdoor recreation > hunting & shooting > gun parts & accessories > gun maintenance > cleaning supplies
|
2410 |
+
2413,sporting goods > outdoor recreation > hunting & shooting > gun parts & accessories > gun maintenance > gun smithing equipment
|
2411 |
+
2414,sporting goods > outdoor recreation > hunting & shooting > gun parts & accessories > gun maintenance > gun vises
|
2412 |
+
2415,sporting goods > outdoor recreation > hunting & shooting > gun parts & accessories > gun parts
|
2413 |
+
2416,sporting goods > outdoor recreation > hunting & shooting > gun parts & accessories > gun storage
|
2414 |
+
2417,sporting goods > outdoor recreation > hunting & shooting > gun parts & accessories > gun storage > ammunition cases
|
2415 |
+
2418,sporting goods > outdoor recreation > hunting & shooting > gun parts & accessories > gun storage > gun cabinets & safes
|
2416 |
+
2419,sporting goods > outdoor recreation > hunting & shooting > gun parts & accessories > gun storage > gun cases
|
2417 |
+
2420,sporting goods > outdoor recreation > hunting & shooting > gun parts & accessories > gun storage > gun locks
|
2418 |
+
2421,sporting goods > outdoor recreation > hunting & shooting > gun parts & accessories > gun storage > gun racks
|
2419 |
+
2422,sporting goods > outdoor recreation > hunting & shooting > gun parts & accessories > gun storage > gun sleeves
|
2420 |
+
2423,sporting goods > outdoor recreation > hunting & shooting > gun parts & accessories > holsters & pouches
|
2421 |
+
2424,sporting goods > outdoor recreation > hunting & shooting > gun parts & accessories > holsters & pouches > ammunition belts & bandoliers
|
2422 |
+
2425,sporting goods > outdoor recreation > hunting & shooting > gun parts & accessories > holsters & pouches > gun holsters
|
2423 |
+
2426,sporting goods > outdoor recreation > hunting & shooting > gun parts & accessories > holsters & pouches > magazine pouches
|
2424 |
+
2427,sporting goods > outdoor recreation > hunting & shooting > gun parts & accessories > holsters & pouches > shell caddies
|
2425 |
+
2428,sporting goods > outdoor recreation > hunting & shooting > gun parts & accessories > reloading equipment
|
2426 |
+
2429,sporting goods > outdoor recreation > hunting & shooting > gun parts & accessories > reloading equipment > powder measures & scales
|
2427 |
+
2430,sporting goods > outdoor recreation > hunting & shooting > gun parts & accessories > reloading equipment > reloading dies
|
2428 |
+
2431,sporting goods > outdoor recreation > hunting & shooting > gun parts & accessories > reloading equipment > reloading molds
|
2429 |
+
2432,sporting goods > outdoor recreation > hunting & shooting > gun parts & accessories > reloading equipment > reloading powders & primers
|
2430 |
+
2433,sporting goods > outdoor recreation > hunting & shooting > gun parts & accessories > reloading equipment > reloading presses
|
2431 |
+
2434,sporting goods > outdoor recreation > hunting & shooting > gun parts & accessories > shooting optics
|
2432 |
+
2435,sporting goods > outdoor recreation > hunting & shooting > gun parts & accessories > shooting optics > hunting rangefinders
|
2433 |
+
2436,sporting goods > outdoor recreation > hunting & shooting > gun parts & accessories > shooting optics > mounted flashlights
|
2434 |
+
2437,sporting goods > outdoor recreation > hunting & shooting > gun parts & accessories > shooting optics > night vision viewers & scopes
|
2435 |
+
2438,sporting goods > outdoor recreation > hunting & shooting > gun parts & accessories > shooting optics > red dot & laser sights
|
2436 |
+
2439,sporting goods > outdoor recreation > hunting & shooting > gun parts & accessories > shooting optics > rifle scopes
|
2437 |
+
2440,sporting goods > outdoor recreation > hunting & shooting > gun parts & accessories > shooting optics > spotting scopes
|
2438 |
+
2441,sporting goods > outdoor recreation > hunting & shooting > hunting accessories > animal traps
|
2439 |
+
2442,sporting goods > outdoor recreation > hunting & shooting > hunting accessories > camouflage materials
|
2440 |
+
2443,sporting goods > outdoor recreation > hunting & shooting > hunting accessories > game & trail cameras
|
2441 |
+
2444,sporting goods > outdoor recreation > hunting & shooting > hunting accessories > game carts & gambrels
|
2442 |
+
2445,sporting goods > outdoor recreation > hunting & shooting > hunting accessories > game ears & hearing aids
|
2443 |
+
2446,sporting goods > outdoor recreation > hunting & shooting > hunting accessories > hunting bags
|
2444 |
+
2447,sporting goods > outdoor recreation > hunting & shooting > hunting accessories > hunting blinds & screens
|
2445 |
+
2448,sporting goods > outdoor recreation > hunting & shooting > hunting accessories > hunting dog equipment
|
2446 |
+
2449,sporting goods > outdoor recreation > hunting & shooting > hunting accessories > hunting dog equipment > check cords
|
2447 |
+
2450,sporting goods > outdoor recreation > hunting & shooting > hunting accessories > hunting dog equipment > dog boots & leg protectors
|
2448 |
+
2451,sporting goods > outdoor recreation > hunting & shooting > hunting accessories > hunting dog equipment > protective vests
|
2449 |
+
2452,sporting goods > outdoor recreation > hunting & shooting > hunting accessories > hunting dog equipment > retriever dummies
|
2450 |
+
2453,sporting goods > outdoor recreation > hunting & shooting > hunting accessories > hunting dog equipment > tail protectors
|
2451 |
+
2454,sporting goods > outdoor recreation > hunting & shooting > hunting accessories > hunting dog equipment > tracking collars
|
2452 |
+
2455,sporting goods > outdoor recreation > hunting & shooting > hunting accessories > hunting knives
|
2453 |
+
2456,sporting goods > outdoor recreation > hunting & shooting > hunting accessories > trail markers & game finders
|
2454 |
+
2457,sporting goods > outdoor recreation > hunting & shooting > hunting accessories > tree stands
|
2455 |
+
2458,sporting goods > outdoor recreation > hunting & shooting > hunting accessories > wildlife attractants > cover scents & attractants
|
2456 |
+
2459,"sporting goods > outdoor recreation > water sports & boating > boating, rafting & paddling"
|
2457 |
+
2460,"sporting goods > outdoor recreation > water sports & boating > boating, rafting & paddling > boat storage racks"
|
2458 |
+
2461,"sporting goods > outdoor recreation > water sports & boating > boating, rafting & paddling > canoes"
|
2459 |
+
2462,"sporting goods > outdoor recreation > water sports & boating > boating, rafting & paddling > kayaks"
|
2460 |
+
2463,"sporting goods > outdoor recreation > water sports & boating > boating, rafting & paddling > paddleboards"
|
2461 |
+
2464,"sporting goods > outdoor recreation > water sports & boating > boating, rafting & paddling > paddles & oars"
|
2462 |
+
2465,"sporting goods > outdoor recreation > water sports & boating > boating, rafting & paddling > pedal boats"
|
2463 |
+
2466,"sporting goods > outdoor recreation > water sports & boating > boating, rafting & paddling > pontoon boats"
|
2464 |
+
2467,"sporting goods > outdoor recreation > water sports & boating > boating, rafting & paddling > rafts"
|
2465 |
+
2468,"sporting goods > outdoor recreation > water sports & boating > boating, rafting & paddling > row boats"
|
2466 |
+
2469,"sporting goods > outdoor recreation > water sports & boating > boating, rafting & paddling > sailing gloves"
|
2467 |
+
2470,sporting goods > outdoor recreation > water sports & boating > kitesurfing
|
2468 |
+
2471,sporting goods > outdoor recreation > water sports & boating > kitesurfing > kiteboard cases
|
2469 |
+
2472,sporting goods > outdoor recreation > water sports & boating > kitesurfing > kiteboards
|
2470 |
+
2473,sporting goods > outdoor recreation > water sports & boating > kitesurfing > kitesurfing harnesses
|
2471 |
+
2474,sporting goods > outdoor recreation > water sports & boating > kitesurfing > kitesurfing kites
|
2472 |
+
2475,sporting goods > outdoor recreation > water sports & boating > scuba diving & snorkeling
|
2473 |
+
2476,sporting goods > outdoor recreation > water sports & boating > scuba diving & snorkeling > buoyancy compensators
|
2474 |
+
2477,sporting goods > outdoor recreation > water sports & boating > scuba diving & snorkeling > dive computers
|
2475 |
+
2478,sporting goods > outdoor recreation > water sports & boating > scuba diving & snorkeling > diving & snorkeling equipment sets
|
2476 |
+
2479,sporting goods > outdoor recreation > water sports & boating > scuba diving & snorkeling > diving & snorkeling fins
|
2477 |
+
2480,sporting goods > outdoor recreation > water sports & boating > scuba diving & snorkeling > diving & snorkeling masks
|
2478 |
+
2481,sporting goods > outdoor recreation > water sports & boating > scuba diving & snorkeling > diving belts
|
2479 |
+
2482,sporting goods > outdoor recreation > water sports & boating > scuba diving & snorkeling > diving flags
|
2480 |
+
2483,sporting goods > outdoor recreation > water sports & boating > scuba diving & snorkeling > diving gauges & compasses
|
2481 |
+
2484,sporting goods > outdoor recreation > water sports & boating > scuba diving & snorkeling > diving knives & shears
|
2482 |
+
2485,sporting goods > outdoor recreation > water sports & boating > scuba diving & snorkeling > diving lights
|
2483 |
+
2486,sporting goods > outdoor recreation > water sports & boating > scuba diving & snorkeling > diving regulators
|
2484 |
+
2487,sporting goods > outdoor recreation > water sports & boating > scuba diving & snorkeling > sea scooters
|
2485 |
+
2488,sporting goods > outdoor recreation > water sports & boating > scuba diving & snorkeling > snorkels
|
2486 |
+
2489,sporting goods > outdoor recreation > water sports & boating > surfing
|
2487 |
+
2490,sporting goods > outdoor recreation > water sports & boating > surfing > bodyboards
|
2488 |
+
2491,sporting goods > outdoor recreation > water sports & boating > surfing > skimboards
|
2489 |
+
2492,sporting goods > outdoor recreation > water sports & boating > surfing > surfboards
|
2490 |
+
2493,sporting goods > outdoor recreation > water sports & boating > surfing > surfing accessories
|
2491 |
+
2494,sporting goods > outdoor recreation > water sports & boating > surfing > surfing accessories > surf leashes
|
2492 |
+
2495,sporting goods > outdoor recreation > water sports & boating > surfing > surfing accessories > surfboard car & storage racks
|
2493 |
+
2496,sporting goods > outdoor recreation > water sports & boating > surfing > surfing accessories > surfboard cases
|
2494 |
+
2497,sporting goods > outdoor recreation > water sports & boating > surfing > surfing accessories > surfboard fins
|
2495 |
+
2498,sporting goods > outdoor recreation > water sports & boating > surfing > surfing accessories > surfboard wax
|
2496 |
+
2499,sporting goods > outdoor recreation > water sports & boating > surfing > surfing accessories > surfing gloves
|
2497 |
+
2500,sporting goods > outdoor recreation > water sports & boating > surfing > surfing accessories > surfing tail pads
|
2498 |
+
2501,sporting goods > outdoor recreation > water sports & boating > swimming
|
2499 |
+
2502,sporting goods > outdoor recreation > water sports & boating > swimming > hand paddles
|
2500 |
+
2503,sporting goods > outdoor recreation > water sports & boating > swimming > kickboards
|
2501 |
+
2504,sporting goods > outdoor recreation > water sports & boating > swimming > pull buoys
|
2502 |
+
2505,sporting goods > outdoor recreation > water sports & boating > swimming > swim belts
|
2503 |
+
2506,sporting goods > outdoor recreation > water sports & boating > swimming > swim gloves
|
2504 |
+
2507,sporting goods > outdoor recreation > water sports & boating > swimming > swim nose clips
|
2505 |
+
2508,sporting goods > outdoor recreation > water sports & boating > swimming > swim weights
|
2506 |
+
2509,sporting goods > outdoor recreation > water sports & boating > swimming > swimming aids
|
2507 |
+
2510,sporting goods > outdoor recreation > water sports & boating > swimming > swimming fins
|
2508 |
+
2511,sporting goods > outdoor recreation > water sports & boating > swimming > swimming machines
|
2509 |
+
2512,sporting goods > outdoor recreation > water sports & boating > wakeboarding & water skiing
|
2510 |
+
2513,sporting goods > outdoor recreation > water sports & boating > wakeboarding & water skiing > kneeboards
|
2511 |
+
2514,sporting goods > outdoor recreation > water sports & boating > wakeboarding & water skiing > towable rafts & tubes
|
2512 |
+
2515,sporting goods > outdoor recreation > water sports & boating > wakeboarding & water skiing > wakeboarding & water skiing accessories
|
2513 |
+
2516,sporting goods > outdoor recreation > water sports & boating > wakeboarding & water skiing > wakeboarding & water skiing accessories > sit-down hydrofoils
|
2514 |
+
2517,sporting goods > outdoor recreation > water sports & boating > wakeboarding & water skiing > wakeboarding & water skiing accessories > tow cables
|
2515 |
+
2518,sporting goods > outdoor recreation > water sports & boating > wakeboarding & water skiing > wakeboarding & water skiing accessories > wakeboard & water ski bindings
|
2516 |
+
2519,sporting goods > outdoor recreation > water sports & boating > wakeboarding & water skiing > wakeboarding & water skiing accessories > wakeboard & water ski cases
|
2517 |
+
2520,sporting goods > outdoor recreation > water sports & boating > wakeboarding & water skiing > wakeboards
|
2518 |
+
2521,sporting goods > outdoor recreation > water sports & boating > wakeboarding & water skiing > water skis
|
2519 |
+
2522,sporting goods > outdoor recreation > water sports & boating > water polo
|
2520 |
+
2523,sporting goods > outdoor recreation > water sports & boating > water polo > caps & head guards
|
2521 |
+
2524,sporting goods > outdoor recreation > water sports & boating > water polo > training equipment
|
2522 |
+
2525,sporting goods > outdoor recreation > water sports & boating > water polo > water polo balls
|
2523 |
+
2526,sporting goods > outdoor recreation > water sports & boating > water polo > water polo goals
|
2524 |
+
2527,sporting goods > outdoor recreation > water sports & boating > water sport apparel & accessories
|
2525 |
+
2528,sporting goods > outdoor recreation > water sports & boating > water sport apparel & accessories > drysuits
|
2526 |
+
2529,sporting goods > outdoor recreation > water sports & boating > water sport apparel & accessories > helmets
|
2527 |
+
2530,sporting goods > outdoor recreation > water sports & boating > water sport apparel & accessories > life vests
|
2528 |
+
2531,sporting goods > outdoor recreation > water sports & boating > water sport apparel & accessories > rash guards
|
2529 |
+
2532,sporting goods > outdoor recreation > water sports & boating > water sport apparel & accessories > swim caps
|
2530 |
+
2533,sporting goods > outdoor recreation > water sports & boating > water sport apparel & accessories > swim goggles
|
2531 |
+
2534,sporting goods > outdoor recreation > water sports & boating > water sport apparel & accessories > water shoes
|
2532 |
+
2535,sporting goods > outdoor recreation > water sports & boating > water sport apparel & accessories > wetsuits
|
2533 |
+
2536,sporting goods > outdoor recreation > water sports & boating > windsurfing
|
2534 |
+
2537,sporting goods > outdoor recreation > water sports & boating > windsurfing > windsurfing boards
|
2535 |
+
2538,sporting goods > outdoor recreation > water sports & boating > windsurfing > windsurfing fins
|
2536 |
+
2539,sporting goods > outdoor recreation > water sports & boating > windsurfing > windsurfing masts
|
2537 |
+
2540,sporting goods > outdoor recreation > water sports & boating > windsurfing > windsurfing sails
|
2538 |
+
2541,sporting goods > outdoor recreation > winter sports > skiing & snowboarding
|
2539 |
+
2542,sporting goods > outdoor recreation > winter sports > skiing & snowboarding > ski & snowboard accessories
|
2540 |
+
2543,sporting goods > outdoor recreation > winter sports > skiing & snowboarding > ski & snowboard accessories > ski & snowboard storage racks
|
2541 |
+
2544,sporting goods > outdoor recreation > winter sports > skiing & snowboarding > ski & snowboard accessories > ski & snowboard tuning supplies
|
2542 |
+
2545,sporting goods > outdoor recreation > winter sports > skiing & snowboarding > ski & snowboard accessories > ski & snowboard wax
|
2543 |
+
2546,sporting goods > outdoor recreation > winter sports > skiing & snowboarding > skiing
|
2544 |
+
2547,sporting goods > outdoor recreation > winter sports > skiing & snowboarding > skiing > ski bindings
|
2545 |
+
2548,sporting goods > outdoor recreation > winter sports > skiing & snowboarding > skiing > ski boots
|
2546 |
+
2549,sporting goods > outdoor recreation > winter sports > skiing & snowboarding > skiing > ski poles
|
2547 |
+
2550,sporting goods > outdoor recreation > winter sports > skiing & snowboarding > skiing > skis
|
2548 |
+
2551,sporting goods > outdoor recreation > winter sports > skiing & snowboarding > snowboarding
|
2549 |
+
2552,sporting goods > outdoor recreation > winter sports > skiing & snowboarding > snowboarding > snowboard bindings
|
2550 |
+
2553,sporting goods > outdoor recreation > winter sports > skiing & snowboarding > snowboarding > snowboard boots
|
2551 |
+
2554,sporting goods > outdoor recreation > winter sports > skiing & snowboarding > snowboarding > snowboards
|
2552 |
+
2555,sporting goods > outdoor recreation > winter sports > sleds & snow tubes
|
2553 |
+
2556,sporting goods > outdoor recreation > winter sports > snowball makers
|
2554 |
+
2557,sporting goods > outdoor recreation > winter sports > snowshoes
|
2555 |
+
2558,sporting goods > outdoor recreation > winter sports > winter clothing
|
2556 |
+
2559,sporting goods > outdoor recreation > winter sports > winter clothing > goggles & masks
|
2557 |
+
2560,sporting goods > outdoor recreation > winter sports > winter clothing > rain suits
|
2558 |
+
2561,sporting goods > outdoor recreation > winter sports > winter clothing > snow suits
|
2559 |
+
2562,sporting goods > outdoor recreation > camping & hiking > camping cooking supplies
|
2560 |
+
2563,sporting goods > outdoor recreation > camping & hiking > camping cooking supplies > camping cookware
|
2561 |
+
2564,sporting goods > outdoor recreation > camping & hiking > camping cooking supplies > camping coolers
|
2562 |
+
2565,sporting goods > outdoor recreation > camping & hiking > camping cooking supplies > camping food
|
2563 |
+
2566,sporting goods > outdoor recreation > camping & hiking > camping cooking supplies > camping grills
|
2564 |
+
2567,sporting goods > outdoor recreation > camping & hiking > camping cooking supplies > camping kettles & coffee pots
|
2565 |
+
2568,sporting goods > outdoor recreation > camping & hiking > camping cooking supplies > camping ovens
|
2566 |
+
2569,sporting goods > outdoor recreation > camping & hiking > camping cooking supplies > camping stoves & burners
|
2567 |
+
2570,sporting goods > outdoor recreation > camping & hiking > camping cooking supplies > camping tableware & dinnerware
|
2568 |
+
2571,sporting goods > outdoor recreation > camping & hiking > camping cooking supplies > cooking utensils
|
2569 |
+
2572,sporting goods > outdoor recreation > camping & hiking > camping cooking supplies > water carriers
|
2570 |
+
2573,sporting goods > outdoor recreation > camping & hiking > camping gear
|
2571 |
+
2574,sporting goods > outdoor recreation > camping & hiking > camping gear > camping chairs
|
2572 |
+
2575,sporting goods > outdoor recreation > camping & hiking > camping gear > camping generators
|
2573 |
+
2576,sporting goods > outdoor recreation > camping & hiking > camping gear > camping heaters
|
2574 |
+
2577,sporting goods > outdoor recreation > camping & hiking > camping gear > compasses
|
2575 |
+
2578,sporting goods > outdoor recreation > camping & hiking > camping gear > fire starters
|
2576 |
+
2579,sporting goods > outdoor recreation > camping & hiking > camping gear > gaiters
|
2577 |
+
2580,sporting goods > outdoor recreation > camping & hiking > camping gear > hand warmers
|
2578 |
+
2581,sporting goods > outdoor recreation > camping & hiking > camping gear > insect repellent
|
2579 |
+
2582,sporting goods > outdoor recreation > camping & hiking > camping gear > mosquito nets & insect screens
|
2580 |
+
2583,sporting goods > outdoor recreation > camping & hiking > camping gear > paracord
|
2581 |
+
2584,sporting goods > outdoor recreation > camping & hiking > camping gear > survival & safety whistles
|
2582 |
+
2585,sporting goods > outdoor recreation > camping & hiking > camping gear > water filters & purifiers
|
2583 |
+
2586,sporting goods > outdoor recreation > camping & hiking > camping lights & lanterns
|
2584 |
+
2587,sporting goods > outdoor recreation > camping & hiking > camping lights & lanterns > flashlights
|
2585 |
+
2588,sporting goods > outdoor recreation > camping & hiking > camping lights & lanterns > headlamps
|
2586 |
+
2589,sporting goods > outdoor recreation > camping & hiking > camping lights & lanterns > lanterns
|
2587 |
+
2590,sporting goods > outdoor recreation > camping & hiking > camping tools
|
2588 |
+
2591,sporting goods > outdoor recreation > camping & hiking > camping tools > camping axes & hatchets
|
2589 |
+
2592,sporting goods > outdoor recreation > camping & hiking > camping tools > camping trowels
|
2590 |
+
2593,sporting goods > outdoor recreation > camping & hiking > camping tools > multitools
|
2591 |
+
2594,sporting goods > outdoor recreation > camping & hiking > camping tools > survival knives
|
2592 |
+
2595,sporting goods > outdoor recreation > camping & hiking > hiking backpacks
|
2593 |
+
2596,sporting goods > outdoor recreation > camping & hiking > hiking backpacks > backpacking packs
|
2594 |
+
2597,sporting goods > outdoor recreation > camping & hiking > hiking backpacks > daypacks
|
2595 |
+
2598,sporting goods > outdoor recreation > camping & hiking > hiking backpacks > dry bags & boxes
|
2596 |
+
2599,sporting goods > outdoor recreation > camping & hiking > hiking backpacks > hydration packs
|
2597 |
+
2600,sporting goods > outdoor recreation > camping & hiking > outdoor sleeping gear
|
2598 |
+
2601,sporting goods > outdoor recreation > camping & hiking > outdoor sleeping gear > compression sacks
|
2599 |
+
2602,sporting goods > outdoor recreation > camping & hiking > outdoor sleeping gear > cots
|
2600 |
+
2603,sporting goods > outdoor recreation > camping & hiking > outdoor sleeping gear > hammocks
|
2601 |
+
2604,sporting goods > outdoor recreation > camping & hiking > outdoor sleeping gear > sleeping bag liners
|
2602 |
+
2605,sporting goods > outdoor recreation > camping & hiking > outdoor sleeping gear > sleeping bags
|
2603 |
+
2606,sporting goods > outdoor recreation > camping & hiking > outdoor sleeping gear > sleeping mats & pads
|
2604 |
+
2607,sporting goods > outdoor recreation > camping & hiking > portable toilets & showers
|
2605 |
+
2608,sporting goods > outdoor recreation > camping & hiking > portable toilets & showers > portable showers & privacy enclosures
|
2606 |
+
2609,sporting goods > outdoor recreation > camping & hiking > portable toilets & showers > portable toilets
|
2607 |
+
2610,sporting goods > outdoor recreation > camping & hiking > portable toilets & showers > portable urination devices
|
2608 |
+
2611,sporting goods > outdoor recreation > camping & hiking > tent accessories
|
2609 |
+
2612,sporting goods > outdoor recreation > camping & hiking > tent accessories > inner tents
|
2610 |
+
2613,sporting goods > outdoor recreation > camping & hiking > tent accessories > tent footprints
|
2611 |
+
2614,sporting goods > outdoor recreation > camping & hiking > tent accessories > tent poles & stakes
|
2612 |
+
2615,sporting goods > outdoor recreation > camping & hiking > tent accessories > tent vestibules
|
2613 |
+
2616,sporting goods > outdoor recreation > camping & hiking > tent accessories > windbreaks
|
2614 |
+
2617,sporting goods > outdoor recreation > camping & hiking > tents & camping shelters
|
2615 |
+
2618,sporting goods > outdoor recreation > camping & hiking > trekking poles
|
2616 |
+
2619,sporting goods > outdoor recreation > climbing > ice climbing
|
2617 |
+
2620,sporting goods > outdoor recreation > climbing > ice climbing > crampons
|
2618 |
+
2621,sporting goods > outdoor recreation > climbing > ice climbing > ice screws
|
2619 |
+
2622,sporting goods > outdoor recreation > cycling > bicycle accessories
|
2620 |
+
2623,sporting goods > outdoor recreation > cycling > bicycle accessories > bicycle bags & panniers
|
2621 |
+
2624,sporting goods > outdoor recreation > cycling > bicycle accessories > bicycle baskets
|
2622 |
+
2625,sporting goods > outdoor recreation > cycling > bicycle accessories > bicycle bells & horns
|
2623 |
+
2626,sporting goods > outdoor recreation > cycling > bicycle accessories > bicycle cages
|
2624 |
+
2627,sporting goods > outdoor recreation > cycling > bicycle accessories > bicycle child seats
|
2625 |
+
2628,sporting goods > outdoor recreation > cycling > bicycle accessories > bicycle computers
|
2626 |
+
2629,sporting goods > outdoor recreation > cycling > bicycle accessories > bicycle covers
|
2627 |
+
2630,sporting goods > outdoor recreation > cycling > bicycle accessories > bicycle fenders
|
2628 |
+
2631,sporting goods > outdoor recreation > cycling > bicycle accessories > bicycle front & rear racks
|
2629 |
+
2632,sporting goods > outdoor recreation > cycling > bicycle accessories > bicycle lights & reflectors
|
2630 |
+
2633,sporting goods > outdoor recreation > cycling > bicycle accessories > bicycle locks
|
2631 |
+
2634,sporting goods > outdoor recreation > cycling > bicycle accessories > bicycle mirrors
|
2632 |
+
2635,sporting goods > outdoor recreation > cycling > bicycle accessories > bicycle pumps
|
2633 |
+
2636,sporting goods > outdoor recreation > cycling > bicycle accessories > bicycle saddle pads & seat covers
|
2634 |
+
2637,sporting goods > outdoor recreation > cycling > bicycle accessories > bicycle spoke beads
|
2635 |
+
2638,sporting goods > outdoor recreation > cycling > bicycle accessories > bicycle stands & storage
|
2636 |
+
2639,sporting goods > outdoor recreation > cycling > bicycle accessories > bicycle tire repair supplies & kits
|
2637 |
+
2640,sporting goods > outdoor recreation > cycling > bicycle accessories > bicycle toe straps & clips
|
2638 |
+
2641,sporting goods > outdoor recreation > cycling > bicycle accessories > bicycle tools
|
2639 |
+
2642,sporting goods > outdoor recreation > cycling > bicycle accessories > bicycle trailers
|
2640 |
+
2643,sporting goods > outdoor recreation > cycling > bicycle accessories > bicycle trainers
|
2641 |
+
2644,sporting goods > outdoor recreation > cycling > bicycle accessories > bicycle training wheels
|
2642 |
+
2645,sporting goods > outdoor recreation > cycling > bicycle accessories > bicycle transport bags & cases
|
2643 |
+
2646,sporting goods > outdoor recreation > cycling > bicycle accessories > bicycle water bottle cages
|
2644 |
+
2647,sporting goods > outdoor recreation > cycling > bicycle accessories > bicycle water sport board racks
|
2645 |
+
2648,sporting goods > outdoor recreation > cycling > bicycle accessories > electric bicycle conversion kits
|
2646 |
+
2649,sporting goods > outdoor recreation > cycling > bicycle parts
|
2647 |
+
2650,sporting goods > outdoor recreation > cycling > bicycle parts > bicycle brake parts
|
2648 |
+
2651,sporting goods > outdoor recreation > cycling > bicycle parts > bicycle brake parts > bicycle brake calipers
|
2649 |
+
2652,sporting goods > outdoor recreation > cycling > bicycle parts > bicycle brake parts > bicycle brake levers
|
2650 |
+
2653,sporting goods > outdoor recreation > cycling > bicycle parts > bicycle brake parts > bicycle brake rotors
|
2651 |
+
2654,sporting goods > outdoor recreation > cycling > bicycle parts > bicycle brake parts > bicycle brakes
|
2652 |
+
2655,sporting goods > outdoor recreation > cycling > bicycle parts > bicycle cables & housings
|
2653 |
+
2656,sporting goods > outdoor recreation > cycling > bicycle parts > bicycle drivetrain parts
|
2654 |
+
2657,sporting goods > outdoor recreation > cycling > bicycle parts > bicycle drivetrain parts > bicycle bottom brackets
|
2655 |
+
2658,sporting goods > outdoor recreation > cycling > bicycle parts > bicycle drivetrain parts > bicycle cassettes & freewheels
|
2656 |
+
2659,sporting goods > outdoor recreation > cycling > bicycle parts > bicycle drivetrain parts > bicycle chain guards
|
2657 |
+
2660,sporting goods > outdoor recreation > cycling > bicycle parts > bicycle drivetrain parts > bicycle chainrings
|
2658 |
+
2661,sporting goods > outdoor recreation > cycling > bicycle parts > bicycle drivetrain parts > bicycle chains
|
2659 |
+
2662,sporting goods > outdoor recreation > cycling > bicycle parts > bicycle drivetrain parts > bicycle cranks
|
2660 |
+
2663,sporting goods > outdoor recreation > cycling > bicycle parts > bicycle drivetrain parts > bicycle derailleurs
|
2661 |
+
2664,sporting goods > outdoor recreation > cycling > bicycle parts > bicycle drivetrain parts > bicycle groupsets
|
2662 |
+
2665,sporting goods > outdoor recreation > cycling > bicycle parts > bicycle drivetrain parts > bicycle pedals
|
2663 |
+
2666,sporting goods > outdoor recreation > cycling > bicycle parts > bicycle drivetrain parts > bicycle shifters
|
2664 |
+
2667,sporting goods > outdoor recreation > cycling > bicycle parts > bicycle frames
|
2665 |
+
2668,sporting goods > outdoor recreation > cycling > bicycle parts > bicycle handlebars & accessories
|
2666 |
+
2669,sporting goods > outdoor recreation > cycling > bicycle parts > bicycle handlebars & accessories > bicycle handlebar extensions
|
2667 |
+
2670,sporting goods > outdoor recreation > cycling > bicycle parts > bicycle handlebars & accessories > bicycle handlebar grips & pads
|
2668 |
+
2671,sporting goods > outdoor recreation > cycling > bicycle parts > bicycle handlebars & accessories > bicycle handlebars
|
2669 |
+
2672,sporting goods > outdoor recreation > cycling > bicycle parts > bicycle headsets & headset parts
|
2670 |
+
2673,sporting goods > outdoor recreation > cycling > bicycle parts > bicycle headsets & headset parts > bicycle headset bearings
|
2671 |
+
2674,sporting goods > outdoor recreation > cycling > bicycle parts > bicycle headsets & headset parts > bicycle headset spacers
|
2672 |
+
2675,sporting goods > outdoor recreation > cycling > bicycle parts > bicycle headsets & headset parts > bicycle headsets
|
2673 |
+
2676,sporting goods > outdoor recreation > cycling > bicycle parts > bicycle kickstands
|
2674 |
+
2677,sporting goods > outdoor recreation > cycling > bicycle parts > bicycle saddles & seatposts
|
2675 |
+
2678,sporting goods > outdoor recreation > cycling > bicycle parts > bicycle saddles & seatposts > bicycle saddles
|
2676 |
+
2679,sporting goods > outdoor recreation > cycling > bicycle parts > bicycle saddles & seatposts > bicycle seatpost clamps
|
2677 |
+
2680,sporting goods > outdoor recreation > cycling > bicycle parts > bicycle saddles & seatposts > bicycle seatposts
|
2678 |
+
2681,sporting goods > outdoor recreation > cycling > bicycle parts > bicycle stems
|
2679 |
+
2682,sporting goods > outdoor recreation > cycling > bicycle parts > bicycle suspension parts
|
2680 |
+
2683,sporting goods > outdoor recreation > cycling > bicycle parts > bicycle suspension parts > bicycle forks
|
2681 |
+
2684,sporting goods > outdoor recreation > cycling > bicycle parts > bicycle suspension parts > bicycle shock pumps
|
2682 |
+
2685,sporting goods > outdoor recreation > cycling > bicycle parts > bicycle suspension parts > bicycle shocks
|
2683 |
+
2686,sporting goods > outdoor recreation > cycling > bicycle parts > bicycle tires & tire parts
|
2684 |
+
2687,sporting goods > outdoor recreation > cycling > bicycle parts > bicycle tires & tire parts > bicycle tire valve adapters
|
2685 |
+
2688,sporting goods > outdoor recreation > cycling > bicycle parts > bicycle tires & tire parts > bicycle tire valve caps
|
2686 |
+
2689,sporting goods > outdoor recreation > cycling > bicycle parts > bicycle tires & tire parts > bicycle tire valves
|
2687 |
+
2690,sporting goods > outdoor recreation > cycling > bicycle parts > bicycle tires & tire parts > bicycle tires
|
2688 |
+
2691,sporting goods > outdoor recreation > cycling > bicycle parts > bicycle tires & tire parts > bicycle tubes
|
2689 |
+
2692,sporting goods > outdoor recreation > cycling > bicycle parts > bicycle wheels & wheel parts
|
2690 |
+
2693,sporting goods > outdoor recreation > cycling > bicycle parts > bicycle wheels & wheel parts > bicycle foot pegs
|
2691 |
+
2694,sporting goods > outdoor recreation > cycling > bicycle parts > bicycle wheels & wheel parts > bicycle hubs
|
2692 |
+
2695,sporting goods > outdoor recreation > cycling > bicycle parts > bicycle wheels & wheel parts > bicycle rim strips
|
2693 |
+
2696,sporting goods > outdoor recreation > cycling > bicycle parts > bicycle wheels & wheel parts > bicycle spokes
|
2694 |
+
2697,sporting goods > outdoor recreation > cycling > bicycle parts > bicycle wheels & wheel parts > bicycle wheel axles & skewers
|
2695 |
+
2698,sporting goods > outdoor recreation > cycling > bicycle parts > bicycle wheels & wheel parts > bicycle wheel nipples
|
2696 |
+
2699,sporting goods > outdoor recreation > cycling > bicycle parts > bicycle wheels & wheel parts > bicycle wheel rims
|
2697 |
+
2700,sporting goods > outdoor recreation > cycling > bicycle parts > bicycle wheels & wheel parts > bicycle wheels
|
2698 |
+
2701,sporting goods > outdoor recreation > cycling > bicycles
|
2699 |
+
2702,sporting goods > outdoor recreation > cycling > cycling clothing
|
2700 |
+
2703,sporting goods > outdoor recreation > cycling > cycling clothing > bicycle bibs
|
2701 |
+
2704,sporting goods > outdoor recreation > cycling > cycling clothing > bicycle jerseys
|
2702 |
+
2705,sporting goods > outdoor recreation > cycling > cycling clothing > bicycle shorts & briefs
|
2703 |
+
2706,sporting goods > outdoor recreation > cycling > cycling clothing > bicycle skinsuits
|
2704 |
+
2707,sporting goods > outdoor recreation > cycling > cycling clothing > bicycle tights
|
2705 |
+
2708,sporting goods > outdoor recreation > cycling > cycling shoes & protective gear
|
2706 |
+
2709,sporting goods > outdoor recreation > cycling > cycling shoes & protective gear > bicycle cleat accessories
|
2707 |
+
2710,sporting goods > outdoor recreation > cycling > cycling shoes & protective gear > bicycle cleat accessories > bicycle cleat bolts
|
2708 |
+
2711,sporting goods > outdoor recreation > cycling > cycling shoes & protective gear > bicycle cleat accessories > bicycle cleat covers
|
2709 |
+
2712,sporting goods > outdoor recreation > cycling > cycling shoes & protective gear > bicycle cleat accessories > bicycle cleat shims & wedges
|
2710 |
+
2713,sporting goods > outdoor recreation > cycling > cycling shoes & protective gear > bicycle cleats
|
2711 |
+
2714,sporting goods > outdoor recreation > cycling > cycling shoes & protective gear > bicycle gloves
|
2712 |
+
2715,sporting goods > outdoor recreation > cycling > cycling shoes & protective gear > bicycle helmets
|
2713 |
+
2716,sporting goods > outdoor recreation > cycling > cycling shoes & protective gear > bicycle protective pads
|
2714 |
+
2717,sporting goods > outdoor recreation > cycling > cycling shoes & protective gear > bicycle shoe covers
|
2715 |
+
2718,sporting goods > outdoor recreation > cycling > tricycles
|
2716 |
+
2719,sporting goods > outdoor recreation > cycling > unicycles
|
2717 |
+
2720,sporting goods > outdoor recreation > fishing > fishing baits & lures
|
2718 |
+
2721,sporting goods > outdoor recreation > fishing > fishing baits & lures > attractants
|
2719 |
+
2722,sporting goods > outdoor recreation > fishing > fishing baits & lures > bait & lure kits
|
2720 |
+
2723,sporting goods > outdoor recreation > fishing > fishing baits & lures > fishing flies
|
2721 |
+
2724,sporting goods > outdoor recreation > fishing > fishing baits & lures > hard baits
|
2722 |
+
2725,sporting goods > outdoor recreation > fishing > fishing baits & lures > jigs & rigs
|
2723 |
+
2726,sporting goods > outdoor recreation > fishing > fishing baits & lures > live bait
|
2724 |
+
2727,sporting goods > outdoor recreation > fishing > fishing baits & lures > soft baits
|
2725 |
+
2728,sporting goods > outdoor recreation > fishing > fishing baits & lures > spinnerbaits
|
2726 |
+
2729,sporting goods > outdoor recreation > fishing > fishing equipment
|
2727 |
+
2730,sporting goods > outdoor recreation > fishing > fishing equipment > bait & fillet knives
|
2728 |
+
2731,sporting goods > outdoor recreation > fishing > fishing equipment > bait buckets
|
2729 |
+
2732,sporting goods > outdoor recreation > fishing > fishing equipment > bite alarms
|
2730 |
+
2733,sporting goods > outdoor recreation > fishing > fishing equipment > fishfinders
|
2731 |
+
2734,sporting goods > outdoor recreation > fishing > fishing equipment > fishing nets
|
2732 |
+
2735,sporting goods > outdoor recreation > fishing > fishing equipment > fishing scalers & skinners
|
2733 |
+
2736,sporting goods > outdoor recreation > fishing > fishing equipment > fishing spears & gaffs
|
2734 |
+
2737,sporting goods > outdoor recreation > fishing > fishing equipment > fishing traps
|
2735 |
+
2738,sporting goods > outdoor recreation > fishing > fishing equipment > fly tying materials
|
2736 |
+
2739,sporting goods > outdoor recreation > fishing > fishing equipment > pliers & hook removers
|
2737 |
+
2740,sporting goods > outdoor recreation > fishing > fishing rod & reel accessories
|
2738 |
+
2741,sporting goods > outdoor recreation > fishing > fishing rod & reel accessories > fishing reel bags & cases
|
2739 |
+
2742,sporting goods > outdoor recreation > fishing > fishing rod & reel accessories > fishing reel lubricants
|
2740 |
+
2743,sporting goods > outdoor recreation > fishing > fishing rod & reel accessories > fishing reel spools
|
2741 |
+
2744,sporting goods > outdoor recreation > fishing > fishing rod & reel accessories > fishing rod bags & cases
|
2742 |
+
2745,sporting goods > outdoor recreation > fishing > fishing rod & reel accessories > fishing rod holders & racks
|
2743 |
+
2746,sporting goods > outdoor recreation > fishing > fishing rods & reels
|
2744 |
+
2747,sporting goods > outdoor recreation > fishing > fishing rods & reels > fishing reels
|
2745 |
+
2748,sporting goods > outdoor recreation > fishing > fishing rods & reels > fishing rod & reel combos
|
2746 |
+
2749,sporting goods > outdoor recreation > fishing > fishing rods & reels > fishing rods
|
2747 |
+
2750,sporting goods > outdoor recreation > fishing > fishing tackle
|
2748 |
+
2751,sporting goods > outdoor recreation > fishing > fishing tackle > fishing floats
|
2749 |
+
2752,sporting goods > outdoor recreation > fishing > fishing tackle > fishing hooks
|
2750 |
+
2753,sporting goods > outdoor recreation > fishing > fishing tackle > fishing lines & leaders
|
2751 |
+
2754,sporting goods > outdoor recreation > fishing > fishing tackle > fishing sinkers
|
2752 |
+
2755,sporting goods > outdoor recreation > fishing > fishing tackle > fishing snaps & swivels
|
2753 |
+
2756,sporting goods > outdoor recreation > fishing > fishing waders
|
2754 |
+
2757,sporting goods > outdoor recreation > fishing > tackle bags & boxes
|
2755 |
+
2758,sporting goods > outdoor recreation > inline & roller skating > inline skates
|
2756 |
+
2759,sporting goods > outdoor recreation > inline & roller skating > protective gear
|
2757 |
+
2760,sporting goods > outdoor recreation > inline & roller skating > protective gear > helmets
|
2758 |
+
2761,sporting goods > outdoor recreation > inline & roller skating > protective gear > knee & elbow pads
|
2759 |
+
2762,sporting goods > outdoor recreation > inline & roller skating > protective gear > protective gear sets
|
2760 |
+
2763,sporting goods > outdoor recreation > inline & roller skating > protective gear > wrist guards
|
2761 |
+
2764,sporting goods > outdoor recreation > inline & roller skating > roller skates
|
2762 |
+
2765,sporting goods > outdoor recreation > inline & roller skating > roller skis
|
2763 |
+
2766,sporting goods > outdoor recreation > inline & roller skating > skate wheels
|
2764 |
+
2767,sporting goods > outdoor recreation > outdoor games > deck shuffleboard
|
2765 |
+
2768,sporting goods > outdoor recreation > outdoor games > deck shuffleboard > deck shuffleboard courts
|
2766 |
+
2769,sporting goods > outdoor recreation > outdoor games > deck shuffleboard > deck shuffleboard cues
|
2767 |
+
2770,sporting goods > outdoor recreation > outdoor games > deck shuffleboard > deck shuffleboard pucks
|
2768 |
+
2771,sporting goods > outdoor recreation > outdoor games > disc golf
|
2769 |
+
2772,sporting goods > outdoor recreation > outdoor games > disc golf > disc golf bags
|
2770 |
+
2773,sporting goods > outdoor recreation > outdoor games > disc golf > disc golf discs
|
2771 |
+
2774,sporting goods > outdoor recreation > outdoor games > disc golf > disc golf sets
|
2772 |
+
2775,sporting goods > outdoor recreation > outdoor games > disc golf > disc golf targets
|
2773 |
+
2776,sporting goods > outdoor recreation > outdoor games > lawn games
|
2774 |
+
2777,sporting goods > outdoor recreation > outdoor games > lawn games > bocce ball
|
2775 |
+
2778,sporting goods > outdoor recreation > outdoor games > lawn games > cornhole bag toss
|
2776 |
+
2779,sporting goods > outdoor recreation > outdoor games > lawn games > croquet
|
2777 |
+
2780,sporting goods > outdoor recreation > outdoor games > lawn games > horseshoes
|
2778 |
+
2781,sporting goods > outdoor recreation > outdoor games > tetherball
|
2779 |
+
2782,sporting goods > outdoor recreation > outdoor games > tetherball > tetherball poles
|
2780 |
+
2783,sporting goods > outdoor recreation > outdoor games > tetherball > tetherball sets
|
2781 |
+
2784,sporting goods > outdoor recreation > outdoor games > tetherball > tetherballs
|
2782 |
+
2785,sporting goods > outdoor recreation > skateboarding > skateboard parts
|
2783 |
+
2786,sporting goods > outdoor recreation > skateboarding > skateboard parts > skateboard bearings
|
2784 |
+
2787,sporting goods > outdoor recreation > skateboarding > skateboard parts > skateboard decks
|
2785 |
+
2788,sporting goods > outdoor recreation > skateboarding > skateboard parts > skateboard trucks
|
2786 |
+
2789,sporting goods > outdoor recreation > skateboarding > skateboard parts > skateboard wheels
|
2787 |
+
2790,sporting goods > outdoor recreation > skateboarding > skateboard protective gear
|
2788 |
+
2791,sporting goods > outdoor recreation > skateboarding > skateboard protective gear > skateboarding gloves
|
2789 |
+
2792,sporting goods > outdoor recreation > skateboarding > skateboard protective gear > skateboarding helmets
|
2790 |
+
2793,sporting goods > outdoor recreation > skateboarding > skateboard protective gear > skateboarding knee & elbow pads
|
2791 |
+
2794,sporting goods > outdoor recreation > skateboarding > skateboard ramps & rails
|
2792 |
+
2795,sporting goods > outdoor recreation > skateboarding > skateboards & longboards
|
2793 |
+
2796,sporting goods > outdoor recreation > winter sports > avalanche safety
|
2794 |
+
2797,sporting goods > outdoor recreation > winter sports > avalanche safety > avalanche probes
|
2795 |
+
2798,sporting goods > outdoor recreation > winter sports > avalanche safety > avalanche safety airbags
|
2796 |
+
2799,sporting goods > outdoor recreation > winter sports > skiing & snowboarding > ski & snowboard accessories > ski & snowboard bags
|
2797 |
+
2800,sporting goods > outdoor recreation > winter sports > skiing & snowboarding > ski & snowboard accessories > ski & snowboard helmets
|
2798 |
+
2801,sporting goods > outdoor recreation > winter sports > skiing & snowboarding > ski & snowboard accessories > ski & snowboard leashes
|
2799 |
+
2802,sporting goods > exercise & fitness > ab exercisers
|
2800 |
+
2803,sporting goods > exercise & fitness > aerobic steps
|
2801 |
+
2804,sporting goods > exercise & fitness > balance trainers
|
2802 |
+
2805,sporting goods > exercise & fitness > cardio equipment > cardio machine accessories
|
2803 |
+
2806,sporting goods > exercise & fitness > cardio equipment > elliptical trainers
|
2804 |
+
2807,sporting goods > exercise & fitness > cardio equipment > exercise bikes
|
2805 |
+
2808,sporting goods > exercise & fitness > cardio equipment > jump ropes
|
2806 |
+
2809,sporting goods > exercise & fitness > cardio equipment > rowing machines
|
2807 |
+
2810,sporting goods > exercise & fitness > cardio equipment > stair climbers & step machines
|
2808 |
+
2811,sporting goods > exercise & fitness > cardio equipment > treadmills
|
2809 |
+
2812,sporting goods > exercise & fitness > exercise balls
|
2810 |
+
2813,sporting goods > exercise & fitness > exercise bands
|
2811 |
+
2814,sporting goods > exercise & fitness > exercise benches & wedges
|
2812 |
+
2815,sporting goods > exercise & fitness > foam rollers & massagers
|
2813 |
+
2816,sporting goods > exercise & fitness > hand exercisers
|
2814 |
+
2817,sporting goods > exercise & fitness > inversion tables
|
2815 |
+
2818,sporting goods > exercise & fitness > power towers
|
2816 |
+
2819,sporting goods > exercise & fitness > push up & pull up bars
|
2817 |
+
2820,sporting goods > exercise & fitness > reaction balls
|
2818 |
+
2821,sporting goods > exercise & fitness > running
|
2819 |
+
2822,sporting goods > exercise & fitness > running > speed & resistance parachutes
|
2820 |
+
2823,sporting goods > exercise & fitness > suspension trainers
|
2821 |
+
2824,sporting goods > exercise & fitness > vibration exercise machines
|
2822 |
+
2825,sporting goods > exercise & fitness > weight lifting equipment > dumbbells
|
2823 |
+
2826,sporting goods > exercise & fitness > weight lifting equipment > kettlebells
|
2824 |
+
2827,sporting goods > exercise & fitness > weight lifting equipment > medicine balls
|
2825 |
+
2828,sporting goods > exercise & fitness > weight lifting equipment > weight bars & collars
|
2826 |
+
2829,sporting goods > exercise & fitness > weight lifting equipment > weight lifting accessories
|
2827 |
+
2830,sporting goods > exercise & fitness > weight lifting equipment > weight lifting accessories > exercise equipment mats
|
2828 |
+
2831,sporting goods > exercise & fitness > weight lifting equipment > weight lifting accessories > weight lifting belts
|
2829 |
+
2832,sporting goods > exercise & fitness > weight lifting equipment > weight lifting accessories > weight lifting gloves
|
2830 |
+
2833,sporting goods > exercise & fitness > weight lifting equipment > weight lifting accessories > weight lifting machine accessories
|
2831 |
+
2834,sporting goods > exercise & fitness > weight lifting equipment > weight lifting accessories > weight storage racks
|
2832 |
+
2835,sporting goods > exercise & fitness > weight lifting equipment > weight lifting machines & racks
|
2833 |
+
2836,sporting goods > exercise & fitness > weight lifting equipment > weight plates
|
2834 |
+
2837,sporting goods > exercise & fitness > weight lifting equipment > weighted clothing
|
2835 |
+
2838,sporting goods > exercise & fitness > yoga & pilates > pilates machines
|
2836 |
+
2839,sporting goods > exercise & fitness > yoga & pilates > yoga & pilates towels
|
2837 |
+
2840,sporting goods > exercise & fitness > yoga & pilates > yoga bags & mat carriers
|
2838 |
+
2841,sporting goods > exercise & fitness > yoga & pilates > yoga blocks
|
2839 |
+
2842,sporting goods > exercise & fitness > yoga & pilates > yoga mats
|
2840 |
+
2843,sporting goods > exercise & fitness > yoga & pilates > yoga straps & bands
|
2841 |
+
2844,sporting goods > indoor games > air hockey
|
2842 |
+
2845,sporting goods > indoor games > air hockey > air hockey paddles
|
2843 |
+
2846,sporting goods > indoor games > air hockey > air hockey pucks
|
2844 |
+
2847,sporting goods > indoor games > air hockey > air hockey tables
|
2845 |
+
2848,sporting goods > indoor games > billiards
|
2846 |
+
2849,sporting goods > indoor games > billiards > billiard ball racks
|
2847 |
+
2850,sporting goods > indoor games > billiards > billiard balls
|
2848 |
+
2851,sporting goods > indoor games > billiards > billiard cue accessories
|
2849 |
+
2852,sporting goods > indoor games > billiards > billiard cue accessories > billiard cue cases
|
2850 |
+
2853,sporting goods > indoor games > billiards > billiard cue accessories > billiard cue chalk
|
2851 |
+
2854,sporting goods > indoor games > billiards > billiard cue accessories > billiard cue racks
|
2852 |
+
2855,sporting goods > indoor games > billiards > billiard cue accessories > billiard cue tips
|
2853 |
+
2856,sporting goods > indoor games > billiards > billiard cues & bridges
|
2854 |
+
2857,sporting goods > indoor games > billiards > billiard gloves
|
2855 |
+
2858,sporting goods > indoor games > billiards > billiard table accessories
|
2856 |
+
2859,sporting goods > indoor games > billiards > billiard table accessories > billiard pockets
|
2857 |
+
2860,sporting goods > indoor games > billiards > billiard table accessories > billiard table brushes
|
2858 |
+
2861,sporting goods > indoor games > billiards > billiard table accessories > billiard table covers & cloth
|
2859 |
+
2862,sporting goods > indoor games > billiards > billiard table accessories > billiard table lights
|
2860 |
+
2863,sporting goods > indoor games > billiards > billiard tables
|
2861 |
+
2864,sporting goods > indoor games > bowling
|
2862 |
+
2865,sporting goods > indoor games > bowling > bowling bags
|
2863 |
+
2866,sporting goods > indoor games > bowling > bowling balls
|
2864 |
+
2867,sporting goods > indoor games > bowling > bowling gloves & wrist supports
|
2865 |
+
2868,sporting goods > indoor games > bowling > bowling pins
|
2866 |
+
2869,sporting goods > indoor games > bowling > clothing & shoes
|
2867 |
+
2870,sporting goods > indoor games > darts
|
2868 |
+
2871,sporting goods > indoor games > darts > dart parts
|
2869 |
+
2872,sporting goods > indoor games > darts > dart parts > dart flights
|
2870 |
+
2873,sporting goods > indoor games > darts > dart parts > dart shafts
|
2871 |
+
2874,sporting goods > indoor games > darts > dart parts > dart tips
|
2872 |
+
2875,sporting goods > indoor games > darts > dart sets
|
2873 |
+
2876,sporting goods > indoor games > darts > dartboard backboards
|
2874 |
+
2877,sporting goods > indoor games > darts > dartboard cabinets
|
2875 |
+
2878,sporting goods > indoor games > darts > dartboards
|
2876 |
+
2879,sporting goods > indoor games > darts > throwing darts
|
2877 |
+
2880,sporting goods > indoor games > foosball
|
2878 |
+
2881,sporting goods > indoor games > foosball > foosball balls
|
2879 |
+
2882,sporting goods > indoor games > foosball > foosball figures
|
2880 |
+
2883,sporting goods > indoor games > foosball > foosball handles
|
2881 |
+
2884,sporting goods > indoor games > foosball > foosball tables
|
2882 |
+
2885,sporting goods > indoor games > multi-game tables
|
2883 |
+
2886,sporting goods > indoor games > ping pong & table tennis
|
2884 |
+
2887,sporting goods > indoor games > ping pong & table tennis > ping pong balls
|
2885 |
+
2888,sporting goods > indoor games > ping pong & table tennis > ping pong nets & posts
|
2886 |
+
2889,sporting goods > indoor games > ping pong & table tennis > ping pong paddles
|
2887 |
+
2890,sporting goods > indoor games > ping pong & table tennis > ping pong robots
|
2888 |
+
2891,sporting goods > indoor games > ping pong & table tennis > ping pong tables
|
2889 |
+
2892,sporting goods > indoor games > table shuffleboard
|
2890 |
+
2893,sporting goods > indoor games > table shuffleboard > shuffleboard tables
|
2891 |
+
2894,sporting goods > indoor games > table shuffleboard > table shuffleboard powder & wax
|
2892 |
+
2895,sporting goods > indoor games > table shuffleboard > table shuffleboard pucks
|
2893 |
+
2896,sporting goods > outdoor recreation > climbing > climbing accessories
|
2894 |
+
2897,sporting goods > outdoor recreation > climbing > climbing accessories > chalk bags
|
2895 |
+
2898,sporting goods > outdoor recreation > climbing > climbing accessories > climbing brushes
|
2896 |
+
2899,sporting goods > outdoor recreation > climbing > climbing accessories > climbing gloves
|
2897 |
+
2900,sporting goods > outdoor recreation > climbing > climbing accessories > climbing helmets
|
2898 |
+
2901,sporting goods > outdoor recreation > climbing > climbing accessories > climbing tape
|
2899 |
+
2902,sporting goods > outdoor recreation > climbing > climbing accessories > crash pads & mats
|
2900 |
+
2903,sporting goods > outdoor recreation > climbing > climbing accessories > rope bags
|
2901 |
+
2904,sporting goods > outdoor recreation > climbing > climbing hardware
|
2902 |
+
2905,sporting goods > outdoor recreation > climbing > climbing hardware > ascenders & descenders
|
2903 |
+
2906,sporting goods > outdoor recreation > climbing > climbing hardware > belay & rappel devices
|
2904 |
+
2907,sporting goods > outdoor recreation > climbing > climbing hardware > cams & nuts
|
2905 |
+
2908,sporting goods > outdoor recreation > climbing > climbing hardware > carabiners
|
2906 |
+
2909,sporting goods > outdoor recreation > climbing > climbing hardware > climbing harnesses
|
2907 |
+
2910,sporting goods > outdoor recreation > climbing > climbing hardware > climbing rope & webbing
|
2908 |
+
2911,sporting goods > outdoor recreation > climbing > climbing hardware > indoor climbing holds
|
2909 |
+
2912,sporting goods > outdoor recreation > climbing > climbing hardware > pulleys
|
2910 |
+
2913,sporting goods > outdoor recreation > climbing > climbing hardware > quickdraws
|
2911 |
+
2914,sporting goods > outdoor recreation > climbing > clothing & shoes
|
2912 |
+
2915,sporting goods > outdoor recreation > climbing > ice climbing > ice axes
|
2913 |
+
2916,health & beauty > beauty > nail care > nail tools > hand & nail treatment creams
|
2914 |
+
2917,home > cleaning supplies > party supplies > piñatas
|
admin/partials/woo-feed-edit-config.php
CHANGED
@@ -65,8 +65,13 @@ if ( ! defined( 'ABSPATH' ) ) {
|
|
65 |
<span <?php echo ( 'pattern' == $attr_type[ $k ] ) ? '' : 'style=" display: none;" '; ?>class="wf_default wf_attributes">
|
66 |
<select name="default[<?php echo esc_attr( $k ); ?>]" class="selectize" data-placeholder="<?php esc_attr_e( 'Select A Category', 'woo-feed' ); ?>">
|
67 |
<?php
|
68 |
-
|
69 |
-
|
|
|
|
|
|
|
|
|
|
|
70 |
?>
|
71 |
</select>
|
72 |
</span>
|
65 |
<span <?php echo ( 'pattern' == $attr_type[ $k ] ) ? '' : 'style=" display: none;" '; ?>class="wf_default wf_attributes">
|
66 |
<select name="default[<?php echo esc_attr( $k ); ?>]" class="selectize" data-placeholder="<?php esc_attr_e( 'Select A Category', 'woo-feed' ); ?>">
|
67 |
<?php
|
68 |
+
if( "fb_product_category" === $mAttribute ) {
|
69 |
+
// phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped
|
70 |
+
echo $wooFeedDropDown->facebookTaxonomy( esc_attr( $default[ $k ] ) );
|
71 |
+
}else {
|
72 |
+
// phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped
|
73 |
+
echo $wooFeedDropDown->googleTaxonomy( esc_attr( $default[ $k ] ) );
|
74 |
+
}
|
75 |
?>
|
76 |
</select>
|
77 |
</span>
|
includes/classes/class-woo-feed-default-attributes.php
CHANGED
@@ -776,6 +776,99 @@ class Woo_Feed_Default_Attributes {
|
|
776 |
);
|
777 |
}
|
778 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
779 |
/**
|
780 |
* Google Dynamic Ads Attribute List
|
781 |
*
|
776 |
);
|
777 |
}
|
778 |
|
779 |
+
/**
|
780 |
+
* Facebook Attribute List
|
781 |
+
*
|
782 |
+
* @return array
|
783 |
+
*/
|
784 |
+
public function facebookAttributes() {
|
785 |
+
return array(
|
786 |
+
'--1' => 'Basic Information',
|
787 |
+
'id' => 'Product Id[id]',
|
788 |
+
'title' => 'Product Title[title]',
|
789 |
+
'description' => 'Product Description[description]',
|
790 |
+
'link' => 'Product URL[link]',
|
791 |
+
'mobile_link' => 'Product URL[mobile_link]',
|
792 |
+
'product_type' => 'Product Categories[product_type] ',
|
793 |
+
'fb_product_category' => 'Facebook Product Category[fb_product_category]',
|
794 |
+
'current_category' => 'Google Product Category[google_product_category]',
|
795 |
+
'image' => 'Main Image[image_link]',
|
796 |
+
'images' => 'Additional Images [additional_image_link]',
|
797 |
+
'images_1' => 'Additional Image 1 [additional_image_link]',
|
798 |
+
'images_2' => 'Additional Image 2 [additional_image_link]',
|
799 |
+
'images_3' => 'Additional Image 3 [additional_image_link]',
|
800 |
+
'images_4' => 'Additional Image 4 [additional_image_link]',
|
801 |
+
'images_5' => 'Additional Image 5 [additional_image_link]',
|
802 |
+
'images_6' => 'Additional Image 6 [additional_image_link]',
|
803 |
+
'images_7' => 'Additional Image 7 [additional_image_link]',
|
804 |
+
'images_8' => 'Additional Image 8 [additional_image_link]',
|
805 |
+
'images_9' => 'Additional Image 9 [additional_image_link]',
|
806 |
+
'images_10' => 'Additional Image 10 [additional_image_link]',
|
807 |
+
'condition' => 'Condition[condition]',
|
808 |
+
'---1' => '',
|
809 |
+
'--2' => 'Availability & Price',
|
810 |
+
'availability' => 'Stock Status[availability]',
|
811 |
+
'availability_date' => 'Availability Date[availability_date]',
|
812 |
+
'price' => 'Regular Price[price]',
|
813 |
+
'sale_price' => 'Sale Price[sale_price]',
|
814 |
+
'sale_price_effective_date' => 'Sale Price Effective Date[sale_price_effective_date]',
|
815 |
+
'---2' => '',
|
816 |
+
'--3' => 'Unique Product Identifiers',
|
817 |
+
'brand' => 'Manufacturer[brand]',
|
818 |
+
'gtin' => 'GTIN[gtin]',
|
819 |
+
'mpn' => 'MPN[mpn]',
|
820 |
+
'identifier_exists' => 'Identifier Exist[identifier_exists]',
|
821 |
+
'---3' => '',
|
822 |
+
'--4' => 'Detailed Product Attributes',
|
823 |
+
'item_group_id' => 'Item Group Id[item_group_id]',
|
824 |
+
'color' => 'Color[color]',
|
825 |
+
'gender' => 'Gender[gender]',
|
826 |
+
'age_group' => 'Age Group[age_group]',
|
827 |
+
'material' => 'Material[material]',
|
828 |
+
'pattern' => 'Pattern[pattern]',
|
829 |
+
'size' => 'Size of the item[size]',
|
830 |
+
'---4' => '',
|
831 |
+
'--5' => 'Tax & Shipping',
|
832 |
+
'tax' => 'Tax[tax]',
|
833 |
+
'tax_country' => 'Tax Country[tax_country]',
|
834 |
+
'tax_region' => 'Tax Region[tax_region]',
|
835 |
+
'tax_rate' => 'Tax Rate[tax_rate]',
|
836 |
+
'tax_ship' => 'Tax Ship[tax_ship]',
|
837 |
+
'tax_category' => 'Tax[tax_category]',
|
838 |
+
'shipping' => 'Shipping',
|
839 |
+
'shipping_weight' => 'Shipping Weight[shipping_weight]',
|
840 |
+
'---5' => '',
|
841 |
+
'--6' => 'Custom Label Attributes',
|
842 |
+
'custom_label_0' => 'Custom label 0 [custom_label_0]',
|
843 |
+
'custom_label_1' => 'Custom label 1 [custom_label_1]',
|
844 |
+
'custom_label_2' => 'Custom label 2 [custom_label_2]',
|
845 |
+
'custom_label_3' => 'Custom label 3 [custom_label_3]',
|
846 |
+
'custom_label_4' => 'Custom label 4 [custom_label_4]',
|
847 |
+
'---6' => '',
|
848 |
+
'--7' => 'Additional Attributes',
|
849 |
+
'status' => 'Status [status]',
|
850 |
+
'video' => 'Video [video]',
|
851 |
+
'unit_price_value' => 'Unit Price > Value [unit_price_value]',
|
852 |
+
'unit_price_currency' => 'Unit Price > Currency [unit_price_currency]',
|
853 |
+
'unit_price_unit' => 'Unit Price > Unit [unit_price_unit]',
|
854 |
+
'quantity_to_sell_on_facebook' => 'Quantity to Sell on Facebook [quantity_to_sell_on_facebook]',
|
855 |
+
'commerce_tax_category' => 'Commerce Tax Category [commerce_tax_category]',
|
856 |
+
'expiration_date' => 'Expiration Date[expiration_date]',
|
857 |
+
'marked_for_product_launch' => 'Marked for Product Launce [marked_for_product_launch]',
|
858 |
+
'rich_text_description' => 'Rich Text Description [rich_text_description]',
|
859 |
+
'visibility' => 'Visibility [visibility]',
|
860 |
+
'additional_variant_label' => 'Additional Variant Attribute > Label [Variant Label]',
|
861 |
+
'additional_variant_value' => 'Additional Variant Attribute > Value [Variant Value]',
|
862 |
+
'applink' => 'Applink [applink]',
|
863 |
+
'origin_country' => 'Origin Country [origin_country]',
|
864 |
+
'importer_name' => 'Importer Name [importer_name]',
|
865 |
+
'importer_address' => 'Importer Address [importer_address]',
|
866 |
+
'manufacturer_info' => 'Manufacturer Info [manufacturer_info]',
|
867 |
+
'return_policy_info' => 'Return Policy Info [return_policy_info]',
|
868 |
+
'---7' => '',
|
869 |
+
);
|
870 |
+
}
|
871 |
+
|
872 |
/**
|
873 |
* Google Dynamic Ads Attribute List
|
874 |
*
|
includes/classes/class-woo-feed-dropdown.php
CHANGED
@@ -168,6 +168,70 @@ class Woo_Feed_Dropdown {
|
|
168 |
return $taxonomy;
|
169 |
}
|
170 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
171 |
/**
|
172 |
* Get product related post meta keys (filtered)
|
173 |
*
|
@@ -331,6 +395,7 @@ class Woo_Feed_Dropdown {
|
|
331 |
'availability' => esc_html__( 'Availability', 'woo-feed' ),
|
332 |
'availability_date' => esc_html__( 'Availability Date', 'woo-feed'),
|
333 |
'quantity' => esc_html__( 'Quantity', 'woo-feed' ),
|
|
|
334 |
'price' => esc_html__( 'Regular Price', 'woo-feed' ),
|
335 |
'current_price' => esc_html__( 'Price', 'woo-feed' ),
|
336 |
'sale_price' => esc_html__( 'Sale Price', 'woo-feed' ),
|
@@ -753,6 +818,23 @@ class Woo_Feed_Dropdown {
|
|
753 |
return $options;
|
754 |
}
|
755 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
756 |
/**
|
757 |
* Dropdown of Google Local Inventory Ads Template
|
758 |
*
|
@@ -1004,18 +1086,6 @@ class Woo_Feed_Dropdown {
|
|
1004 |
return $options;
|
1005 |
}
|
1006 |
|
1007 |
-
/**
|
1008 |
-
* Facebook Attribute list
|
1009 |
-
* Alias of google attribute dropdown for facebook
|
1010 |
-
*
|
1011 |
-
* @param string $selected
|
1012 |
-
*
|
1013 |
-
* @return string
|
1014 |
-
*/
|
1015 |
-
public function facebookAttributesDropdown( $selected = '' ) {
|
1016 |
-
return $this->googleAttributesDropdown( $selected, [ 'facebook' ] );
|
1017 |
-
}
|
1018 |
-
|
1019 |
/**
|
1020 |
* Pinterest Attribute list
|
1021 |
* Alias of google attribute dropdown for pinterest
|
168 |
return $taxonomy;
|
169 |
}
|
170 |
|
171 |
+
/**
|
172 |
+
* Read txt file which contains facebook taxonomy list
|
173 |
+
*
|
174 |
+
* @param string $selected
|
175 |
+
*
|
176 |
+
* @return string
|
177 |
+
*/
|
178 |
+
public function facebookTaxonomy( $selected = '' ) {
|
179 |
+
// Get All Facebook Taxonomies
|
180 |
+
$fileName = WOO_FEED_FREE_ADMIN_PATH . '/partials/templates/taxonomies/fb_taxonomy.txt';
|
181 |
+
$customTaxonomyFile = fopen( $fileName, 'r' ); // phpcs:ignore
|
182 |
+
$str = '';
|
183 |
+
if ( ! empty( $selected ) ) {
|
184 |
+
$selected = trim( $selected );
|
185 |
+
if ( ! is_numeric( $selected ) ) {
|
186 |
+
$selected = html_entity_decode( $selected );
|
187 |
+
} else {
|
188 |
+
$selected = (int) $selected;
|
189 |
+
}
|
190 |
+
}
|
191 |
+
if ( $customTaxonomyFile ) {
|
192 |
+
// First line contains metadata, ignore it
|
193 |
+
fgets( $customTaxonomyFile ); // phpcs:ignore
|
194 |
+
while ( $line = fgets( $customTaxonomyFile ) ) { // phpcs:ignore
|
195 |
+
list( $catId, $cat ) = explode( ',', $line );
|
196 |
+
$catId = (int) trim( $catId );
|
197 |
+
$cat = trim( $cat );
|
198 |
+
$is_selected = selected( $selected, is_numeric( $selected ) ? $catId : $cat, false );
|
199 |
+
$str .= "<option value='{$catId}' {$is_selected} >{$cat}</option>";
|
200 |
+
}
|
201 |
+
}
|
202 |
+
if ( ! empty( $str ) ) {
|
203 |
+
$str = '<option></option>' . $str;
|
204 |
+
}
|
205 |
+
|
206 |
+
return $str;
|
207 |
+
}
|
208 |
+
|
209 |
+
/**
|
210 |
+
* Read txt file which contains facebook taxonomy list
|
211 |
+
*
|
212 |
+
* @return array
|
213 |
+
*/
|
214 |
+
public function facebookTaxonomyArray() {
|
215 |
+
// Get All Facebook Taxonomies
|
216 |
+
$fileName = WOO_FEED_FREE_ADMIN_PATH . '/partials/templates/taxonomies/fb_taxonomy.txt';
|
217 |
+
$customTaxonomyFile = fopen( $fileName, 'r' ); // phpcs:ignore
|
218 |
+
$taxonomy = array();
|
219 |
+
if ( $customTaxonomyFile ) {
|
220 |
+
// First line contains metadata, ignore it
|
221 |
+
fgets( $customTaxonomyFile ); // phpcs:ignore
|
222 |
+
while ( $line = fgets( $customTaxonomyFile ) ) { // phpcs:ignore
|
223 |
+
list( $catId, $cat ) = explode( ',', $line );
|
224 |
+
$taxonomy[] = array(
|
225 |
+
'value' => absint( trim( $catId ) ),
|
226 |
+
'text' => trim( $cat ),
|
227 |
+
);
|
228 |
+
}
|
229 |
+
}
|
230 |
+
$taxonomy = array_filter( $taxonomy );
|
231 |
+
|
232 |
+
return $taxonomy;
|
233 |
+
}
|
234 |
+
|
235 |
/**
|
236 |
* Get product related post meta keys (filtered)
|
237 |
*
|
395 |
'availability' => esc_html__( 'Availability', 'woo-feed' ),
|
396 |
'availability_date' => esc_html__( 'Availability Date', 'woo-feed'),
|
397 |
'quantity' => esc_html__( 'Quantity', 'woo-feed' ),
|
398 |
+
'currency' => esc_html__( 'Currency', 'woo-feed' ),
|
399 |
'price' => esc_html__( 'Regular Price', 'woo-feed' ),
|
400 |
'current_price' => esc_html__( 'Price', 'woo-feed' ),
|
401 |
'sale_price' => esc_html__( 'Sale Price', 'woo-feed' ),
|
818 |
return $options;
|
819 |
}
|
820 |
|
821 |
+
/**
|
822 |
+
* Dropdown of Facebook Template
|
823 |
+
*
|
824 |
+
* @param string $selected
|
825 |
+
*
|
826 |
+
* @return string
|
827 |
+
*/
|
828 |
+
public function facebookAttributesDropdown( $selected = '' ) {
|
829 |
+
$options = $this->get_cached_dropdown( 'facebookAttributesDropdown', $selected );
|
830 |
+
|
831 |
+
if ( false === $options ) {
|
832 |
+
$attributes = new Woo_Feed_Default_Attributes();
|
833 |
+
return $this->cache_dropdown( 'facebookAttributesDropdown', $attributes->facebookAttributes(), $selected );
|
834 |
+
}
|
835 |
+
return $options;
|
836 |
+
}
|
837 |
+
|
838 |
/**
|
839 |
* Dropdown of Google Local Inventory Ads Template
|
840 |
*
|
1086 |
return $options;
|
1087 |
}
|
1088 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1089 |
/**
|
1090 |
* Pinterest Attribute list
|
1091 |
* Alias of google attribute dropdown for pinterest
|
includes/classes/class-woo-feed-products-v3.php
CHANGED
@@ -162,6 +162,11 @@ class Woo_Feed_Products_v3
|
|
162 |
'section_name',
|
163 |
'attribute_name',
|
164 |
'attribute_value',
|
|
|
|
|
|
|
|
|
|
|
165 |
);
|
166 |
/**
|
167 |
* XML Wrapper Array
|
@@ -217,6 +222,11 @@ class Woo_Feed_Products_v3
|
|
217 |
'section_name',
|
218 |
'attribute_name',
|
219 |
'attribute_value',
|
|
|
|
|
|
|
|
|
|
|
220 |
),
|
221 |
'bing' => array(
|
222 |
'shipping_country',
|
@@ -882,7 +892,11 @@ class Woo_Feed_Products_v3
|
|
882 |
$ins = 0; // Installment Index
|
883 |
$installment = "";
|
884 |
$product_detail = '';
|
|
|
|
|
885 |
$pd = 0;
|
|
|
|
|
886 |
|
887 |
|
888 |
// Format Shipping and Tax data for CSV and TXT feed only for google and facebook
|
@@ -924,6 +938,37 @@ class Woo_Feed_Products_v3
|
|
924 |
$product_detail .= ':' . $output;
|
925 |
}
|
926 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
927 |
if ('installment_months' == $value) {
|
928 |
$ins++;
|
929 |
$installment .= $output;
|
@@ -1061,6 +1106,63 @@ class Woo_Feed_Products_v3
|
|
1061 |
$product_detail .= '<g:attribute_value>' . $output . '</g:attribute_value>' . "\n";
|
1062 |
}
|
1063 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1064 |
if ('installment_months' === $value) {
|
1065 |
if (0 == $ins) {
|
1066 |
$installment .= '<g:installment>';
|
@@ -1079,6 +1181,19 @@ class Woo_Feed_Products_v3
|
|
1079 |
$product_detail .= '</g:product_detail>';
|
1080 |
}
|
1081 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1082 |
if (1 == $s) {
|
1083 |
$shipping .= '</g:shipping>';
|
1084 |
}
|
@@ -2822,6 +2937,22 @@ class Woo_Feed_Products_v3
|
|
2822 |
return apply_filters('woo_feed_filter_product_quantity', $quantity, $product, $this->config);
|
2823 |
}
|
2824 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2825 |
/**
|
2826 |
* Get Store currency code.
|
2827 |
*
|
162 |
'section_name',
|
163 |
'attribute_name',
|
164 |
'attribute_value',
|
165 |
+
'unit_price_value',
|
166 |
+
'unit_price_currency',
|
167 |
+
'unit_price_unit',
|
168 |
+
'additional_variant_label',
|
169 |
+
'additional_variant_value',
|
170 |
);
|
171 |
/**
|
172 |
* XML Wrapper Array
|
222 |
'section_name',
|
223 |
'attribute_name',
|
224 |
'attribute_value',
|
225 |
+
'unit_price_value',
|
226 |
+
'unit_price_currency',
|
227 |
+
'unit_price_unit',
|
228 |
+
'additional_variant_label',
|
229 |
+
'additional_variant_value',
|
230 |
),
|
231 |
'bing' => array(
|
232 |
'shipping_country',
|
892 |
$ins = 0; // Installment Index
|
893 |
$installment = "";
|
894 |
$product_detail = '';
|
895 |
+
$unit_price = '';
|
896 |
+
$additional_variant_attribute = '';
|
897 |
$pd = 0;
|
898 |
+
$up = 0; //Unit Price for facebook
|
899 |
+
$av = 0; //Additional Variant Attribute for facebook
|
900 |
|
901 |
|
902 |
// Format Shipping and Tax data for CSV and TXT feed only for google and facebook
|
938 |
$product_detail .= ':' . $output;
|
939 |
}
|
940 |
|
941 |
+
//facebook nested attributes
|
942 |
+
if( isset($this->config['provider']) && "facebook" === $this->config['provider'] ) {
|
943 |
+
if ('unit_price_value' == $value) {
|
944 |
+
$up++;
|
945 |
+
$unit_price .= $output;
|
946 |
+
}
|
947 |
+
if ('unit_price_currency' == $value) {
|
948 |
+
$unit_price .= ':' . $output;
|
949 |
+
}
|
950 |
+
if ('unit_price_unit' == $value) {
|
951 |
+
$unit_price .= ':' . $output;
|
952 |
+
}
|
953 |
+
|
954 |
+
if ('additional_variant_label' == $value) {
|
955 |
+
$av++;
|
956 |
+
$additional_variant_attribute .= $output;
|
957 |
+
}
|
958 |
+
if ('additional_variant_value' == $value) {
|
959 |
+
$additional_variant_attribute .= ':' . $output;
|
960 |
+
}
|
961 |
+
|
962 |
+
if (0 < $up) {
|
963 |
+
$this->products[$this->pi]["unit_price"] = $unit_price;
|
964 |
+
}
|
965 |
+
|
966 |
+
if (0 < $av) {
|
967 |
+
$this->products[$this->pi]["additional_variant_attribute"] = $additional_variant_attribute;
|
968 |
+
}
|
969 |
+
}
|
970 |
+
|
971 |
+
|
972 |
if ('installment_months' == $value) {
|
973 |
$ins++;
|
974 |
$installment .= $output;
|
1106 |
$product_detail .= '<g:attribute_value>' . $output . '</g:attribute_value>' . "\n";
|
1107 |
}
|
1108 |
|
1109 |
+
if( isset($this->config['provider']) && "facebook" === $this->config['provider'] ) {
|
1110 |
+
|
1111 |
+
// unit_price configure
|
1112 |
+
if ('unit_price_value' == $value) {
|
1113 |
+
if (0 == $up) {
|
1114 |
+
$unit_price .= '<unit_price>';
|
1115 |
+
$up = 1;
|
1116 |
+
} else {
|
1117 |
+
$unit_price .= '</unit_price>' . "\n";
|
1118 |
+
$unit_price .= '<unit_price>';
|
1119 |
+
}
|
1120 |
+
} elseif (!in_array('unit_price_value', $merchantAttributes) && 'unit_price_currency' == $value) {
|
1121 |
+
if (0 == $up) {
|
1122 |
+
$unit_price .= '<unit_price>';
|
1123 |
+
$up = 1;
|
1124 |
+
} else {
|
1125 |
+
$unit_price .= '</unit_price>' . "\n";
|
1126 |
+
$unit_price .= '<unit_price>';
|
1127 |
+
}
|
1128 |
+
}
|
1129 |
+
|
1130 |
+
if ('unit_price_value' == $value) {
|
1131 |
+
$unit_price .= '<value>' . $output . '</value>' . "\n";
|
1132 |
+
} elseif ('unit_price_currency' == $value) {
|
1133 |
+
$unit_price .= '<currency>' . $output . '</currency>' . "\n";
|
1134 |
+
} elseif ('unit_price_unit' == $value) {
|
1135 |
+
$unit_price .= '<unit>' . $output . '</unit>' . "\n";
|
1136 |
+
}
|
1137 |
+
|
1138 |
+
// additional_variant_attribute configure
|
1139 |
+
if ('additional_variant_label' == $value) {
|
1140 |
+
if (0 == $av) {
|
1141 |
+
$additional_variant_attribute .= '<additional_variant_attribute>';
|
1142 |
+
$av = 1;
|
1143 |
+
} else {
|
1144 |
+
$additional_variant_attribute .= '</additional_variant_attribute>' . "\n";
|
1145 |
+
$additional_variant_attribute .= '<additional_variant_attribute>';
|
1146 |
+
}
|
1147 |
+
} elseif (!in_array('additional_variant_label', $merchantAttributes) && 'additional_variant_value' == $value) {
|
1148 |
+
if (0 == $av) {
|
1149 |
+
$additional_variant_attribute .= '<additional_variant_attribute>';
|
1150 |
+
$av = 1;
|
1151 |
+
} else {
|
1152 |
+
$additional_variant_attribute .= '</additional_variant_attribute>' . "\n";
|
1153 |
+
$additional_variant_attribute .= '<additional_variant_attribute>';
|
1154 |
+
}
|
1155 |
+
}
|
1156 |
+
|
1157 |
+
if ('additional_variant_label' == $value) {
|
1158 |
+
$additional_variant_attribute .= '<label>' . $output . '</label>' . "\n";
|
1159 |
+
} elseif ('additional_variant_value' == $value) {
|
1160 |
+
$additional_variant_attribute .= '<value>' . $output . '</value>' . "\n";
|
1161 |
+
}
|
1162 |
+
|
1163 |
+
}
|
1164 |
+
|
1165 |
+
|
1166 |
if ('installment_months' === $value) {
|
1167 |
if (0 == $ins) {
|
1168 |
$installment .= '<g:installment>';
|
1181 |
$product_detail .= '</g:product_detail>';
|
1182 |
}
|
1183 |
|
1184 |
+
if( isset($this->config['provider']) && "facebook" === $this->config['provider'] ) {
|
1185 |
+
if (1 == $up) {
|
1186 |
+
$unit_price .= '</unit_price>';
|
1187 |
+
}
|
1188 |
+
|
1189 |
+
if (1 == $av) {
|
1190 |
+
$additional_variant_attribute .= '</additional_variant_attribute>';
|
1191 |
+
}
|
1192 |
+
|
1193 |
+
$this->feedBody .= $unit_price;
|
1194 |
+
$this->feedBody .= $additional_variant_attribute;
|
1195 |
+
}
|
1196 |
+
|
1197 |
if (1 == $s) {
|
1198 |
$shipping .= '</g:shipping>';
|
1199 |
}
|
2937 |
return apply_filters('woo_feed_filter_product_quantity', $quantity, $product, $this->config);
|
2938 |
}
|
2939 |
|
2940 |
+
/**
|
2941 |
+
* Get Product Currency
|
2942 |
+
*
|
2943 |
+
* @param WC_Product $product
|
2944 |
+
*
|
2945 |
+
* @return mixed
|
2946 |
+
* @since 4.4.39
|
2947 |
+
*
|
2948 |
+
*/
|
2949 |
+
protected function currency($product)
|
2950 |
+
{
|
2951 |
+
$quantity = get_option( 'woocommerce_currency' );
|
2952 |
+
|
2953 |
+
return apply_filters('woo_feed_filter_product_currency', $quantity, $product, $this->config);
|
2954 |
+
}
|
2955 |
+
|
2956 |
/**
|
2957 |
* Get Store currency code.
|
2958 |
*
|
includes/helper.php
CHANGED
@@ -590,12 +590,13 @@ if (!function_exists('woo_feed_merchant_require_google_category')) {
|
|
590 |
'google_shopping_action',
|
591 |
'google_local',
|
592 |
'google_local_inventory',
|
|
|
593 |
'adroll',
|
594 |
'smartly.io',
|
595 |
-
'facebook',
|
596 |
'pinterest',
|
597 |
'rakuten.de',
|
598 |
],
|
|
|
599 |
'google_product_category' => ['rakuten.de'],
|
600 |
'google_category_id' => ['daisycon', 'daisycon_automotive', 'daisycon_books', 'daisycon_cosmetics', 'daisycon_daily_offers', 'daisycon_electronics', 'daisycon_food_drinks', 'daisycon_home_garden', 'daisycon_housing', 'daisycon_fashion', 'daisycon_studies_trainings', 'daisycon_telecom_accessories', 'daisycon_telecom_all_in_one', 'daisycon_telecom_gsm_subscription', 'daisycon_telecom_gsm', 'daisycon_telecom_sim', 'daisycon_magazines', 'daisycon_holidays_accommodations', 'daisycon_holidays_accommodations_and_transport', 'daisycon_holidays_trips', 'daisycon_work_jobs'],
|
601 |
];
|
@@ -3165,6 +3166,10 @@ if (!function_exists('woo_feed_category_mapping')) {
|
|
3165 |
$mappingData = woo_feed_array_sanitize($_POST);
|
3166 |
$oldMapping = maybe_unserialize(get_option($mappingOption, array()));
|
3167 |
|
|
|
|
|
|
|
|
|
3168 |
# Delete product attribute drop-down cache
|
3169 |
delete_transient('__woo_feed_cache_woo_feed_dropdown_product_attributes');
|
3170 |
|
590 |
'google_shopping_action',
|
591 |
'google_local',
|
592 |
'google_local_inventory',
|
593 |
+
'facebook',
|
594 |
'adroll',
|
595 |
'smartly.io',
|
|
|
596 |
'pinterest',
|
597 |
'rakuten.de',
|
598 |
],
|
599 |
+
'fb_product_category' => ['facebook'],
|
600 |
'google_product_category' => ['rakuten.de'],
|
601 |
'google_category_id' => ['daisycon', 'daisycon_automotive', 'daisycon_books', 'daisycon_cosmetics', 'daisycon_daily_offers', 'daisycon_electronics', 'daisycon_food_drinks', 'daisycon_home_garden', 'daisycon_housing', 'daisycon_fashion', 'daisycon_studies_trainings', 'daisycon_telecom_accessories', 'daisycon_telecom_all_in_one', 'daisycon_telecom_gsm_subscription', 'daisycon_telecom_gsm', 'daisycon_telecom_sim', 'daisycon_magazines', 'daisycon_holidays_accommodations', 'daisycon_holidays_accommodations_and_transport', 'daisycon_holidays_trips', 'daisycon_work_jobs'],
|
602 |
];
|
3166 |
$mappingData = woo_feed_array_sanitize($_POST);
|
3167 |
$oldMapping = maybe_unserialize(get_option($mappingOption, array()));
|
3168 |
|
3169 |
+
error_log("mapping name " . $mappingOption);
|
3170 |
+
error_log("mapping data " . print_r($mappingData, true));
|
3171 |
+
error_log("old data " . print_r($oldMapping, true));
|
3172 |
+
|
3173 |
# Delete product attribute drop-down cache
|
3174 |
delete_transient('__woo_feed_cache_woo_feed_dropdown_product_attributes');
|
3175 |
|
includes/template-configs.php
CHANGED
@@ -60,14 +60,14 @@ return array(
|
|
60 |
'limit' => array('','','','','','','','','','','','','','','','','','','','',),
|
61 |
),
|
62 |
'facebook' => array(
|
63 |
-
'mattributes' => array('id','title','description','item_group_id','link','product_type','
|
64 |
-
'prefix' => array('','','','','','','','','','','','','','','','','','',
|
65 |
-
'type' => array('attribute','attribute','attribute','attribute','attribute','attribute','pattern','attribute','pattern','attribute','attribute','attribute','
|
66 |
-
'attributes' => array('id','title','description','item_group_id','link','product_type','','image','','availability','price','current_price','
|
67 |
-
'default' => array('','','','','','','','','new','','',''
|
68 |
-
'suffix' => array('','','','','','','','','','',' ' . $this->currency,' ' . $this->currency,'','','','','','',
|
69 |
-
'output_type' => array('1','1','11','1','1','1','1','1','1','1','6','6','1','1','1','1','1','1',
|
70 |
-
'limit' => array('','','','','','','','','','','','','','','','','','',
|
71 |
),
|
72 |
'pinterest_rss' => array(
|
73 |
'mattributes' => array('title','description','link','image','pubDate','guid',),
|
60 |
'limit' => array('','','','','','','','','','','','','','','','','','','','',),
|
61 |
),
|
62 |
'facebook' => array(
|
63 |
+
'mattributes' => array('id','title','description','item_group_id','link','product_type','fb_product_category','image','condition','availability','price','sale_price','brand','images_1','images_2','images_3','images_4','images_5',),
|
64 |
+
'prefix' => array('','','','','','','','','','','','','','','','','','',),
|
65 |
+
'type' => array('attribute','attribute','attribute','attribute','attribute','attribute','pattern','attribute','pattern','attribute','attribute','attribute','pattern','attribute','attribute','attribute','attribute','attribute',),
|
66 |
+
'attributes' => array('id','title','description','item_group_id','link','product_type','','image','','availability','price','current_price','','image_1','image_2','image_3','image_4','image_5',),
|
67 |
+
'default' => array('','','','','','','','','new','','','',$this->brand_pattern,'','','','','',),
|
68 |
+
'suffix' => array('','','','','','','','','','',' ' . $this->currency,' ' . $this->currency,'','','','','','',),
|
69 |
+
'output_type' => array('1','1','11','1','1','1','1','1','1','1','6','6','1','1','1','1','1','1',),
|
70 |
+
'limit' => array('','','','','','','','','','','','','','','','','','',),
|
71 |
),
|
72 |
'pinterest_rss' => array(
|
73 |
'mattributes' => array('title','description','link','image','pubDate','guid',),
|
languages/woo-feed.pot
CHANGED
@@ -12,11 +12,11 @@ msgstr ""
|
|
12 |
"X-Poedit-KeywordsList: __;_e;_ex:1,2c;_n:1,2;_n_noop:1,2;_nx:1,2,4c;_nx_noop:1,2,3c;_x:1,2c;esc_attr__;esc_attr_e;esc_attr_x:1,2c;esc_html__;esc_html_e;esc_html_x:1,2c\n"
|
13 |
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
14 |
|
15 |
-
#: woo-feed.php:232, woo-feed.php:352, woo-feed.php:427, woo-feed.php:783, woo-feed.php:823, woo-feed.php:843, woo-feed.php:
|
16 |
msgid "Unauthorized Action."
|
17 |
msgstr ""
|
18 |
|
19 |
-
#: woo-feed.php:237, woo-feed.php:356, includes/helper.php:
|
20 |
msgid "Invalid Request."
|
21 |
msgstr ""
|
22 |
|
@@ -64,99 +64,99 @@ msgstr ""
|
|
64 |
msgid "Invalid Merchant"
|
65 |
msgstr ""
|
66 |
|
67 |
-
#: admin/class-woo-feed-admin.php:
|
68 |
msgid "N/A"
|
69 |
msgstr ""
|
70 |
|
71 |
-
#: admin/class-woo-feed-admin.php:
|
72 |
msgid "Generating..."
|
73 |
msgstr ""
|
74 |
|
75 |
-
#: admin/class-woo-feed-admin.php:
|
76 |
msgid "Learn More.."
|
77 |
msgstr ""
|
78 |
|
79 |
-
#: admin/class-woo-feed-admin.php:
|
80 |
msgid "Select A Category"
|
81 |
msgstr ""
|
82 |
|
83 |
-
#: admin/class-woo-feed-admin.php:
|
84 |
msgid "Loading Template..."
|
85 |
msgstr ""
|
86 |
|
87 |
-
#: admin/class-woo-feed-admin.php:
|
88 |
msgid "Delivering Configuration..."
|
89 |
msgstr ""
|
90 |
|
91 |
-
#: admin/class-woo-feed-admin.php:
|
92 |
msgid "Saving Configuration..."
|
93 |
msgstr ""
|
94 |
|
95 |
-
#: admin/class-woo-feed-admin.php:
|
96 |
msgid "Wait! Checking Extensions ..."
|
97 |
msgstr ""
|
98 |
|
99 |
-
#: admin/class-woo-feed-admin.php:
|
100 |
msgid "Warning! Enable PHP ssh2 extension to use SFTP. Contact your server administrator."
|
101 |
msgstr ""
|
102 |
|
103 |
-
#: admin/class-woo-feed-admin.php:
|
104 |
msgid "SFTP Available!"
|
105 |
msgstr ""
|
106 |
|
107 |
-
#: admin/class-woo-feed-admin.php:
|
108 |
msgid "Please add one or more items to continue."
|
109 |
msgstr ""
|
110 |
|
111 |
-
#: admin/class-woo-feed-admin.php:
|
112 |
msgid "Are you sure you want to delete this item?"
|
113 |
msgstr ""
|
114 |
|
115 |
-
#: admin/class-woo-feed-admin.php:
|
116 |
msgid "Are you sure you want to delete selected items?"
|
117 |
msgstr ""
|
118 |
|
119 |
-
#: admin/class-woo-feed-admin.php:
|
120 |
msgid "There was an error processing ajax request."
|
121 |
msgstr ""
|
122 |
|
123 |
-
#: admin/class-woo-feed-admin.php:
|
124 |
msgid "Get Pro"
|
125 |
msgstr ""
|
126 |
|
127 |
-
#: admin/class-woo-feed-admin.php:
|
128 |
msgid "Docs"
|
129 |
msgstr ""
|
130 |
|
131 |
-
#: admin/class-woo-feed-admin.php:
|
132 |
msgid "Settings"
|
133 |
msgstr ""
|
134 |
|
135 |
-
#: admin/class-woo-feed-admin.php:
|
136 |
msgid "CTX Feed"
|
137 |
msgstr ""
|
138 |
|
139 |
-
#: admin/class-woo-feed-admin.php:
|
140 |
msgid "Manage Feeds"
|
141 |
msgstr ""
|
142 |
|
143 |
-
#: admin/class-woo-feed-admin.php:
|
144 |
msgid "Make Feed"
|
145 |
msgstr ""
|
146 |
|
147 |
-
#: admin/class-woo-feed-admin.php:
|
148 |
msgid "Category Mapping"
|
149 |
msgstr ""
|
150 |
|
151 |
-
#: admin/class-woo-feed-admin.php:
|
152 |
msgid "WP Options"
|
153 |
msgstr ""
|
154 |
|
155 |
-
#: admin/class-woo-feed-admin.php:
|
156 |
msgid "Status"
|
157 |
msgstr ""
|
158 |
|
159 |
-
#: admin/class-woo-feed-admin.php:
|
160 |
msgid "Documentation"
|
161 |
msgstr ""
|
162 |
|
@@ -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:
|
172 |
msgid "Edit"
|
173 |
msgstr ""
|
174 |
|
@@ -227,7 +227,7 @@ msgstr ""
|
|
227 |
msgid "Copy To Clipboard"
|
228 |
msgstr ""
|
229 |
|
230 |
-
#: admin/class-woo-feed-manage-list.php:117, includes/helper.php:
|
231 |
msgid "View"
|
232 |
msgstr ""
|
233 |
|
@@ -433,307 +433,307 @@ msgstr ""
|
|
433 |
msgid "1 Month"
|
434 |
msgstr ""
|
435 |
|
436 |
-
#: includes/helper.php:426, includes/helper.php:
|
437 |
msgid "1 Week"
|
438 |
msgstr ""
|
439 |
|
440 |
-
#: includes/helper.php:427, includes/helper.php:
|
441 |
msgid "24 Hours"
|
442 |
msgstr ""
|
443 |
|
444 |
-
#: includes/helper.php:428, includes/helper.php:
|
445 |
msgid "12 Hours"
|
446 |
msgstr ""
|
447 |
|
448 |
-
#: includes/helper.php:429, includes/helper.php:
|
449 |
msgid "6 Hours"
|
450 |
msgstr ""
|
451 |
|
452 |
-
#: includes/helper.php:430, includes/helper.php:
|
453 |
msgid "1 Hours"
|
454 |
msgstr ""
|
455 |
|
456 |
-
#: includes/helper.php:
|
457 |
msgid "Watch Now"
|
458 |
msgstr ""
|
459 |
|
460 |
-
#: includes/helper.php:
|
461 |
msgid "Read Article"
|
462 |
msgstr ""
|
463 |
|
464 |
-
#: includes/helper.php:
|
465 |
msgid "Support Docs:"
|
466 |
msgstr ""
|
467 |
|
468 |
-
#: includes/helper.php:
|
469 |
msgid "Supported File Types:"
|
470 |
msgstr ""
|
471 |
|
472 |
-
#: includes/helper.php:
|
473 |
msgid "Video Documentation:"
|
474 |
msgstr ""
|
475 |
|
476 |
-
#: includes/helper.php:
|
477 |
msgid "Watch now"
|
478 |
msgstr ""
|
479 |
|
480 |
-
#: includes/helper.php:
|
481 |
msgid "Feed Specification:"
|
482 |
msgstr ""
|
483 |
|
484 |
-
#: includes/helper.php:
|
485 |
msgid "Open Feed File"
|
486 |
msgstr ""
|
487 |
|
488 |
-
#: includes/helper.php:
|
489 |
msgid "Invalid Request"
|
490 |
msgstr ""
|
491 |
|
492 |
-
#: includes/helper.php:
|
493 |
msgid "Empty File Uploaded. Try again."
|
494 |
msgstr ""
|
495 |
|
496 |
-
#: includes/helper.php:
|
497 |
msgid "Empty File"
|
498 |
msgstr ""
|
499 |
|
500 |
-
#: includes/helper.php:
|
501 |
msgid "« Back"
|
502 |
msgstr ""
|
503 |
|
504 |
-
#: includes/helper.php:
|
505 |
msgid "Unable to read file content"
|
506 |
msgstr ""
|
507 |
|
508 |
-
#: includes/helper.php:
|
509 |
msgid "Invalid File"
|
510 |
msgstr ""
|
511 |
|
512 |
-
#: includes/helper.php:
|
513 |
msgid "Unable to read data from file."
|
514 |
msgstr ""
|
515 |
|
516 |
-
#: includes/helper.php:
|
517 |
msgid "Unable to read file info."
|
518 |
msgstr ""
|
519 |
|
520 |
-
#: includes/helper.php:
|
521 |
msgid "Unable to read feed data from file."
|
522 |
msgstr ""
|
523 |
|
524 |
-
#: includes/helper.php:
|
525 |
msgid "Unable to verify the file."
|
526 |
msgstr ""
|
527 |
|
528 |
-
#: includes/helper.php:
|
529 |
msgid "Invalid or corrupted config file."
|
530 |
msgstr ""
|
531 |
|
532 |
-
#: includes/helper.php:
|
533 |
msgid " Imported"
|
534 |
msgstr ""
|
535 |
|
536 |
-
#: includes/helper.php:
|
537 |
msgid "Brand"
|
538 |
msgstr ""
|
539 |
|
540 |
-
#: includes/helper.php:
|
541 |
msgid "GTIN"
|
542 |
msgstr ""
|
543 |
|
544 |
-
#: includes/helper.php:
|
545 |
msgid "MPN"
|
546 |
msgstr ""
|
547 |
|
548 |
-
#: includes/helper.php:
|
549 |
msgid "EAN"
|
550 |
msgstr ""
|
551 |
|
552 |
-
#: includes/helper.php:
|
553 |
msgid "ISBN"
|
554 |
msgstr ""
|
555 |
|
556 |
-
#: includes/helper.php:
|
557 |
msgid "Age group"
|
558 |
msgstr ""
|
559 |
|
560 |
-
#: includes/helper.php:
|
561 |
msgid "Gender"
|
562 |
msgstr ""
|
563 |
|
564 |
-
#: includes/helper.php:
|
565 |
msgid "Material"
|
566 |
msgstr ""
|
567 |
|
568 |
-
#: includes/helper.php:
|
569 |
msgid "Cost of good sold"
|
570 |
msgstr ""
|
571 |
|
572 |
-
#: includes/helper.php:
|
573 |
msgid "Availability Date"
|
574 |
msgstr ""
|
575 |
|
576 |
-
#: includes/helper.php:
|
577 |
msgid "Unit"
|
578 |
msgstr ""
|
579 |
|
580 |
-
#: includes/helper.php:
|
581 |
msgid "Unit Price Measure"
|
582 |
msgstr ""
|
583 |
|
584 |
-
#: includes/helper.php:
|
585 |
msgid "Unit Price Base Measure"
|
586 |
msgstr ""
|
587 |
|
588 |
-
#: includes/helper.php:
|
589 |
msgid "Custom field 0"
|
590 |
msgstr ""
|
591 |
|
592 |
-
#: includes/helper.php:
|
593 |
msgid "Custom field 1"
|
594 |
msgstr ""
|
595 |
|
596 |
-
#: includes/helper.php:
|
597 |
msgid "Custom field 2"
|
598 |
msgstr ""
|
599 |
|
600 |
-
#: includes/helper.php:
|
601 |
msgid "Custom field 3"
|
602 |
msgstr ""
|
603 |
|
604 |
-
#: includes/helper.php:
|
605 |
msgid "Custom field 4"
|
606 |
msgstr ""
|
607 |
|
608 |
-
#: includes/helper.php:
|
609 |
msgid "CUSTOM FIELDS by CTX Feed"
|
610 |
msgstr ""
|
611 |
|
612 |
-
#: includes/helper.php:
|
613 |
msgid "Set product "
|
614 |
msgstr ""
|
615 |
|
616 |
-
#: includes/helper.php:
|
617 |
msgid " here."
|
618 |
msgstr ""
|
619 |
|
620 |
-
#: includes/helper.php:
|
621 |
msgid "Another category mapping exists with the same name."
|
622 |
msgstr ""
|
623 |
|
624 |
-
#: includes/helper.php:
|
625 |
msgid "Failed To Add Mapping"
|
626 |
msgstr ""
|
627 |
|
628 |
-
#: includes/helper.php:
|
629 |
msgid "Mapping Added Successfully"
|
630 |
msgstr ""
|
631 |
|
632 |
-
#: includes/helper.php:
|
633 |
msgid "Mapping Not Changed"
|
634 |
msgstr ""
|
635 |
|
636 |
-
#: includes/helper.php:
|
637 |
msgid "Failed To Updated Mapping"
|
638 |
msgstr ""
|
639 |
|
640 |
-
#: includes/helper.php:
|
641 |
msgid "Mapping Updated Successfully"
|
642 |
msgstr ""
|
643 |
|
644 |
-
#: includes/helper.php:
|
645 |
msgid "Copy this category to subcategories"
|
646 |
msgstr ""
|
647 |
|
648 |
-
#: includes/helper.php:
|
649 |
msgid "Clear Cache"
|
650 |
msgstr ""
|
651 |
|
652 |
-
#: includes/helper.php:
|
653 |
msgid "Something is wrong."
|
654 |
msgstr ""
|
655 |
|
656 |
-
#: includes/helper.php:
|
657 |
msgid "User meta updated successfully."
|
658 |
msgstr ""
|
659 |
|
660 |
-
#: includes/helper.php:
|
661 |
msgid "by CTX Feed"
|
662 |
msgstr ""
|
663 |
|
664 |
-
#: includes/helper.php:
|
665 |
msgid "All"
|
666 |
msgstr ""
|
667 |
|
668 |
-
#: includes/helper.php:
|
669 |
msgid "Parent"
|
670 |
msgstr ""
|
671 |
|
672 |
-
#: includes/helper.php:
|
673 |
msgid "Parent:"
|
674 |
msgstr ""
|
675 |
|
676 |
-
#: includes/helper.php:
|
677 |
msgid "New"
|
678 |
msgstr ""
|
679 |
|
680 |
-
#: includes/helper.php:
|
681 |
msgid "Name"
|
682 |
msgstr ""
|
683 |
|
684 |
-
#: includes/helper.php:
|
685 |
msgid "Add New"
|
686 |
msgstr ""
|
687 |
|
688 |
-
#: includes/helper.php:
|
689 |
msgid "Update"
|
690 |
msgstr ""
|
691 |
|
692 |
-
#: includes/helper.php:
|
693 |
msgid "Separate"
|
694 |
msgstr ""
|
695 |
|
696 |
-
#: includes/helper.php:
|
697 |
msgid "with commas"
|
698 |
msgstr ""
|
699 |
|
700 |
-
#: includes/helper.php:
|
701 |
msgid "Search"
|
702 |
msgstr ""
|
703 |
|
704 |
-
#: includes/helper.php:
|
705 |
msgid "Add or remove"
|
706 |
msgstr ""
|
707 |
|
708 |
-
#: includes/helper.php:
|
709 |
msgid "Choose from the most used"
|
710 |
msgstr ""
|
711 |
|
712 |
-
#: includes/helper.php:
|
713 |
msgid "Option Successfully Added."
|
714 |
msgstr ""
|
715 |
|
716 |
-
#: includes/helper.php:
|
717 |
msgid "Option Already Added."
|
718 |
msgstr ""
|
719 |
|
720 |
-
#: includes/helper.php:
|
721 |
msgid "Delivery up to 30 days"
|
722 |
msgstr ""
|
723 |
|
724 |
-
#: includes/helper.php:
|
725 |
msgid "Delivery 1 to 3 days"
|
726 |
msgstr ""
|
727 |
|
728 |
-
#: includes/helper.php:
|
729 |
msgid "Feed data is empty. Can't duplicate feed."
|
730 |
msgstr ""
|
731 |
|
732 |
-
#: includes/helper.php:
|
733 |
msgid "Unable to save the duplicate feed data."
|
734 |
msgstr ""
|
735 |
|
736 |
-
#: includes/helper.php:
|
737 |
msgid "Feed Successfully Duplicated, but unable to generate the data file. Please click the \"Regenerate Button\""
|
738 |
msgstr ""
|
739 |
|
@@ -906,19 +906,19 @@ msgstr ""
|
|
906 |
msgid "Command"
|
907 |
msgstr ""
|
908 |
|
909 |
-
#: admin/partials/woo-feed-edit-config.php:53, admin/partials/woo-feed-edit-config.php:
|
910 |
msgid "Attribute"
|
911 |
msgstr ""
|
912 |
|
913 |
-
#: admin/partials/woo-feed-edit-config.php:54, admin/partials/woo-feed-edit-config.php:
|
914 |
msgid "Pattern (Static Value)"
|
915 |
msgstr ""
|
916 |
|
917 |
-
#: admin/partials/woo-feed-edit-config.php:
|
918 |
msgid "Select Output Type"
|
919 |
msgstr ""
|
920 |
|
921 |
-
#: admin/partials/woo-feed-edit-config.php:
|
922 |
msgid "Add New Attribute"
|
923 |
msgstr ""
|
924 |
|
@@ -1376,419 +1376,423 @@ msgstr ""
|
|
1376 |
msgid "Settings Updated."
|
1377 |
msgstr ""
|
1378 |
|
1379 |
-
#: includes/classes/class-woo-feed-dropdown.php:
|
1380 |
msgid "Primary Attributes"
|
1381 |
msgstr ""
|
1382 |
|
1383 |
-
#: includes/classes/class-woo-feed-dropdown.php:
|
1384 |
msgid "Product Id"
|
1385 |
msgstr ""
|
1386 |
|
1387 |
-
#: includes/classes/class-woo-feed-dropdown.php:
|
1388 |
msgid "Product Title"
|
1389 |
msgstr ""
|
1390 |
|
1391 |
-
#: includes/classes/class-woo-feed-dropdown.php:
|
1392 |
msgid "Parent Title"
|
1393 |
msgstr ""
|
1394 |
|
1395 |
-
#: includes/classes/class-woo-feed-dropdown.php:
|
1396 |
msgid "Product Description"
|
1397 |
msgstr ""
|
1398 |
|
1399 |
-
#: includes/classes/class-woo-feed-dropdown.php:
|
1400 |
msgid "Product Description (with HTML)"
|
1401 |
msgstr ""
|
1402 |
|
1403 |
-
#: includes/classes/class-woo-feed-dropdown.php:
|
1404 |
msgid "Product Short Description"
|
1405 |
msgstr ""
|
1406 |
|
1407 |
-
#: includes/classes/class-woo-feed-dropdown.php:
|
1408 |
msgid "Parent Category"
|
1409 |
msgstr ""
|
1410 |
|
1411 |
-
#: includes/classes/class-woo-feed-dropdown.php:
|
1412 |
msgid "Parent Category ID"
|
1413 |
msgstr ""
|
1414 |
|
1415 |
-
#: includes/classes/class-woo-feed-dropdown.php:
|
1416 |
msgid "Child Category"
|
1417 |
msgstr ""
|
1418 |
|
1419 |
-
#: includes/classes/class-woo-feed-dropdown.php:
|
1420 |
msgid "Child Category ID"
|
1421 |
msgstr ""
|
1422 |
|
1423 |
-
#: includes/classes/class-woo-feed-dropdown.php:
|
1424 |
msgid "Product Category [Category Path]"
|
1425 |
msgstr ""
|
1426 |
|
1427 |
-
#: includes/classes/class-woo-feed-dropdown.php:
|
1428 |
msgid "Product Full Category [Category Full Path]"
|
1429 |
msgstr ""
|
1430 |
|
1431 |
-
#: includes/classes/class-woo-feed-dropdown.php:
|
1432 |
msgid "Product URL"
|
1433 |
msgstr ""
|
1434 |
|
1435 |
-
#: includes/classes/class-woo-feed-dropdown.php:
|
1436 |
msgid "Parent URL"
|
1437 |
msgstr ""
|
1438 |
|
1439 |
-
#: includes/classes/class-woo-feed-dropdown.php:
|
1440 |
msgid "Canonical URL"
|
1441 |
msgstr ""
|
1442 |
|
1443 |
-
#: includes/classes/class-woo-feed-dropdown.php:
|
1444 |
msgid "External Product URL"
|
1445 |
msgstr ""
|
1446 |
|
1447 |
-
#: includes/classes/class-woo-feed-dropdown.php:
|
1448 |
msgid "Add to Cart URL"
|
1449 |
msgstr ""
|
1450 |
|
1451 |
-
#: includes/classes/class-woo-feed-dropdown.php:
|
1452 |
msgid "Parent Id [Group Id]"
|
1453 |
msgstr ""
|
1454 |
|
1455 |
-
#: includes/classes/class-woo-feed-dropdown.php:
|
1456 |
msgid "SKU"
|
1457 |
msgstr ""
|
1458 |
|
1459 |
-
#: includes/classes/class-woo-feed-dropdown.php:
|
1460 |
msgid "SKU_ID"
|
1461 |
msgstr ""
|
1462 |
|
1463 |
-
#: includes/classes/class-woo-feed-dropdown.php:
|
1464 |
msgid "Parent SKU"
|
1465 |
msgstr ""
|
1466 |
|
1467 |
-
#: includes/classes/class-woo-feed-dropdown.php:
|
1468 |
msgid "Availability"
|
1469 |
msgstr ""
|
1470 |
|
1471 |
-
#: includes/classes/class-woo-feed-dropdown.php:
|
1472 |
msgid "Quantity"
|
1473 |
msgstr ""
|
1474 |
|
1475 |
-
#: includes/classes/class-woo-feed-dropdown.php:
|
|
|
|
|
|
|
|
|
1476 |
msgid "Regular Price"
|
1477 |
msgstr ""
|
1478 |
|
1479 |
-
#: includes/classes/class-woo-feed-dropdown.php:
|
1480 |
msgid "Price"
|
1481 |
msgstr ""
|
1482 |
|
1483 |
-
#: includes/classes/class-woo-feed-dropdown.php:
|
1484 |
msgid "Sale Price"
|
1485 |
msgstr ""
|
1486 |
|
1487 |
-
#: includes/classes/class-woo-feed-dropdown.php:
|
1488 |
msgid "Regular Price With Tax"
|
1489 |
msgstr ""
|
1490 |
|
1491 |
-
#: includes/classes/class-woo-feed-dropdown.php:
|
1492 |
msgid "Price With Tax"
|
1493 |
msgstr ""
|
1494 |
|
1495 |
-
#: includes/classes/class-woo-feed-dropdown.php:
|
1496 |
msgid "Sale Price With Tax"
|
1497 |
msgstr ""
|
1498 |
|
1499 |
-
#: includes/classes/class-woo-feed-dropdown.php:
|
1500 |
msgid "Sale Start Date"
|
1501 |
msgstr ""
|
1502 |
|
1503 |
-
#: includes/classes/class-woo-feed-dropdown.php:
|
1504 |
msgid "Sale End Date"
|
1505 |
msgstr ""
|
1506 |
|
1507 |
-
#: includes/classes/class-woo-feed-dropdown.php:
|
1508 |
msgid "Reviewer Name"
|
1509 |
msgstr ""
|
1510 |
|
1511 |
-
#: includes/classes/class-woo-feed-dropdown.php:
|
1512 |
msgid "Weight"
|
1513 |
msgstr ""
|
1514 |
|
1515 |
-
#: includes/classes/class-woo-feed-dropdown.php:
|
1516 |
msgid "Weight Unit"
|
1517 |
msgstr ""
|
1518 |
|
1519 |
-
#: includes/classes/class-woo-feed-dropdown.php:
|
1520 |
msgid "Width"
|
1521 |
msgstr ""
|
1522 |
|
1523 |
-
#: includes/classes/class-woo-feed-dropdown.php:
|
1524 |
msgid "Height"
|
1525 |
msgstr ""
|
1526 |
|
1527 |
-
#: includes/classes/class-woo-feed-dropdown.php:
|
1528 |
msgid "Length"
|
1529 |
msgstr ""
|
1530 |
|
1531 |
-
#: includes/classes/class-woo-feed-dropdown.php:
|
1532 |
msgid "Shipping (Google Format)"
|
1533 |
msgstr ""
|
1534 |
|
1535 |
-
#: includes/classes/class-woo-feed-dropdown.php:
|
1536 |
msgid "Shipping Cost"
|
1537 |
msgstr ""
|
1538 |
|
1539 |
-
#: includes/classes/class-woo-feed-dropdown.php:
|
1540 |
msgid "Shipping Class"
|
1541 |
msgstr ""
|
1542 |
|
1543 |
-
#: includes/classes/class-woo-feed-dropdown.php:
|
1544 |
msgid "Product Type"
|
1545 |
msgstr ""
|
1546 |
|
1547 |
-
#: includes/classes/class-woo-feed-dropdown.php:
|
1548 |
msgid "Variation Type"
|
1549 |
msgstr ""
|
1550 |
|
1551 |
-
#: includes/classes/class-woo-feed-dropdown.php:
|
1552 |
msgid "Visibility"
|
1553 |
msgstr ""
|
1554 |
|
1555 |
-
#: includes/classes/class-woo-feed-dropdown.php:
|
1556 |
msgid "Total Rating"
|
1557 |
msgstr ""
|
1558 |
|
1559 |
-
#: includes/classes/class-woo-feed-dropdown.php:
|
1560 |
msgid "Average Rating"
|
1561 |
msgstr ""
|
1562 |
|
1563 |
-
#: includes/classes/class-woo-feed-dropdown.php:
|
1564 |
msgid "Tags"
|
1565 |
msgstr ""
|
1566 |
|
1567 |
-
#: includes/classes/class-woo-feed-dropdown.php:
|
1568 |
msgid "Sale Price Effective Date"
|
1569 |
msgstr ""
|
1570 |
|
1571 |
-
#: includes/classes/class-woo-feed-dropdown.php:
|
1572 |
msgid "Is Bundle"
|
1573 |
msgstr ""
|
1574 |
|
1575 |
-
#: includes/classes/class-woo-feed-dropdown.php:
|
1576 |
msgid "Author Name"
|
1577 |
msgstr ""
|
1578 |
|
1579 |
-
#: includes/classes/class-woo-feed-dropdown.php:
|
1580 |
msgid "Author Email"
|
1581 |
msgstr ""
|
1582 |
|
1583 |
-
#: includes/classes/class-woo-feed-dropdown.php:
|
1584 |
msgid "Date Created"
|
1585 |
msgstr ""
|
1586 |
|
1587 |
-
#: includes/classes/class-woo-feed-dropdown.php:
|
1588 |
msgid "Date Updated"
|
1589 |
msgstr ""
|
1590 |
|
1591 |
-
#: includes/classes/class-woo-feed-dropdown.php:
|
1592 |
msgid "Tax"
|
1593 |
msgstr ""
|
1594 |
|
1595 |
-
#: includes/classes/class-woo-feed-dropdown.php:
|
1596 |
msgid "Tax Class"
|
1597 |
msgstr ""
|
1598 |
|
1599 |
-
#: includes/classes/class-woo-feed-dropdown.php:
|
1600 |
msgid "Tax Status"
|
1601 |
msgstr ""
|
1602 |
|
1603 |
-
#: includes/classes/class-woo-feed-dropdown.php:
|
1604 |
msgid "Custom Fields by CTX Feed"
|
1605 |
msgstr ""
|
1606 |
|
1607 |
-
#: includes/classes/class-woo-feed-dropdown.php:
|
1608 |
msgid "Subscription & Installment"
|
1609 |
msgstr ""
|
1610 |
|
1611 |
-
#: includes/classes/class-woo-feed-dropdown.php:
|
1612 |
msgid "Subscription Period"
|
1613 |
msgstr ""
|
1614 |
|
1615 |
-
#: includes/classes/class-woo-feed-dropdown.php:
|
1616 |
msgid "Subscription Period Length"
|
1617 |
msgstr ""
|
1618 |
|
1619 |
-
#: includes/classes/class-woo-feed-dropdown.php:
|
1620 |
msgid "Subscription Amount"
|
1621 |
msgstr ""
|
1622 |
|
1623 |
-
#: includes/classes/class-woo-feed-dropdown.php:
|
1624 |
msgid "Installment Months"
|
1625 |
msgstr ""
|
1626 |
|
1627 |
-
#: includes/classes/class-woo-feed-dropdown.php:
|
1628 |
msgid "Installment Amount"
|
1629 |
msgstr ""
|
1630 |
|
1631 |
-
#: includes/classes/class-woo-feed-dropdown.php:
|
1632 |
msgid "Unit Price"
|
1633 |
msgstr ""
|
1634 |
|
1635 |
-
#: includes/classes/class-woo-feed-dropdown.php:
|
1636 |
msgid "WooCommerce Germanized"
|
1637 |
msgstr ""
|
1638 |
|
1639 |
-
#: includes/classes/class-woo-feed-dropdown.php:
|
1640 |
msgid "ALL IN ONE SEO"
|
1641 |
msgstr ""
|
1642 |
|
1643 |
-
#: includes/classes/class-woo-feed-dropdown.php:
|
1644 |
msgid "Title [All in One SEO]"
|
1645 |
msgstr ""
|
1646 |
|
1647 |
-
#: includes/classes/class-woo-feed-dropdown.php:
|
1648 |
msgid "Description [All in One SEO]"
|
1649 |
msgstr ""
|
1650 |
|
1651 |
-
#: includes/classes/class-woo-feed-dropdown.php:
|
1652 |
msgid "Canonical URL [All in One SEO]"
|
1653 |
msgstr ""
|
1654 |
|
1655 |
-
#: includes/classes/class-woo-feed-dropdown.php:
|
1656 |
msgid "Yoast SEO"
|
1657 |
msgstr ""
|
1658 |
|
1659 |
-
#: includes/classes/class-woo-feed-dropdown.php:
|
1660 |
msgid "Title [Yoast SEO]"
|
1661 |
msgstr ""
|
1662 |
|
1663 |
-
#: includes/classes/class-woo-feed-dropdown.php:
|
1664 |
msgid "Description [Yoast SEO]"
|
1665 |
msgstr ""
|
1666 |
|
1667 |
-
#: includes/classes/class-woo-feed-dropdown.php:
|
1668 |
msgid "Canonical URL [Yoast SEO]"
|
1669 |
msgstr ""
|
1670 |
|
1671 |
-
#: includes/classes/class-woo-feed-dropdown.php:
|
1672 |
msgid "GTIN8 [Yoast SEO]"
|
1673 |
msgstr ""
|
1674 |
|
1675 |
-
#: includes/classes/class-woo-feed-dropdown.php:
|
1676 |
msgid "GTIN12 / UPC [Yoast SEO]"
|
1677 |
msgstr ""
|
1678 |
|
1679 |
-
#: includes/classes/class-woo-feed-dropdown.php:
|
1680 |
msgid "GTIN13 / EAN [Yoast SEO]"
|
1681 |
msgstr ""
|
1682 |
|
1683 |
-
#: includes/classes/class-woo-feed-dropdown.php:
|
1684 |
msgid "GTIN14 / ITF-14 [Yoast SEO]"
|
1685 |
msgstr ""
|
1686 |
|
1687 |
-
#: includes/classes/class-woo-feed-dropdown.php:
|
1688 |
msgid "ISBN [Yoast SEO]"
|
1689 |
msgstr ""
|
1690 |
|
1691 |
-
#: includes/classes/class-woo-feed-dropdown.php:
|
1692 |
msgid "MPN [Yoast SEO]"
|
1693 |
msgstr ""
|
1694 |
|
1695 |
-
#: includes/classes/class-woo-feed-dropdown.php:
|
1696 |
msgid "Rank Math SEO"
|
1697 |
msgstr ""
|
1698 |
|
1699 |
-
#: includes/classes/class-woo-feed-dropdown.php:
|
1700 |
msgid "Title [RankMath SEO]"
|
1701 |
msgstr ""
|
1702 |
|
1703 |
-
#: includes/classes/class-woo-feed-dropdown.php:
|
1704 |
msgid "Description [RankMath SEO]"
|
1705 |
msgstr ""
|
1706 |
|
1707 |
-
#: includes/classes/class-woo-feed-dropdown.php:
|
1708 |
msgid "Canonical URL [RankMath SEO]"
|
1709 |
msgstr ""
|
1710 |
|
1711 |
-
#: includes/classes/class-woo-feed-dropdown.php:
|
1712 |
msgid "GTIN [RankMath Pro SEO]"
|
1713 |
msgstr ""
|
1714 |
|
1715 |
-
#: includes/classes/class-woo-feed-dropdown.php:
|
1716 |
msgid "Image Attributes"
|
1717 |
msgstr ""
|
1718 |
|
1719 |
-
#: includes/classes/class-woo-feed-dropdown.php:
|
1720 |
msgid "Main Image"
|
1721 |
msgstr ""
|
1722 |
|
1723 |
-
#: includes/classes/class-woo-feed-dropdown.php:
|
1724 |
msgid "Featured Image"
|
1725 |
msgstr ""
|
1726 |
|
1727 |
-
#: includes/classes/class-woo-feed-dropdown.php:
|
1728 |
msgid "Images [Comma Separated]"
|
1729 |
msgstr ""
|
1730 |
|
1731 |
-
#: includes/classes/class-woo-feed-dropdown.php:
|
1732 |
msgid "Additional Image 1"
|
1733 |
msgstr ""
|
1734 |
|
1735 |
-
#: includes/classes/class-woo-feed-dropdown.php:
|
1736 |
msgid "Additional Image 2"
|
1737 |
msgstr ""
|
1738 |
|
1739 |
-
#: includes/classes/class-woo-feed-dropdown.php:
|
1740 |
msgid "Additional Image 3"
|
1741 |
msgstr ""
|
1742 |
|
1743 |
-
#: includes/classes/class-woo-feed-dropdown.php:
|
1744 |
msgid "Additional Image 4"
|
1745 |
msgstr ""
|
1746 |
|
1747 |
-
#: includes/classes/class-woo-feed-dropdown.php:
|
1748 |
msgid "Additional Image 5"
|
1749 |
msgstr ""
|
1750 |
|
1751 |
-
#: includes/classes/class-woo-feed-dropdown.php:
|
1752 |
msgid "Additional Image 6"
|
1753 |
msgstr ""
|
1754 |
|
1755 |
-
#: includes/classes/class-woo-feed-dropdown.php:
|
1756 |
msgid "Additional Image 7"
|
1757 |
msgstr ""
|
1758 |
|
1759 |
-
#: includes/classes/class-woo-feed-dropdown.php:
|
1760 |
msgid "Additional Image 8"
|
1761 |
msgstr ""
|
1762 |
|
1763 |
-
#: includes/classes/class-woo-feed-dropdown.php:
|
1764 |
msgid "Additional Image 9"
|
1765 |
msgstr ""
|
1766 |
|
1767 |
-
#: includes/classes/class-woo-feed-dropdown.php:
|
1768 |
msgid "Additional Image 10"
|
1769 |
msgstr ""
|
1770 |
|
1771 |
-
#: includes/classes/class-woo-feed-dropdown.php:
|
1772 |
msgid "Product Attributes"
|
1773 |
msgstr ""
|
1774 |
|
1775 |
-
#: includes/classes/class-woo-feed-dropdown.php:
|
1776 |
msgid "Product Custom Attributes"
|
1777 |
msgstr ""
|
1778 |
|
1779 |
-
#: includes/classes/class-woo-feed-dropdown.php:
|
1780 |
msgid "Product Taxonomies"
|
1781 |
msgstr ""
|
1782 |
|
1783 |
-
#: includes/classes/class-woo-feed-dropdown.php:
|
1784 |
msgid "Category Mappings"
|
1785 |
msgstr ""
|
1786 |
|
1787 |
-
#: includes/classes/class-woo-feed-dropdown.php:
|
1788 |
msgid "Custom Fields & Post Metas (Premium)"
|
1789 |
msgstr ""
|
1790 |
|
1791 |
-
#: includes/classes/class-woo-feed-dropdown.php:
|
1792 |
msgid "Select Attributes"
|
1793 |
msgstr ""
|
1794 |
|
12 |
"X-Poedit-KeywordsList: __;_e;_ex:1,2c;_n:1,2;_n_noop:1,2;_nx:1,2,4c;_nx_noop:1,2,3c;_x:1,2c;esc_attr__;esc_attr_e;esc_attr_x:1,2c;esc_html__;esc_html_e;esc_html_x:1,2c\n"
|
13 |
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
14 |
|
15 |
+
#: woo-feed.php:232, woo-feed.php:352, woo-feed.php:427, woo-feed.php:783, woo-feed.php:823, woo-feed.php:843, woo-feed.php:863, woo-feed.php:889
|
16 |
msgid "Unauthorized Action."
|
17 |
msgstr ""
|
18 |
|
19 |
+
#: woo-feed.php:237, woo-feed.php:356, includes/helper.php:853, includes/helper.php:1904, includes/helper.php:2945, includes/helper.php:2974, includes/helper.php:3366, includes/helper.php:3564, includes/helper.php:3592, includes/helper.php:5004, includes/helper.php:5513
|
20 |
msgid "Invalid Request."
|
21 |
msgstr ""
|
22 |
|
64 |
msgid "Invalid Merchant"
|
65 |
msgstr ""
|
66 |
|
67 |
+
#: admin/class-woo-feed-admin.php:159, includes/helper.php:818, includes/helper.php:931, includes/helper.php:912, includes/helper.php:900, includes/helper.php:888
|
68 |
msgid "N/A"
|
69 |
msgstr ""
|
70 |
|
71 |
+
#: admin/class-woo-feed-admin.php:160
|
72 |
msgid "Generating..."
|
73 |
msgstr ""
|
74 |
|
75 |
+
#: admin/class-woo-feed-admin.php:161
|
76 |
msgid "Learn More.."
|
77 |
msgstr ""
|
78 |
|
79 |
+
#: admin/class-woo-feed-admin.php:163, includes/helper.php:3284, admin/partials/woo-feed-edit-config.php:66
|
80 |
msgid "Select A Category"
|
81 |
msgstr ""
|
82 |
|
83 |
+
#: admin/class-woo-feed-admin.php:164
|
84 |
msgid "Loading Template..."
|
85 |
msgstr ""
|
86 |
|
87 |
+
#: admin/class-woo-feed-admin.php:165
|
88 |
msgid "Delivering Configuration..."
|
89 |
msgstr ""
|
90 |
|
91 |
+
#: admin/class-woo-feed-admin.php:166
|
92 |
msgid "Saving Configuration..."
|
93 |
msgstr ""
|
94 |
|
95 |
+
#: admin/class-woo-feed-admin.php:167
|
96 |
msgid "Wait! Checking Extensions ..."
|
97 |
msgstr ""
|
98 |
|
99 |
+
#: admin/class-woo-feed-admin.php:168
|
100 |
msgid "Warning! Enable PHP ssh2 extension to use SFTP. Contact your server administrator."
|
101 |
msgstr ""
|
102 |
|
103 |
+
#: admin/class-woo-feed-admin.php:169
|
104 |
msgid "SFTP Available!"
|
105 |
msgstr ""
|
106 |
|
107 |
+
#: admin/class-woo-feed-admin.php:170
|
108 |
msgid "Please add one or more items to continue."
|
109 |
msgstr ""
|
110 |
|
111 |
+
#: admin/class-woo-feed-admin.php:172
|
112 |
msgid "Are you sure you want to delete this item?"
|
113 |
msgstr ""
|
114 |
|
115 |
+
#: admin/class-woo-feed-admin.php:173
|
116 |
msgid "Are you sure you want to delete selected items?"
|
117 |
msgstr ""
|
118 |
|
119 |
+
#: admin/class-woo-feed-admin.php:184
|
120 |
msgid "There was an error processing ajax request."
|
121 |
msgstr ""
|
122 |
|
123 |
+
#: admin/class-woo-feed-admin.php:220
|
124 |
msgid "Get Pro"
|
125 |
msgstr ""
|
126 |
|
127 |
+
#: admin/class-woo-feed-admin.php:222, admin/class-woo-feed-admin.php:253
|
128 |
msgid "Docs"
|
129 |
msgstr ""
|
130 |
|
131 |
+
#: admin/class-woo-feed-admin.php:224, admin/class-woo-feed-admin.php:251, admin/class-woo-feed-admin.php:251, admin/partials/woo-feed-settings.php:17
|
132 |
msgid "Settings"
|
133 |
msgstr ""
|
134 |
|
135 |
+
#: admin/class-woo-feed-admin.php:246, admin/class-woo-feed-admin.php:246, includes/classes/class-woo-feed-admin-message.php:121, includes/classes/class-woo-feed-webappick-api.php:295
|
136 |
msgid "CTX Feed"
|
137 |
msgstr ""
|
138 |
|
139 |
+
#: admin/class-woo-feed-admin.php:247, admin/class-woo-feed-admin.php:247
|
140 |
msgid "Manage Feeds"
|
141 |
msgstr ""
|
142 |
|
143 |
+
#: admin/class-woo-feed-admin.php:248, admin/class-woo-feed-admin.php:248
|
144 |
msgid "Make Feed"
|
145 |
msgstr ""
|
146 |
|
147 |
+
#: admin/class-woo-feed-admin.php:249, admin/class-woo-feed-admin.php:249, admin/partials/woo-feed-category-mapping.php:25
|
148 |
msgid "Category Mapping"
|
149 |
msgstr ""
|
150 |
|
151 |
+
#: admin/class-woo-feed-admin.php:250, admin/class-woo-feed-admin.php:250, includes/classes/class-woo-feed-dropdown.php:592
|
152 |
msgid "WP Options"
|
153 |
msgstr ""
|
154 |
|
155 |
+
#: admin/class-woo-feed-admin.php:252, admin/class-woo-feed-admin.php:252
|
156 |
msgid "Status"
|
157 |
msgstr ""
|
158 |
|
159 |
+
#: admin/class-woo-feed-admin.php:253, includes/classes/class-woo-feed-admin-message.php:129, includes/classes/class-woo-feed-webappick-api.php:181
|
160 |
msgid "Documentation"
|
161 |
msgstr ""
|
162 |
|
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:3645
|
172 |
msgid "Edit"
|
173 |
msgstr ""
|
174 |
|
227 |
msgid "Copy To Clipboard"
|
228 |
msgstr ""
|
229 |
|
230 |
+
#: admin/class-woo-feed-manage-list.php:117, includes/helper.php:953
|
231 |
msgid "View"
|
232 |
msgstr ""
|
233 |
|
433 |
msgid "1 Month"
|
434 |
msgstr ""
|
435 |
|
436 |
+
#: includes/helper.php:426, includes/helper.php:2064
|
437 |
msgid "1 Week"
|
438 |
msgstr ""
|
439 |
|
440 |
+
#: includes/helper.php:427, includes/helper.php:2065
|
441 |
msgid "24 Hours"
|
442 |
msgstr ""
|
443 |
|
444 |
+
#: includes/helper.php:428, includes/helper.php:2066
|
445 |
msgid "12 Hours"
|
446 |
msgstr ""
|
447 |
|
448 |
+
#: includes/helper.php:429, includes/helper.php:2067
|
449 |
msgid "6 Hours"
|
450 |
msgstr ""
|
451 |
|
452 |
+
#: includes/helper.php:430, includes/helper.php:2068
|
453 |
msgid "1 Hours"
|
454 |
msgstr ""
|
455 |
|
456 |
+
#: includes/helper.php:829
|
457 |
msgid "Watch Now"
|
458 |
msgstr ""
|
459 |
|
460 |
+
#: includes/helper.php:824, includes/helper.php:891
|
461 |
msgid "Read Article"
|
462 |
msgstr ""
|
463 |
|
464 |
+
#: includes/helper.php:927
|
465 |
msgid "Support Docs:"
|
466 |
msgstr ""
|
467 |
|
468 |
+
#: includes/helper.php:908
|
469 |
msgid "Supported File Types:"
|
470 |
msgstr ""
|
471 |
|
472 |
+
#: includes/helper.php:896
|
473 |
msgid "Video Documentation:"
|
474 |
msgstr ""
|
475 |
|
476 |
+
#: includes/helper.php:903
|
477 |
msgid "Watch now"
|
478 |
msgstr ""
|
479 |
|
480 |
+
#: includes/helper.php:884
|
481 |
msgid "Feed Specification:"
|
482 |
msgstr ""
|
483 |
|
484 |
+
#: includes/helper.php:954
|
485 |
msgid "Open Feed File"
|
486 |
msgstr ""
|
487 |
|
488 |
+
#: includes/helper.php:1759, includes/helper.php:1760, includes/helper.php:1730, includes/helper.php:1730, includes/helper.php:1905, includes/helper.php:1968, includes/helper.php:1969, includes/helper.php:1944, includes/helper.php:1944, libs/WebAppick/AppServices/Insights.php:813, libs/WebAppick/AppServices/Promotions.php:362
|
489 |
msgid "Invalid Request"
|
490 |
msgstr ""
|
491 |
|
492 |
+
#: includes/helper.php:1790
|
493 |
msgid "Empty File Uploaded. Try again."
|
494 |
msgstr ""
|
495 |
|
496 |
+
#: includes/helper.php:1791
|
497 |
msgid "Empty File"
|
498 |
msgstr ""
|
499 |
|
500 |
+
#: includes/helper.php:1794, includes/helper.php:1805, includes/helper.php:1817, includes/helper.php:1828, includes/helper.php:1842, includes/helper.php:1852, includes/helper.php:1864, includes/helper.php:1908
|
501 |
msgid "« Back"
|
502 |
msgstr ""
|
503 |
|
504 |
+
#: includes/helper.php:1801
|
505 |
msgid "Unable to read file content"
|
506 |
msgstr ""
|
507 |
|
508 |
+
#: includes/helper.php:1802, includes/helper.php:1814, includes/helper.php:1825, includes/helper.php:1839, includes/helper.php:1849, includes/helper.php:1861
|
509 |
msgid "Invalid File"
|
510 |
msgstr ""
|
511 |
|
512 |
+
#: includes/helper.php:1813
|
513 |
msgid "Unable to read data from file."
|
514 |
msgstr ""
|
515 |
|
516 |
+
#: includes/helper.php:1824
|
517 |
msgid "Unable to read file info."
|
518 |
msgstr ""
|
519 |
|
520 |
+
#: includes/helper.php:1838
|
521 |
msgid "Unable to read feed data from file."
|
522 |
msgstr ""
|
523 |
|
524 |
+
#: includes/helper.php:1848
|
525 |
msgid "Unable to verify the file."
|
526 |
msgstr ""
|
527 |
|
528 |
+
#: includes/helper.php:1860
|
529 |
msgid "Invalid or corrupted config file."
|
530 |
msgstr ""
|
531 |
|
532 |
+
#: includes/helper.php:1880
|
533 |
msgid " Imported"
|
534 |
msgstr ""
|
535 |
|
536 |
+
#: includes/helper.php:2909
|
537 |
msgid "Brand"
|
538 |
msgstr ""
|
539 |
|
540 |
+
#: includes/helper.php:2910
|
541 |
msgid "GTIN"
|
542 |
msgstr ""
|
543 |
|
544 |
+
#: includes/helper.php:2911
|
545 |
msgid "MPN"
|
546 |
msgstr ""
|
547 |
|
548 |
+
#: includes/helper.php:2912
|
549 |
msgid "EAN"
|
550 |
msgstr ""
|
551 |
|
552 |
+
#: includes/helper.php:2913
|
553 |
msgid "ISBN"
|
554 |
msgstr ""
|
555 |
|
556 |
+
#: includes/helper.php:2914
|
557 |
msgid "Age group"
|
558 |
msgstr ""
|
559 |
|
560 |
+
#: includes/helper.php:2915
|
561 |
msgid "Gender"
|
562 |
msgstr ""
|
563 |
|
564 |
+
#: includes/helper.php:2916
|
565 |
msgid "Material"
|
566 |
msgstr ""
|
567 |
|
568 |
+
#: includes/helper.php:2917
|
569 |
msgid "Cost of good sold"
|
570 |
msgstr ""
|
571 |
|
572 |
+
#: includes/helper.php:2918, includes/classes/class-woo-feed-dropdown.php:396, libs/WebAppick/Attributes/AvailabilityDate.php:47, libs/WebAppick/Attributes/AvailabilityDate.php:77
|
573 |
msgid "Availability Date"
|
574 |
msgstr ""
|
575 |
|
576 |
+
#: includes/helper.php:2919
|
577 |
msgid "Unit"
|
578 |
msgstr ""
|
579 |
|
580 |
+
#: includes/helper.php:2920, includes/classes/class-woo-feed-dropdown.php:466
|
581 |
msgid "Unit Price Measure"
|
582 |
msgstr ""
|
583 |
|
584 |
+
#: includes/helper.php:2921, includes/classes/class-woo-feed-dropdown.php:467
|
585 |
msgid "Unit Price Base Measure"
|
586 |
msgstr ""
|
587 |
|
588 |
+
#: includes/helper.php:2922
|
589 |
msgid "Custom field 0"
|
590 |
msgstr ""
|
591 |
|
592 |
+
#: includes/helper.php:2923
|
593 |
msgid "Custom field 1"
|
594 |
msgstr ""
|
595 |
|
596 |
+
#: includes/helper.php:2924
|
597 |
msgid "Custom field 2"
|
598 |
msgstr ""
|
599 |
|
600 |
+
#: includes/helper.php:2925
|
601 |
msgid "Custom field 3"
|
602 |
msgstr ""
|
603 |
|
604 |
+
#: includes/helper.php:2926
|
605 |
msgid "Custom field 4"
|
606 |
msgstr ""
|
607 |
|
608 |
+
#: includes/helper.php:2995, includes/helper.php:3087
|
609 |
msgid "CUSTOM FIELDS by CTX Feed"
|
610 |
msgstr ""
|
611 |
|
612 |
+
#: includes/helper.php:3012
|
613 |
msgid "Set product "
|
614 |
msgstr ""
|
615 |
|
616 |
+
#: includes/helper.php:3012
|
617 |
msgid " here."
|
618 |
msgstr ""
|
619 |
|
620 |
+
#: includes/helper.php:3203
|
621 |
msgid "Another category mapping exists with the same name."
|
622 |
msgstr ""
|
623 |
|
624 |
+
#: includes/helper.php:3212
|
625 |
msgid "Failed To Add Mapping"
|
626 |
msgstr ""
|
627 |
|
628 |
+
#: includes/helper.php:3208
|
629 |
msgid "Mapping Added Successfully"
|
630 |
msgstr ""
|
631 |
|
632 |
+
#: includes/helper.php:3177
|
633 |
msgid "Mapping Not Changed"
|
634 |
msgstr ""
|
635 |
|
636 |
+
#: includes/helper.php:3187
|
637 |
msgid "Failed To Updated Mapping"
|
638 |
msgstr ""
|
639 |
|
640 |
+
#: includes/helper.php:3183
|
641 |
msgid "Mapping Updated Successfully"
|
642 |
msgstr ""
|
643 |
|
644 |
+
#: includes/helper.php:3304
|
645 |
msgid "Copy this category to subcategories"
|
646 |
msgstr ""
|
647 |
|
648 |
+
#: includes/helper.php:3335
|
649 |
msgid "Clear Cache"
|
650 |
msgstr ""
|
651 |
|
652 |
+
#: includes/helper.php:3560, includes/helper.php:3589
|
653 |
msgid "Something is wrong."
|
654 |
msgstr ""
|
655 |
|
656 |
+
#: includes/helper.php:3558
|
657 |
msgid "User meta updated successfully."
|
658 |
msgstr ""
|
659 |
|
660 |
+
#: includes/helper.php:3637, includes/helper.php:3639
|
661 |
msgid "by CTX Feed"
|
662 |
msgstr ""
|
663 |
|
664 |
+
#: includes/helper.php:3640
|
665 |
msgid "All"
|
666 |
msgstr ""
|
667 |
|
668 |
+
#: includes/helper.php:3641
|
669 |
msgid "Parent"
|
670 |
msgstr ""
|
671 |
|
672 |
+
#: includes/helper.php:3642
|
673 |
msgid "Parent:"
|
674 |
msgstr ""
|
675 |
|
676 |
+
#: includes/helper.php:3643
|
677 |
msgid "New"
|
678 |
msgstr ""
|
679 |
|
680 |
+
#: includes/helper.php:3643, libs/WebAppick/AppServices/Insights.php:977
|
681 |
msgid "Name"
|
682 |
msgstr ""
|
683 |
|
684 |
+
#: includes/helper.php:3644
|
685 |
msgid "Add New"
|
686 |
msgstr ""
|
687 |
|
688 |
+
#: includes/helper.php:3646
|
689 |
msgid "Update"
|
690 |
msgstr ""
|
691 |
|
692 |
+
#: includes/helper.php:3647
|
693 |
msgid "Separate"
|
694 |
msgstr ""
|
695 |
|
696 |
+
#: includes/helper.php:3647
|
697 |
msgid "with commas"
|
698 |
msgstr ""
|
699 |
|
700 |
+
#: includes/helper.php:3648
|
701 |
msgid "Search"
|
702 |
msgstr ""
|
703 |
|
704 |
+
#: includes/helper.php:3649
|
705 |
msgid "Add or remove"
|
706 |
msgstr ""
|
707 |
|
708 |
+
#: includes/helper.php:3650
|
709 |
msgid "Choose from the most used"
|
710 |
msgstr ""
|
711 |
|
712 |
+
#: includes/helper.php:4692
|
713 |
msgid "Option Successfully Added."
|
714 |
msgstr ""
|
715 |
|
716 |
+
#: includes/helper.php:4683
|
717 |
msgid "Option Already Added."
|
718 |
msgstr ""
|
719 |
|
720 |
+
#: includes/helper.php:5418
|
721 |
msgid "Delivery up to 30 days"
|
722 |
msgstr ""
|
723 |
|
724 |
+
#: includes/helper.php:5416
|
725 |
msgid "Delivery 1 to 3 days"
|
726 |
msgstr ""
|
727 |
|
728 |
+
#: includes/helper.php:5521
|
729 |
msgid "Feed data is empty. Can't duplicate feed."
|
730 |
msgstr ""
|
731 |
|
732 |
+
#: includes/helper.php:5537
|
733 |
msgid "Unable to save the duplicate feed data."
|
734 |
msgstr ""
|
735 |
|
736 |
+
#: includes/helper.php:5547
|
737 |
msgid "Feed Successfully Duplicated, but unable to generate the data file. Please click the \"Regenerate Button\""
|
738 |
msgstr ""
|
739 |
|
906 |
msgid "Command"
|
907 |
msgstr ""
|
908 |
|
909 |
+
#: admin/partials/woo-feed-edit-config.php:53, admin/partials/woo-feed-edit-config.php:129
|
910 |
msgid "Attribute"
|
911 |
msgstr ""
|
912 |
|
913 |
+
#: admin/partials/woo-feed-edit-config.php:54, admin/partials/woo-feed-edit-config.php:130
|
914 |
msgid "Pattern (Static Value)"
|
915 |
msgstr ""
|
916 |
|
917 |
+
#: admin/partials/woo-feed-edit-config.php:87, admin/partials/woo-feed-edit-config.php:146
|
918 |
msgid "Select Output Type"
|
919 |
msgstr ""
|
920 |
|
921 |
+
#: admin/partials/woo-feed-edit-config.php:161
|
922 |
msgid "Add New Attribute"
|
923 |
msgstr ""
|
924 |
|
1376 |
msgid "Settings Updated."
|
1377 |
msgstr ""
|
1378 |
|
1379 |
+
#: includes/classes/class-woo-feed-dropdown.php:373, includes/classes/class-woo-feed-products.php:1784
|
1380 |
msgid "Primary Attributes"
|
1381 |
msgstr ""
|
1382 |
|
1383 |
+
#: includes/classes/class-woo-feed-dropdown.php:374, includes/classes/class-woo-feed-products.php:1711
|
1384 |
msgid "Product Id"
|
1385 |
msgstr ""
|
1386 |
|
1387 |
+
#: includes/classes/class-woo-feed-dropdown.php:375, includes/classes/class-woo-feed-products.php:1712
|
1388 |
msgid "Product Title"
|
1389 |
msgstr ""
|
1390 |
|
1391 |
+
#: includes/classes/class-woo-feed-dropdown.php:376
|
1392 |
msgid "Parent Title"
|
1393 |
msgstr ""
|
1394 |
|
1395 |
+
#: includes/classes/class-woo-feed-dropdown.php:377, includes/classes/class-woo-feed-products.php:1713
|
1396 |
msgid "Product Description"
|
1397 |
msgstr ""
|
1398 |
|
1399 |
+
#: includes/classes/class-woo-feed-dropdown.php:378
|
1400 |
msgid "Product Description (with HTML)"
|
1401 |
msgstr ""
|
1402 |
|
1403 |
+
#: includes/classes/class-woo-feed-dropdown.php:379, includes/classes/class-woo-feed-products.php:1714
|
1404 |
msgid "Product Short Description"
|
1405 |
msgstr ""
|
1406 |
|
1407 |
+
#: includes/classes/class-woo-feed-dropdown.php:380
|
1408 |
msgid "Parent Category"
|
1409 |
msgstr ""
|
1410 |
|
1411 |
+
#: includes/classes/class-woo-feed-dropdown.php:381
|
1412 |
msgid "Parent Category ID"
|
1413 |
msgstr ""
|
1414 |
|
1415 |
+
#: includes/classes/class-woo-feed-dropdown.php:382
|
1416 |
msgid "Child Category"
|
1417 |
msgstr ""
|
1418 |
|
1419 |
+
#: includes/classes/class-woo-feed-dropdown.php:383
|
1420 |
msgid "Child Category ID"
|
1421 |
msgstr ""
|
1422 |
|
1423 |
+
#: includes/classes/class-woo-feed-dropdown.php:384
|
1424 |
msgid "Product Category [Category Path]"
|
1425 |
msgstr ""
|
1426 |
|
1427 |
+
#: includes/classes/class-woo-feed-dropdown.php:385
|
1428 |
msgid "Product Full Category [Category Full Path]"
|
1429 |
msgstr ""
|
1430 |
|
1431 |
+
#: includes/classes/class-woo-feed-dropdown.php:386, includes/classes/class-woo-feed-products.php:1716
|
1432 |
msgid "Product URL"
|
1433 |
msgstr ""
|
1434 |
|
1435 |
+
#: includes/classes/class-woo-feed-dropdown.php:387
|
1436 |
msgid "Parent URL"
|
1437 |
msgstr ""
|
1438 |
|
1439 |
+
#: includes/classes/class-woo-feed-dropdown.php:388
|
1440 |
msgid "Canonical URL"
|
1441 |
msgstr ""
|
1442 |
|
1443 |
+
#: includes/classes/class-woo-feed-dropdown.php:389, includes/classes/class-woo-feed-products.php:1717
|
1444 |
msgid "External Product URL"
|
1445 |
msgstr ""
|
1446 |
|
1447 |
+
#: includes/classes/class-woo-feed-dropdown.php:390
|
1448 |
msgid "Add to Cart URL"
|
1449 |
msgstr ""
|
1450 |
|
1451 |
+
#: includes/classes/class-woo-feed-dropdown.php:391, includes/classes/class-woo-feed-products.php:1719
|
1452 |
msgid "Parent Id [Group Id]"
|
1453 |
msgstr ""
|
1454 |
|
1455 |
+
#: includes/classes/class-woo-feed-dropdown.php:392, includes/classes/class-woo-feed-products.php:1720
|
1456 |
msgid "SKU"
|
1457 |
msgstr ""
|
1458 |
|
1459 |
+
#: includes/classes/class-woo-feed-dropdown.php:393
|
1460 |
msgid "SKU_ID"
|
1461 |
msgstr ""
|
1462 |
|
1463 |
+
#: includes/classes/class-woo-feed-dropdown.php:394, includes/classes/class-woo-feed-products.php:1721
|
1464 |
msgid "Parent SKU"
|
1465 |
msgstr ""
|
1466 |
|
1467 |
+
#: includes/classes/class-woo-feed-dropdown.php:395, includes/classes/class-woo-feed-products.php:1722
|
1468 |
msgid "Availability"
|
1469 |
msgstr ""
|
1470 |
|
1471 |
+
#: includes/classes/class-woo-feed-dropdown.php:397, includes/classes/class-woo-feed-products.php:1723
|
1472 |
msgid "Quantity"
|
1473 |
msgstr ""
|
1474 |
|
1475 |
+
#: includes/classes/class-woo-feed-dropdown.php:398
|
1476 |
+
msgid "Currency"
|
1477 |
+
msgstr ""
|
1478 |
+
|
1479 |
+
#: includes/classes/class-woo-feed-dropdown.php:399, includes/classes/class-woo-feed-products.php:1724
|
1480 |
msgid "Regular Price"
|
1481 |
msgstr ""
|
1482 |
|
1483 |
+
#: includes/classes/class-woo-feed-dropdown.php:400, includes/classes/class-woo-feed-products.php:1725
|
1484 |
msgid "Price"
|
1485 |
msgstr ""
|
1486 |
|
1487 |
+
#: includes/classes/class-woo-feed-dropdown.php:401, includes/classes/class-woo-feed-products.php:1726
|
1488 |
msgid "Sale Price"
|
1489 |
msgstr ""
|
1490 |
|
1491 |
+
#: includes/classes/class-woo-feed-dropdown.php:402, includes/classes/class-woo-feed-products.php:1727
|
1492 |
msgid "Regular Price With Tax"
|
1493 |
msgstr ""
|
1494 |
|
1495 |
+
#: includes/classes/class-woo-feed-dropdown.php:403, includes/classes/class-woo-feed-products.php:1728
|
1496 |
msgid "Price With Tax"
|
1497 |
msgstr ""
|
1498 |
|
1499 |
+
#: includes/classes/class-woo-feed-dropdown.php:404, includes/classes/class-woo-feed-products.php:1729
|
1500 |
msgid "Sale Price With Tax"
|
1501 |
msgstr ""
|
1502 |
|
1503 |
+
#: includes/classes/class-woo-feed-dropdown.php:405, includes/classes/class-woo-feed-products.php:1730
|
1504 |
msgid "Sale Start Date"
|
1505 |
msgstr ""
|
1506 |
|
1507 |
+
#: includes/classes/class-woo-feed-dropdown.php:406, includes/classes/class-woo-feed-products.php:1731
|
1508 |
msgid "Sale End Date"
|
1509 |
msgstr ""
|
1510 |
|
1511 |
+
#: includes/classes/class-woo-feed-dropdown.php:407
|
1512 |
msgid "Reviewer Name"
|
1513 |
msgstr ""
|
1514 |
|
1515 |
+
#: includes/classes/class-woo-feed-dropdown.php:408, includes/classes/class-woo-feed-products.php:1732
|
1516 |
msgid "Weight"
|
1517 |
msgstr ""
|
1518 |
|
1519 |
+
#: includes/classes/class-woo-feed-dropdown.php:409
|
1520 |
msgid "Weight Unit"
|
1521 |
msgstr ""
|
1522 |
|
1523 |
+
#: includes/classes/class-woo-feed-dropdown.php:410, includes/classes/class-woo-feed-products.php:1733
|
1524 |
msgid "Width"
|
1525 |
msgstr ""
|
1526 |
|
1527 |
+
#: includes/classes/class-woo-feed-dropdown.php:411, includes/classes/class-woo-feed-products.php:1734
|
1528 |
msgid "Height"
|
1529 |
msgstr ""
|
1530 |
|
1531 |
+
#: includes/classes/class-woo-feed-dropdown.php:412, includes/classes/class-woo-feed-products.php:1735
|
1532 |
msgid "Length"
|
1533 |
msgstr ""
|
1534 |
|
1535 |
+
#: includes/classes/class-woo-feed-dropdown.php:413
|
1536 |
msgid "Shipping (Google Format)"
|
1537 |
msgstr ""
|
1538 |
|
1539 |
+
#: includes/classes/class-woo-feed-dropdown.php:414
|
1540 |
msgid "Shipping Cost"
|
1541 |
msgstr ""
|
1542 |
|
1543 |
+
#: includes/classes/class-woo-feed-dropdown.php:415, includes/classes/class-woo-feed-products.php:1736
|
1544 |
msgid "Shipping Class"
|
1545 |
msgstr ""
|
1546 |
|
1547 |
+
#: includes/classes/class-woo-feed-dropdown.php:416, includes/classes/class-woo-feed-products.php:1737
|
1548 |
msgid "Product Type"
|
1549 |
msgstr ""
|
1550 |
|
1551 |
+
#: includes/classes/class-woo-feed-dropdown.php:417, includes/classes/class-woo-feed-products.php:1738
|
1552 |
msgid "Variation Type"
|
1553 |
msgstr ""
|
1554 |
|
1555 |
+
#: includes/classes/class-woo-feed-dropdown.php:418, includes/classes/class-woo-feed-products.php:1739
|
1556 |
msgid "Visibility"
|
1557 |
msgstr ""
|
1558 |
|
1559 |
+
#: includes/classes/class-woo-feed-dropdown.php:419, includes/classes/class-woo-feed-products.php:1740
|
1560 |
msgid "Total Rating"
|
1561 |
msgstr ""
|
1562 |
|
1563 |
+
#: includes/classes/class-woo-feed-dropdown.php:420, includes/classes/class-woo-feed-products.php:1741
|
1564 |
msgid "Average Rating"
|
1565 |
msgstr ""
|
1566 |
|
1567 |
+
#: includes/classes/class-woo-feed-dropdown.php:421, includes/classes/class-woo-feed-products.php:1742
|
1568 |
msgid "Tags"
|
1569 |
msgstr ""
|
1570 |
|
1571 |
+
#: includes/classes/class-woo-feed-dropdown.php:422, includes/classes/class-woo-feed-products.php:1743
|
1572 |
msgid "Sale Price Effective Date"
|
1573 |
msgstr ""
|
1574 |
|
1575 |
+
#: includes/classes/class-woo-feed-dropdown.php:423, includes/classes/class-woo-feed-products.php:1744
|
1576 |
msgid "Is Bundle"
|
1577 |
msgstr ""
|
1578 |
|
1579 |
+
#: includes/classes/class-woo-feed-dropdown.php:424, includes/classes/class-woo-feed-products.php:1745
|
1580 |
msgid "Author Name"
|
1581 |
msgstr ""
|
1582 |
|
1583 |
+
#: includes/classes/class-woo-feed-dropdown.php:425, includes/classes/class-woo-feed-products.php:1746
|
1584 |
msgid "Author Email"
|
1585 |
msgstr ""
|
1586 |
|
1587 |
+
#: includes/classes/class-woo-feed-dropdown.php:426, includes/classes/class-woo-feed-products.php:1747
|
1588 |
msgid "Date Created"
|
1589 |
msgstr ""
|
1590 |
|
1591 |
+
#: includes/classes/class-woo-feed-dropdown.php:427, includes/classes/class-woo-feed-products.php:1748
|
1592 |
msgid "Date Updated"
|
1593 |
msgstr ""
|
1594 |
|
1595 |
+
#: includes/classes/class-woo-feed-dropdown.php:428
|
1596 |
msgid "Tax"
|
1597 |
msgstr ""
|
1598 |
|
1599 |
+
#: includes/classes/class-woo-feed-dropdown.php:429
|
1600 |
msgid "Tax Class"
|
1601 |
msgstr ""
|
1602 |
|
1603 |
+
#: includes/classes/class-woo-feed-dropdown.php:430
|
1604 |
msgid "Tax Status"
|
1605 |
msgstr ""
|
1606 |
|
1607 |
+
#: includes/classes/class-woo-feed-dropdown.php:439
|
1608 |
msgid "Custom Fields by CTX Feed"
|
1609 |
msgstr ""
|
1610 |
|
1611 |
+
#: includes/classes/class-woo-feed-dropdown.php:449
|
1612 |
msgid "Subscription & Installment"
|
1613 |
msgstr ""
|
1614 |
|
1615 |
+
#: includes/classes/class-woo-feed-dropdown.php:453
|
1616 |
msgid "Subscription Period"
|
1617 |
msgstr ""
|
1618 |
|
1619 |
+
#: includes/classes/class-woo-feed-dropdown.php:454
|
1620 |
msgid "Subscription Period Length"
|
1621 |
msgstr ""
|
1622 |
|
1623 |
+
#: includes/classes/class-woo-feed-dropdown.php:455
|
1624 |
msgid "Subscription Amount"
|
1625 |
msgstr ""
|
1626 |
|
1627 |
+
#: includes/classes/class-woo-feed-dropdown.php:456
|
1628 |
msgid "Installment Months"
|
1629 |
msgstr ""
|
1630 |
|
1631 |
+
#: includes/classes/class-woo-feed-dropdown.php:457
|
1632 |
msgid "Installment Amount"
|
1633 |
msgstr ""
|
1634 |
|
1635 |
+
#: includes/classes/class-woo-feed-dropdown.php:484
|
1636 |
msgid "Unit Price"
|
1637 |
msgstr ""
|
1638 |
|
1639 |
+
#: includes/classes/class-woo-feed-dropdown.php:471
|
1640 |
msgid "WooCommerce Germanized"
|
1641 |
msgstr ""
|
1642 |
|
1643 |
+
#: includes/classes/class-woo-feed-dropdown.php:492
|
1644 |
msgid "ALL IN ONE SEO"
|
1645 |
msgstr ""
|
1646 |
|
1647 |
+
#: includes/classes/class-woo-feed-dropdown.php:496, includes/classes/class-woo-feed-products.php:1769
|
1648 |
msgid "Title [All in One SEO]"
|
1649 |
msgstr ""
|
1650 |
|
1651 |
+
#: includes/classes/class-woo-feed-dropdown.php:497, includes/classes/class-woo-feed-products.php:1770
|
1652 |
msgid "Description [All in One SEO]"
|
1653 |
msgstr ""
|
1654 |
|
1655 |
+
#: includes/classes/class-woo-feed-dropdown.php:498
|
1656 |
msgid "Canonical URL [All in One SEO]"
|
1657 |
msgstr ""
|
1658 |
|
1659 |
+
#: includes/classes/class-woo-feed-dropdown.php:506
|
1660 |
msgid "Yoast SEO"
|
1661 |
msgstr ""
|
1662 |
|
1663 |
+
#: includes/classes/class-woo-feed-dropdown.php:509, includes/classes/class-woo-feed-products.php:1776
|
1664 |
msgid "Title [Yoast SEO]"
|
1665 |
msgstr ""
|
1666 |
|
1667 |
+
#: includes/classes/class-woo-feed-dropdown.php:510, includes/classes/class-woo-feed-products.php:1777
|
1668 |
msgid "Description [Yoast SEO]"
|
1669 |
msgstr ""
|
1670 |
|
1671 |
+
#: includes/classes/class-woo-feed-dropdown.php:511
|
1672 |
msgid "Canonical URL [Yoast SEO]"
|
1673 |
msgstr ""
|
1674 |
|
1675 |
+
#: includes/classes/class-woo-feed-dropdown.php:517
|
1676 |
msgid "GTIN8 [Yoast SEO]"
|
1677 |
msgstr ""
|
1678 |
|
1679 |
+
#: includes/classes/class-woo-feed-dropdown.php:518
|
1680 |
msgid "GTIN12 / UPC [Yoast SEO]"
|
1681 |
msgstr ""
|
1682 |
|
1683 |
+
#: includes/classes/class-woo-feed-dropdown.php:519
|
1684 |
msgid "GTIN13 / EAN [Yoast SEO]"
|
1685 |
msgstr ""
|
1686 |
|
1687 |
+
#: includes/classes/class-woo-feed-dropdown.php:520
|
1688 |
msgid "GTIN14 / ITF-14 [Yoast SEO]"
|
1689 |
msgstr ""
|
1690 |
|
1691 |
+
#: includes/classes/class-woo-feed-dropdown.php:521
|
1692 |
msgid "ISBN [Yoast SEO]"
|
1693 |
msgstr ""
|
1694 |
|
1695 |
+
#: includes/classes/class-woo-feed-dropdown.php:522
|
1696 |
msgid "MPN [Yoast SEO]"
|
1697 |
msgstr ""
|
1698 |
|
1699 |
+
#: includes/classes/class-woo-feed-dropdown.php:535
|
1700 |
msgid "Rank Math SEO"
|
1701 |
msgstr ""
|
1702 |
|
1703 |
+
#: includes/classes/class-woo-feed-dropdown.php:539
|
1704 |
msgid "Title [RankMath SEO]"
|
1705 |
msgstr ""
|
1706 |
|
1707 |
+
#: includes/classes/class-woo-feed-dropdown.php:540
|
1708 |
msgid "Description [RankMath SEO]"
|
1709 |
msgstr ""
|
1710 |
|
1711 |
+
#: includes/classes/class-woo-feed-dropdown.php:541
|
1712 |
msgid "Canonical URL [RankMath SEO]"
|
1713 |
msgstr ""
|
1714 |
|
1715 |
+
#: includes/classes/class-woo-feed-dropdown.php:542
|
1716 |
msgid "GTIN [RankMath Pro SEO]"
|
1717 |
msgstr ""
|
1718 |
|
1719 |
+
#: includes/classes/class-woo-feed-dropdown.php:549, includes/classes/class-woo-feed-products.php:1793
|
1720 |
msgid "Image Attributes"
|
1721 |
msgstr ""
|
1722 |
|
1723 |
+
#: includes/classes/class-woo-feed-dropdown.php:551, includes/classes/class-woo-feed-products.php:1751
|
1724 |
msgid "Main Image"
|
1725 |
msgstr ""
|
1726 |
|
1727 |
+
#: includes/classes/class-woo-feed-dropdown.php:552, includes/classes/class-woo-feed-products.php:1752
|
1728 |
msgid "Featured Image"
|
1729 |
msgstr ""
|
1730 |
|
1731 |
+
#: includes/classes/class-woo-feed-dropdown.php:553, includes/classes/class-woo-feed-products.php:1753
|
1732 |
msgid "Images [Comma Separated]"
|
1733 |
msgstr ""
|
1734 |
|
1735 |
+
#: includes/classes/class-woo-feed-dropdown.php:554, includes/classes/class-woo-feed-products.php:1754
|
1736 |
msgid "Additional Image 1"
|
1737 |
msgstr ""
|
1738 |
|
1739 |
+
#: includes/classes/class-woo-feed-dropdown.php:555, includes/classes/class-woo-feed-products.php:1755
|
1740 |
msgid "Additional Image 2"
|
1741 |
msgstr ""
|
1742 |
|
1743 |
+
#: includes/classes/class-woo-feed-dropdown.php:556, includes/classes/class-woo-feed-products.php:1756
|
1744 |
msgid "Additional Image 3"
|
1745 |
msgstr ""
|
1746 |
|
1747 |
+
#: includes/classes/class-woo-feed-dropdown.php:557, includes/classes/class-woo-feed-products.php:1757
|
1748 |
msgid "Additional Image 4"
|
1749 |
msgstr ""
|
1750 |
|
1751 |
+
#: includes/classes/class-woo-feed-dropdown.php:558, includes/classes/class-woo-feed-products.php:1758
|
1752 |
msgid "Additional Image 5"
|
1753 |
msgstr ""
|
1754 |
|
1755 |
+
#: includes/classes/class-woo-feed-dropdown.php:559, includes/classes/class-woo-feed-products.php:1759
|
1756 |
msgid "Additional Image 6"
|
1757 |
msgstr ""
|
1758 |
|
1759 |
+
#: includes/classes/class-woo-feed-dropdown.php:560, includes/classes/class-woo-feed-products.php:1760
|
1760 |
msgid "Additional Image 7"
|
1761 |
msgstr ""
|
1762 |
|
1763 |
+
#: includes/classes/class-woo-feed-dropdown.php:561, includes/classes/class-woo-feed-products.php:1761
|
1764 |
msgid "Additional Image 8"
|
1765 |
msgstr ""
|
1766 |
|
1767 |
+
#: includes/classes/class-woo-feed-dropdown.php:562, includes/classes/class-woo-feed-products.php:1762
|
1768 |
msgid "Additional Image 9"
|
1769 |
msgstr ""
|
1770 |
|
1771 |
+
#: includes/classes/class-woo-feed-dropdown.php:563, includes/classes/class-woo-feed-products.php:1763
|
1772 |
msgid "Additional Image 10"
|
1773 |
msgstr ""
|
1774 |
|
1775 |
+
#: includes/classes/class-woo-feed-dropdown.php:570
|
1776 |
msgid "Product Attributes"
|
1777 |
msgstr ""
|
1778 |
|
1779 |
+
#: includes/classes/class-woo-feed-dropdown.php:578, includes/classes/class-woo-feed-products.php:1813
|
1780 |
msgid "Product Custom Attributes"
|
1781 |
msgstr ""
|
1782 |
|
1783 |
+
#: includes/classes/class-woo-feed-dropdown.php:585
|
1784 |
msgid "Product Taxonomies"
|
1785 |
msgstr ""
|
1786 |
|
1787 |
+
#: includes/classes/class-woo-feed-dropdown.php:600
|
1788 |
msgid "Category Mappings"
|
1789 |
msgstr ""
|
1790 |
|
1791 |
+
#: includes/classes/class-woo-feed-dropdown.php:606
|
1792 |
msgid "Custom Fields & Post Metas (Premium)"
|
1793 |
msgstr ""
|
1794 |
|
1795 |
+
#: includes/classes/class-woo-feed-dropdown.php:647, includes/classes/class-woo-feed-products.php:1803
|
1796 |
msgid "Select Attributes"
|
1797 |
msgstr ""
|
1798 |
|
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.
|
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.
|
46 |
}
|
47 |
|
48 |
if ( ! defined( 'WOO_FEED_FREE_FILE' ) ) {
|
@@ -808,6 +808,26 @@ if ( ! function_exists( 'feed_merchant_view' ) ) {
|
|
808 |
wp_die();
|
809 |
}
|
810 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
811 |
// Get Google Categories.
|
812 |
if ( ! function_exists( 'woo_feed_get_google_categories' ) ) {
|
813 |
add_action( 'wp_ajax_get_google_categories', 'woo_feed_get_google_categories' );
|
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.39
|
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.39' );
|
46 |
}
|
47 |
|
48 |
if ( ! defined( 'WOO_FEED_FREE_FILE' ) ) {
|
808 |
wp_die();
|
809 |
}
|
810 |
}
|
811 |
+
// Get facebook Categories.
|
812 |
+
if ( ! function_exists( 'woo_feed_get_facebook_categories' ) ) {
|
813 |
+
add_action( 'wp_ajax_get_facebook_categories', 'woo_feed_get_facebook_categories' );
|
814 |
+
/**
|
815 |
+
* Ajax Response for Facebook Category Dropdown Data
|
816 |
+
*
|
817 |
+
* @return void
|
818 |
+
*/
|
819 |
+
function woo_feed_get_facebook_categories() {
|
820 |
+
check_ajax_referer( 'wpf_feed_nonce' );
|
821 |
+
if ( ! current_user_can( 'manage_woocommerce' ) ) {
|
822 |
+
woo_feed_log_debug_message( 'User doesnt have enough permission.' );
|
823 |
+
wp_send_json_error( esc_html__( 'Unauthorized Action.', 'woo-feed' ) );
|
824 |
+
wp_die();
|
825 |
+
}
|
826 |
+
$wooFeedDropDown = new Woo_Feed_Dropdown();
|
827 |
+
wp_send_json_success( $wooFeedDropDown->facebookTaxonomyArray() );
|
828 |
+
die();
|
829 |
+
}
|
830 |
+
}
|
831 |
// Get Google Categories.
|
832 |
if ( ! function_exists( 'woo_feed_get_google_categories' ) ) {
|
833 |
add_action( 'wp_ajax_get_google_categories', 'woo_feed_get_google_categories' );
|