我想在多个ACF字段之前添加h2标签,在/ AC2字段之后添加/ h2标签。这些字段是“ kopregel_onder_slider”和“ kopregel_bij_testimonials”。
这一次只能对一个字段有效,例如:
add_filter('acf/update_value/name=kopregel_onder_slider', 'my_acf_update_value', 10, 3);
为了最大程度地减少代码长度,我想再次对第二个ACF字段重新使用代码,因此,我创建了带有两个ACF字段的数组'$ field_name'。
我已替换:
add_filter('acf/update_value/name=kopregel_onder_slider', 'my_acf_update_value', 10, 3);
具有数组:
add_filter('acf/update_value/name={$field_name}', 'my_acf_update_value', 10, 3);
但它不起作用。
有人知道如何解决这个问题吗?
add_filter('acf/update_value/name=$field_name', 'my_acf_update_value', 10, 3);
也不起作用。
function my_acf_update_value( $value, $post_id, $field ) {
$field_name = array("kopregel_onder_slider", "kopregel_bij_testimonials");
if (strpos($value, "<h2>") !== 0 ) {
$ervoor = "<h2>";
$erachter = "</h2>";
$value = $ervoor.$value.$erachter;
return $value;
}
}
add_filter('acf/update_value/name={$field_name}', 'my_acf_update_value', 10, 3);
答案 0 :(得分:0)
似乎您在单引号中使用PHP变量。
PHP不会使用其他处理来解释单引号内的内容。当您使用双引号时,PHP必须解析以检查字符串中是否有任何变量。
请尝试如下在双引号中更新您的过滤器名称并尝试。
add_filter("acf/update_value/name={$field_name}", "my_acf_update_value", 10, 3);
希望这可以解决问题。