WooCommerce の商品属性を CSV で扱う:完全ガイド
WooCommerce の商品属性を CSV ファイルで正しく書く方法です。属性名の付け方、グローバル属性とローカル属性、バリエーション属性、よくあるミスを解説します。
- ✓CSV での WooCommerce の属性列の名前と番号の付け方
- ✓CSV インポートにおけるグローバル属性とローカル属性の違い
- ✓可変商品とそのバリエーションに属性を設定する方法
- ✓複数の属性値をインポートする方法(例:青と赤がある商品)
- ✓属性のインポートでよくあるエラーの直し方
CSV を修正しますか?アップロードするとすぐに検証と自動修正が行われます。
CSV修正ツールを開くWooCommerce の属性は CSV でどう扱われるか
WooCommerce の商品属性は、商品がどの軸で変わるかを決めるものです。よく使われるのはサイズ、カラー、素材です。CSV インポートでは、属性は番号付きの列のまとまりで表します。4列で1つの属性を表します。
列名のパターンは次のとおりです。
Attribute 1 nameAttribute 1 value(s)Attribute 1 visibleAttribute 1 global
2つ目の属性は、Attribute 2 name、Attribute 2 value(s) のように同じパターンを繰り返します。
WordPress を日本語で使っている場合、エクスポートの列名は日本語になります。インポーターは日本語の列名も英語の列名も認識します。このガイドでは英語の列名で説明します。
列の一覧
| 列 | 形式 | 説明 |
|---|---|---|
| Attribute N name | テキスト | 属性の名前(例:Color、Size) |
| Attribute N value(s) | テキスト(縦線区切り) | この行の値(例:Blue または Blue | Red) |
| Attribute N visible | 1 または 0 | 1 = 商品ページに表示、0 = 非表示 |
| Attribute N global | 1 または 0 | 1 = グローバル(タクソノミー)属性、0 = ローカル属性 |
複数の属性値を持つシンプル商品
複数のカラーがある(ただし別々のバリエーションにはしない)シンプル商品では、Attribute 1 value(s) 列にすべての値を縦線 | で区切って並べます。
Name,Type,SKU,Regular price,Attribute 1 name,Attribute 1 value(s),Attribute 1 visible,Attribute 1 global
Blue Scarf,simple,SCARF-001,14.99,Color,Blue | Navy | Teal,1,1
これで、商品ページに3つのカラーをすべて表示する Color 属性を持つ商品が1つ作られます。
バリエーションのある可変商品
可変商品では、属性の扱いが異なります。親行には属性の取りうる値をすべて並べます。各バリエーション行には、そのバリエーションの値だけを入れます。
親行(Type: variable):
Name,Type,SKU,Regular price,Attribute 1 name,Attribute 1 value(s),Attribute 1 visible,Attribute 1 global
T-Shirt,variable,TSHIRT,20.00,Size,S | M | L | XL,1,1
バリエーション行(Type: variation):
Name,Type,SKU,Regular price,Attribute 1 name,Attribute 1 value(s),Attribute 1 visible,Attribute 1 global
,variation,TSHIRT-S,18.00,Size,S,1,1
,variation,TSHIRT-M,18.00,Size,M,1,1
,variation,TSHIRT-L,20.00,Size,L,1,1
,variation,TSHIRT-XL,20.00,Size,XL,1,1
バリエーション行の Name 列は空欄です。WooCommerce が属性の値からバリエーション名を作ります。
2つの属性(サイズ+カラー)
属性の軸が2つある商品の場合:
親行:
Name,Type,SKU,Attribute 1 name,Attribute 1 value(s),Attribute 1 visible,Attribute 1 global,Attribute 2 name,Attribute 2 value(s),Attribute 2 visible,Attribute 2 global
Running Shoe,variable,SHOE,Size,7 | 8 | 9 | 10,1,1,Color,Black | White,1,1
バリエーション行:
,variation,SHOE-7-BLK,Size,7,1,1,Color,Black,1,1
,variation,SHOE-7-WHT,Size,7,1,1,Color,White,1,1
,variation,SHOE-8-BLK,Size,8,1,1,Color,Black,1,1
各バリエーション行には、属性ごとに値を1つだけ入れます(縦線区切りの一覧にはしません)。
グローバル属性とローカル属性
グローバル属性(Attribute N global: 1)
グローバル属性は、WooCommerce の属性タクソノミー(WordPress 管理画面の「商品」→「属性」)で定義します。次のような場合はグローバル属性を使います。
- 複数の商品が同じ属性の値(同じカラー、同じサイズ)を共有している
- ショップページで属性による絞り込みをしたい
- WooCommerce の階層ナビゲーション(レイヤードナビゲーション)ウィジェットを使っている
global: 1 でインポートすると、属性の値がまだなければ WooCommerce が作成します。既存のタクソノミーと対応付けるには、属性名が完全に一致している必要があります(大文字と小文字も区別されます)。
ローカル属性(Attribute N global: 0)
ローカル属性は1つの商品だけのものです。ほかの商品には当てはまらない、その商品固有の仕様に使います(例:特定の商品の Material: 100% cashmere)。
ローカル属性は、バリエーションの絞り込みや階層ナビゲーションには使えません。
属性のインポートでよくあるエラー
属性の列が認識されない
原因:列名がパターンと正確に一致していません。スペースの位置や番号が違う、または名前が省略されています。
誤り:Attribute1 name、attribute 1 name、Attr 1 name
正しい:Attribute 1 name
対処法:Attribute と番号の間にスペースを入れた、正確な列名を使います。
バリエーションの属性が親と一致しない
原因:バリエーション行の属性名が親行の属性名と一致していない、または親の値の一覧にない値がバリエーションに入っています。
対処法:属性名は親行とバリエーション行で完全に同じにします。バリエーションの値は、親行に並べた値の中から選びます。
前後にスペースのある縦線区切り
原因:|(縦線の前後にスペース)と |(スペースなし)が混在しています。WooCommerce は値の前後のスペースを取り除きますが、書き方がそろっていないと不一致の原因になることがあります。
対処法:前後のスペースの有無はどちらでもかまいませんが、ファイル全体で | の書き方をそろえます。WooCommerce は各値の前後のスペースを取り除きます。
StriveFormats で自動修正
WooCommerce の CSV を StriveFormats にアップロードしてください。属性の列名、親とバリエーションの属性の一致、縦線区切りの書式をチェックし、問題を正確な行と列の位置とともに示します。
CSVをStriveFormatsにアップロードして、即座に検証・自動修正・クリーンなエクスポートを行いましょう。