我创建了一个自定义职位类型“候选人”,该职位类型将用于存储申请空缺的候选人提交的信息。我也有一个自定义帖子类型,称为“空缺”。
我已经在两组帖子类型的自定义字段上使用了ACF。
我已经设置了ACF前端表单,以允许候选人提交申请。我有一个按钮,用户单击该职位将其发送到表单所在的页面。作为按钮的一部分,我传递了空缺的标题,并能够在表单所在的页面上传递并回显该空缺(因此它正在传递)。
在我生命中,我无法获得此空缺职位字段来自动填充前端表单上的字段。
以下是代码段。 我正在创建前端表单的页面
$vacancy = isset( $_GET['vacancy'] ) ? esc_attr( $_GET['vacancy'] ) : '';
$vacancyurl = isset( $_GET['vacancyurl'] ) ? esc_attr( $_GET['vacancyurl'] ) : '';
acf_form_head();
get_header();
?>
<div id="primary" class="content-area">
<div id="content" class="site-content" role="main">
<div class="candidateformcontainer">
<?php /* The loop */ ?>
<?php while ( have_posts() ) : the_post(); ?>
<div>
<h1><?php echo get_the_title(); ?></h1>
<p>To proceed with submitting your application for <strong><?php echo $vacancy; ?></strong> complete the application form below.</p>
</div>
<?php
acf_form('acf-candidate-application-form');
?>
<?php endwhile; ?>
</div>
</div><!-- #content -->
</div><!-- #primary -->
<?php get_footer();
我试图将标题传递给的字段(因此$ vacancy变量)
<?php the_field( 'vacancy_applied_for' ); ?>
Field Number: field_5dba152669aaf
任何帮助或指针将不胜感激。我已经用尽了ACF文档。
答案 0 :(得分:0)
因此,感谢ACF出色的人员设法解决了这个问题。
您将使用“准备字段”过滤器来更新字段,并在页面上呈现该字段之前先使用您传递的值。
以下是帮助文档的链接:https://www.advancedcustomfields.com/resources/acf-prepare_field/
使用此过滤器,我需要将以下代码段添加到我的functions.php文件中。
function populate_vacancy_applied_for($field) {
// only on front end
if (is_admin()) {
return $field;
}
if (isset($_GET['vacancy'])) {
$field['value'] = $_GET['vacancy'];
}
return $field;
}
add_filter('acf/prepare_field/key=field_5dba152669aaf', 'populate_vacancy_applied_for');