2016-08-17 18 views
1

私は自分自身の.pdfファイルで15以上の異なるフォルダを取得しました。私は400以上のpdfを手に入れてからプロセスを自動化する必要があります。リピータフィールドに行を自動的に追加

私のスキーマは次のようになります。 最初に、フォルダ名を追加するための柔軟なコンテンツビューがあり、ファイル名とファイルを追加するリピータフィールドがあります。

構造は次のようになります。 folder structure

は、このプロセスを自動化する方法はありますか?私のサーバーのフォルダ内にファイルを置いて、リピータフィールドの行を追加するスクリプトを実行するのと同じですか?そういうわけで、私はすべてをひとつずつ追加する必要はありません。

答えて

2

このacf関数(docs)を見てください。フォルダ内のファイルを読み取り、各ファイルをループしてデータを含む行を追加することができます。

のは、あなたのフォルダ内のファイルから配列$ファイルを持っているとしましょう:このような

$files = array(
    array(
    'name' => 'file1.pdf', 
    'path' => '/var/www/wp/uploads/file1.pdf' 
), 
    array(
    'name' => 'file2.pdf', 
    'path' => '/var/www/wp/uploads/file2.pdf' 
) 
); 

は何か:

<?php 
    foreach($file as $f) { 

    $data = array(
     'name' => $f['name'], 
     'path' => $f['path'] 
    ); 

    add_row('files', $data); 

    } 
?> 

(あなたのACFと一致しなければならないデータを持つ行を追加しますフィールドID)$ files配列内のすべてのファイルの "name"と "path"。

フォルダ内のすべてのファイルを取得するには、PHP scandir()関数を使用できます。 (docs

関連する問題