クロネコヤマトB2用CSVの各行に初期値を入れる
B2用CSVには様々な項目がありますが、クロネコヤマト B2 CSV Expoterはそのすべてを埋めているわけではありません。
しかしながら、フィルターフック yb2_each_row
を利用することで各行をカスタマイズすることができます。
<?php
// フィルターフックを適用
add_filter( 'yb2_each_row', function( array $row, WC_Order $order ) {
// 営業所コードを指定
$row[36] = '9999';
return $row;
}, 10, 2 );
1行は100近くのセルからなっており、任意の項目を書き換えることができます。2番目の引数 はWooCommerceのオーダーオブジェクト(WC_Order)となっていますので、カスタマイズのために利用できます。
セルの番号
送り状に使われるCSVのレイアウトはクロネコヤマトのWebサイトで公開されています。
http://www.kuronekoyamato.co.jp/newb2/help/manual/manual_sosa/16_exchange/exchange_01.html
PHPの配列は0から始まるので、クール宅急便にしたい場合は区分3ですから、1を引いて $row[2] = 2;
とします。
利用シーン
- 出荷予定日を注文日の3日後に決め打ちする
- お届け完了eメールを申し込んでいる場合はそのメールアドレスを入力する
- 冷凍食品が含まれている場合は自動的にクール便扱いにする
他に便利な用途などありましたら、コメントなどでシェアしてください。
サンプルコード
以下からサンプルプラグインをダウンロードすることができます。ご利用ください。
- 配送先住所と請求先住所が異なる場合、CSVの「ご依頼主住所」項目を請求先住所に変更する。ダウンロード
ダウンロードする際は RAW というボタンをクリックし、それからブラウザの機能で保存してください。ダウンロードしたPHPファイルを wp-content/uploads/plugins
にアップロードするとプラグインとして認識されます。