質問するログイン新規登録

回答編集履歴

3

コードを追加

2019/04/25 03:47

投稿

CHERRY
CHERRY

スコア25234

answer CHANGED
@@ -12,4 +12,42 @@
12
12
  2. 読み込んだカスタムフィールドデータを元にして、現在のデータを追加・置換する。
13
13
  3. 更新したデータを返す。
14
14
 
15
- という処理を行う必要があります。
15
+ という処理を行う必要があります。
16
+
17
+ ----
18
+ (2019.04.25 12:45追記)
19
+
20
+ 昼の合間にざっと書いてみたのですが、ちょっとテストできるタイミングが遅くなりそうなので、未テストですが、記載しておきます。
21
+ やっつけ感満載...ですが、こんな感じだとどうでしょうか。
22
+
23
+ $meta の中身がリピーターフィールドの項目だけなら、foreach せずに そのまま ` add_row('member', $meta, $post_id); ` でも良いかもしれません。
24
+
25
+ ```
26
+ function rsci_meta_filter186134 ( $meta, $post, $is_update ) {
27
+
28
+ echo '<pre>';
29
+ print_r($meta);
30
+ echo '</pre>';
31
+
32
+ $post_id = $post['ID'];
33
+ $repeater_array = array();
34
+
35
+ foreach ($meta as $key => $value) {
36
+ if ($key == 'name') {
37
+ $repeater_array['name'] = $value;
38
+ } elseif ($key == 'link') {
39
+ $repeater_array['link'] = $value;
40
+ }
41
+ }
42
+
43
+ $i = add_row('member', $repeater_array, $post_id);
44
+
45
+ echo '<pre> row = '. $i ."\n";
46
+ print_r($repeater_array);
47
+ echo '</pre>';
48
+
49
+ return;
50
+ }
51
+
52
+ add_filter( 'really_simple_csv_importer_save_meta', 'rsci_meta_filter186134', 10, 3 );
53
+ ```

2

追記修正

2019/04/25 03:47

投稿

CHERRY
CHERRY

スコア25234

answer CHANGED
@@ -1,8 +1,11 @@
1
- Really Simple CSV Importer は、同じ投稿IDのデータは、1 行にまとまってる前提なので、同じ投稿 ID のデータが複数行ある場合は、最後のデータで上書きされます。
1
+ Really Simple CSV Importer のデフォルトの動作は、同じ投稿IDのデータは、1 行にまとまってる前提なので、同じ投稿 ID のデータが複数行ある場合は、最後のデータで上書きされます。
2
2
 
3
3
 
4
4
  同じ投稿IDのデータが、1ファイルに複数入っている構造のCSVファイルをインポートする場合は、保存済みのデータを読み込んで加工する等の工夫が必要です。
5
5
 
6
+
7
+ たとえば...
8
+
6
9
  同じ投稿IDに追加されるデータが、ファイルに複数行含まれるのであれば、以下のような処理をする必要があります。
7
10
 
8
11
  1. $post に投稿オプジェクトが渡されてくるので、$post->ID を参照して、現在投稿IDのカスタムフィールドデータを読み込む。

1

追記修正

2019/04/24 04:35

投稿

CHERRY
CHERRY

スコア25234

answer CHANGED
@@ -1,7 +1,7 @@
1
1
  Really Simple CSV Importer は、同じ投稿IDのデータは、1 行にまとまってる前提なので、同じ投稿 ID のデータが複数行ある場合は、最後のデータで上書きされます。
2
2
 
3
3
 
4
- 同じ投稿IDが、1ファイル複数入る構造の場合は、保存済みのデータを読み込んで加工する等の工夫が必要です。
4
+ 同じ投稿IDのデータが、1ファイル複数入っている構造のCSVファイルをインポートする場合は、保存済みのデータを読み込んで加工する等の工夫が必要です。
5
5
 
6
6
  同じ投稿IDに追加されるデータが、ファイルに複数行含まれるのであれば、以下のような処理をする必要があります。
7
7