有り難うございます!
教えて頂いた記事、繰り返しフィールドではないので該当しないと思い、
素通りしていました!
無事に画像1 > image1には変換でき、入力できたたのですが、
下記の2点が上手くいきません。
・商品名 > post_title
(ACFのフィールドではなくではなく、タイトルエリアに書き込みたい)
・「カテゴリ1」「カテゴリ2」>「”カテゴリ1,カテゴリ2″」
ACFのフィールドと、デフォルトのフィールドに書き込む場合では、書き方が違うのでしょうか。
以下、ソースです。
ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー
<?php
/*
Plugin Name: RS CSV Importer Customizer
Version: 0.1
*/
function rsci_meta_filter( $meta, $post, $is_update ) {
echo '
<pre>';
print_r($meta);
echo '</pre>
';
$meta_array = array();
$repeater_array = array();
foreach ($meta as $key => $value) {
// カスタムフィールド名が "商品名" だった時
if ($key == '商品名') {
// ACF用のフィールドキーに変換
$meta_array['post_title'] = $value;
// カスタムフィールド名が "画像1" だった時
}elseif($key == '画像1') {
// ACF用のフィールドキーに変換
$meta_array['image1'] = $value;
// カスタムフィールド名が "画像2" だった時
}elseif($key == '画像2') {
// ACF用のフィールドキーに変換
$meta_array['image2'] = $value;
// カスタムフィールド名が "画像3" だった時
}elseif($key == '画像3') {
// ACF用のフィールドキーに変換
$meta_array['image3'] = $value;
// カテゴリの値を代入
} elseif($key == 'カテゴリ') {
$cate = $value;
} elseif($key == 'サブカテゴリ') {
$subcate = $value;
// ACF以外のメタデータはそのまま通す
} else {
$meta_array[$key] = $value;
}
}
// カテゴリとサブカテゴリをカンマ区切りにしてダブルクォーテーションで囲む
$meta_array['tax_product_category'] = '"'.$cate.",".$subcate.'"';
echo '
<pre>';
print_r($meta_array);
echo '</pre>
';
return $meta_array;
}
add_filter( 'really_simple_csv_importer_save_meta', 'rsci_meta_filter', 10, 3 );
?>
post_titleはカスタムフィールドではないので無理です