【问题标题】:Automatically add rows to repeater field自动将行添加到转发器字段
【发布时间】:2016-09-06 22:40:22
【问题描述】:
我有超过 15 个不同的文件夹,它们都有自己的 .pdf 文件,我需要自动化我的流程,因为我有超过 400 个 pdf。
所以我的架构是这样的:
首先我有灵活的内容视图来添加文件夹名称,然后我有中继器字段,我在其中添加我的文件名和文件。
结构如下:
有没有办法自动化这个过程?就像将文件放在我服务器的文件夹中,然后运行一些脚本来添加转发器字段行?这样我就不必一一添加。
【问题讨论】:
标签:
php
wordpress
advanced-custom-fields
【解决方案1】:
看看这个 acf 函数 (docs)。您可以读取文件夹中的文件并遍历每个文件以添加一行数据。
假设您的文件夹中的文件中有一个数组 $file:
$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);
}
?>
将为 $files 数组中的每个文件添加一行数据(必须与您的 ACF 字段 ID 匹配)“名称”和“路径”。
要获取文件夹中的所有文件,您可以使用 php scandir() 函数。 (docs)