サポート » プラグイン » Really Simple CSV Importerでチェックボックス項目(複数選択)のインポート方法

  • 解決済 momokichi

    (@momokichi)


    Advanced Custom Fieldで、以下のようなカスタムフィールドを作成しました。

    ラベル:お魚の旬
    フィールド名:season
    フィールドタイプ:チェックボックス
    選択肢:
     s1 : 1月
     s2 : 2月
     s3 : 3月
     ・
     ・
     ・

    チェックボックスは複数選択される前提です。
    このカスタムフィールドの値をReally Simple CSV Importerでインポートしたいのですが
    方法が分かりません。
    (他のテキスト項目などのカスタムフィールドは問題なくインポートできました)

    どなたかアドバイスをいただければと思います。
    よろしくお願いします。

3件の返信を表示中 - 1 - 3件目 (全3件中)
  • モデレーター Takuro Hishikawa

    (@hissy)

    まず、チェックボックスでどのような形式でカスタムフィールドにデータが保存されるのかを確認し、その形式を再現するようにフィルターフックでデータを加工します。

    トピック投稿者 momokichi

    (@momokichi)

    ありがとうございます。
    とりあえず1件、手作業で登録し、get_field(‘season’)の形式を確認したところ

    array(5) { [0]=> string(2) "s1" [1]=> string(2) "s2" [2]=> string(2) "s3" [3]=> string(2) "s4" [4]=> string(3) "s12" }

    といった配列で渡っているようでしたので、
    下記のコードで実装しました。

    ●functions.php
    
    function my_really_simple_csv_importer_meta_filter( $meta, $post, $is_update ) {
    
        $meta_array = array();
        foreach ($meta as $key => $value) {
        	if ($key == 'season') {
        		$meta_array['field_XXXXXXXXXXXXXX'] = preg_split("/,+/", $value);
        	} else {
        		$meta_array[$key] = $value;
        	}
        }
        return $meta_array;
    }
    add_filter( 'really_simple_csv_importer_save_meta',
    'my_really_simple_csv_importer_meta_filter', 10, 3 );
    モデレーター Takuro Hishikawa

    (@hissy)

    great!

3件の返信を表示中 - 1 - 3件目 (全3件中)
  • トピック「Really Simple CSV Importerでチェックボックス項目(複数選択)のインポート方法」には新たに返信することはできません。