我设法在cf7中获得下拉菜单的默认值,但我想知道是否有可能从简码中获取所有值。
将它们与管道一起使用将很有帮助,因为我需要向其传递ID和标签。
如果我不清楚。我正在尝试在此表单上构建下拉列表:
[select your-recipient "CEO|55"
"Sales|45"
"Support|99"]
但是我需要通过简码传递这三个值。
参考:https://contactform7.com/getting-default-values-from-shortcode-attributes/
我通过在functions.php
中创建一个动态选择字段来解决这一问题。我正在使用公共变量填充的选择字段值。
function dynamic_field_values($tag, $unused)
{
$dates = get_query_var('DATES');
if ($tag['name'] != 'dates')
return $tag;
if (!count($dates ) > 0) {
$tag['raw_values'][] = 'No dates available';
$tag['values'][] = 'No dates available';
$tag['labels'][] = 'No dates available';
return $tag;
} else {
foreach ($dates as $date) {
$tag['raw_values'][] = $date->id;
$tag['values'][] = $date->id;
$tag['labels'][] = $date->caption;
}
return $tag;
}
}
add_filter('wpcf7_form_tag', 'dynamic_field_values', 10, 2);