welcart 商品リストcsvファイルのカスタマイズ ―カスタムフィールド編

以下は、商品データ出力で「全項目」を選択してダウンロードした場合の説明

file : usc-e-shop/functions/define_function.php
function : usces_download_item_list()

デフォルトの仕様

カスタムフィールドのkeyと値は、CSVファイルの「カスタムフィールド」列に保存される。CSVをエクセルで開いた場合、AA列である。
例)_itemOrderAcceptable=0;product_price=2000;product_size=M;product_color=red
「key=値;」の形式で記載される。
カスタムフィールドが複数あれば後ろに追記されていく。

保存されるカスタムフィールド項目は2種類。

  1. _itemOrderAcceptableのkeyと値
    値には、1(売り切れ時の購入制限しない)か、 0(売り切れ時の購入制限する)が入る。 1行目 usces_get_item_custom_fields関数で保存対象のカスタムフィールドを取得
  2. ユーザーが管理画面で作成・保存したカスタムフィールド
    管理画面で独自に追加・保存したカスタムフィールドのkeyと値が入る。 2行目 get_post_user_customメソッドで

カスタマイズ

独自に追加した先頭が_で始まるカスタムフィールドをCSVに保存

先頭が_で始まるカスタムフィールドは、デフォルトではCSVファイルに保存されない。
上述のとおり、_itemOrderAcceptableだけが保存される。

CSVファイルへ保存する先頭が_で始まるカスタムフィールドを定義する関数usces_get_item_custom_fieldsのフィルターフックを使う。
この関数にあるusces_filter_item_custom_fieldsフックで、保存するカスタムフィールドを追加できる。

add_filter( 'usces_filter_item_custom_fields', function() {
	$item_custom_fields = array( '_itemOrderAcceptable', '_product_price', '_sell_by' );
	return $item_custom_fields;
} );


コメント

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です