自动将行添加到转发器字段
Automatically add rows to repeater field
我有超过 15 个不同的文件夹和它们自己的 .pdf 文件,我需要自动化我的过程,因为我有超过 400 个 pdf。
所以我的架构是这样的:
首先,我有灵活的内容视图来添加文件夹名称,然后我在转发器字段中添加了我的文件名和文件。
结构如下:
有什么方法可以使这个过程自动化吗?就像将文件放在我服务器的文件夹中,然后 运行 一些脚本来添加转发器字段行?这样我就不必一一添加了。
看看这个 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 匹配)"name" 和 "path"。
要获取文件夹中的所有文件,您可以使用 php scandir()
函数。 (docs)
我有超过 15 个不同的文件夹和它们自己的 .pdf 文件,我需要自动化我的过程,因为我有超过 400 个 pdf。
所以我的架构是这样的: 首先,我有灵活的内容视图来添加文件夹名称,然后我在转发器字段中添加了我的文件名和文件。
结构如下:
有什么方法可以使这个过程自动化吗?就像将文件放在我服务器的文件夹中,然后 运行 一些脚本来添加转发器字段行?这样我就不必一一添加了。
看看这个 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 匹配)"name" 和 "path"。
要获取文件夹中的所有文件,您可以使用 php scandir()
函数。 (docs)