/var/www/html_us/wp-content/plugins/woocommerce/includes/admin/importers/mappings/default.php


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
<?php
/**
 * Default mappings
 *
 * @package WooCommerce\Admin\Importers
 */

if ( ! defined'ABSPATH' ) ) {
    exit;
}

/**
 * Importer current locale.
 *
 * @since 3.1.0
 * @return string
 */
function wc_importer_current_locale() {
    
$locale get_locale();
    if ( 
function_exists'get_user_locale' ) ) {
        
$locale get_user_locale();
    }

    return 
$locale;
}

/**
 * Add English mapping placeholders when not using English as current language.
 *
 * @since 3.1.0
 * @param array $mappings Importer columns mappings.
 * @return array
 */
function wc_importer_default_english_mappings$mappings ) {
    if ( 
'en_US' === wc_importer_current_locale() && is_array$mappings ) && count$mappings ) > ) {
        return 
$mappings;
    }

    
$weight_unit    get_option'woocommerce_weight_unit' );
    
$dimension_unit get_option'woocommerce_dimension_unit' );
    
$new_mappings   = array(
        
'ID'                                      => 'id',
        
'Type'                                    => 'type',
        
'SKU'                                     => 'sku',
        
'Name'                                    => 'name',
        
'Published'                               => 'published',
        
'Is featured?'                            => 'featured',
        
'Visibility in catalog'                   => 'catalog_visibility',
        
'Short description'                       => 'short_description',
        
'Description'                             => 'description',
        
'Date sale price starts'                  => 'date_on_sale_from',
        
'Date sale price ends'                    => 'date_on_sale_to',
        
'Tax status'                              => 'tax_status',
        
'Tax class'                               => 'tax_class',
        
'In stock?'                               => 'stock_status',
        
'Stock'                                   => 'stock_quantity',
        
'Backorders allowed?'                     => 'backorders',
        
'Low stock amount'                        => 'low_stock_amount',
        
'Sold individually?'                      => 'sold_individually',
        
sprintf'Weight (%s)'$weight_unit )    => 'weight',
        
sprintf'Length (%s)'$dimension_unit ) => 'length',
        
sprintf'Width (%s)'$dimension_unit )  => 'width',
        
sprintf'Height (%s)'$dimension_unit ) => 'height',
        
'Allow customer reviews?'                 => 'reviews_allowed',
        
'Purchase note'                           => 'purchase_note',
        
'Sale price'                              => 'sale_price',
        
'Regular price'                           => 'regular_price',
        
'Categories'                              => 'category_ids',
        
'Tags'                                    => 'tag_ids',
        
'Shipping class'                          => 'shipping_class_id',
        
'Images'                                  => 'images',
        
'Download limit'                          => 'download_limit',
        
'Download expiry days'                    => 'download_expiry',
        
'Parent'                                  => 'parent_id',
        
'Upsells'                                 => 'upsell_ids',
        
'Cross-sells'                             => 'cross_sell_ids',
        
'Grouped products'                        => 'grouped_products',
        
'External URL'                            => 'product_url',
        
'Button text'                             => 'button_text',
        
'Position'                                => 'menu_order',
    );

    return 
array_merge$mappings$new_mappings );
}
add_filter'woocommerce_csv_product_import_mapping_default_columns''wc_importer_default_english_mappings'100 );

/**
 * Add English special mapping placeholders when not using English as current language.
 *
 * @since 3.1.0
 * @param array $mappings Importer columns mappings.
 * @return array
 */
function wc_importer_default_special_english_mappings$mappings ) {
    if ( 
'en_US' === wc_importer_current_locale() && is_array$mappings ) && count$mappings ) > ) {
        return 
$mappings;
    }

    
$new_mappings = array(
        
'Attribute %d name'     => 'attributes:name',
        
'Attribute %d value(s)' => 'attributes:value',
        
'Attribute %d visible'  => 'attributes:visible',
        
'Attribute %d global'   => 'attributes:taxonomy',
        
'Attribute %d default'  => 'attributes:default',
        
'Download %d ID'        => 'downloads:id',
        
'Download %d name'      => 'downloads:name',
        
'Download %d URL'       => 'downloads:url',
        
'Meta: %s'              => 'meta:',
    );

    return 
array_merge$mappings$new_mappings );
}
add_filter'woocommerce_csv_product_import_mapping_special_columns''wc_importer_default_special_english_mappings'100 );