Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/wordpress/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
将WordPress过滤器添加到ACF WYSIWYG字段_Wordpress_Advanced Custom Fields_Wysiwyg - Fatal编程技术网

将WordPress过滤器添加到ACF WYSIWYG字段

将WordPress过滤器添加到ACF WYSIWYG字段,wordpress,advanced-custom-fields,wysiwyg,Wordpress,Advanced Custom Fields,Wysiwyg,我目前正在使用以下筛选器替换WordPress中字符串“magic\u click\u link”的任何实例 function click_link ($b) { global $post; $this_post_id = $post->ID; $op_name = get_field('operator_name'); $namenospace = make_no_space("$op_name"); $tracking_link = '/go/

我目前正在使用以下筛选器替换WordPress中字符串“magic\u click\u link”的任何实例

function click_link ($b) {
    global $post;
    $this_post_id = $post->ID;
    $op_name = get_field('operator_name');
    $namenospace = make_no_space("$op_name");

    $tracking_link = '/go/'.$this_post_id.'/';

    $click_link = '<a class="claimCTA" id="operator-step1-'.$namenospace.'" href="'.$tracking_link.'" target="_blank" rel="nofollow">Click here to go to '.$op_name.'!</a>';

    $b = str_ireplace('magic_click_link',$click_link,$b);
    return $b;
}

add_filter( 'the_content', 'click_link');
功能点击链接($b){
全球$员额;
$this\u post\u id=$post->id;
$op_name=get_字段('operator_name');
$namenospace=make_no_space($op_name));
$tracking_link='/go/'.$this_post_id'/';
$click_link='';
$b=str_-ireplace('magic_-click_-link',$click_-link,$b);
返回$b;
}
添加过滤器(“内容”,“点击链接”);
我刚刚更新了此字段以使用ACF WYSIWYG字段,但这导致过滤器停止工作


我相信我需要在过滤器中定位除内容之外的其他内容,但我不确定需要什么…

过滤器
使用函数
内容()自动运行在任何内容输出上,因此默认情况下,这意味着它只适用于标准WordPress post和页面内容

要将这些过滤器应用于自定义字段内容,您需要在输出字段内容时手动调用
apply\u filters()

例如,假设您的自定义字段名为
my\u extra\u content
。使用高级自定义字段,您可以调用:

echo apply_filters("the_content", get_field("my_extra_content"));

这将输出字段的内容,同时对其应用所有常用过滤器。由于您的
click\u link()
函数已经连接到
内容
,因此它将根据您的需要处理您的自定义字段内容。

过滤器
内容
会使用
函数对任何内容输出自动运行,因此默认情况下,这意味着它只适用于标准的WordPress帖子和页面内容

要将这些过滤器应用于自定义字段内容,您需要在输出字段内容时手动调用
apply\u filters()

例如,假设您的自定义字段名为
my\u extra\u content
。使用高级自定义字段,您可以调用:

echo apply_filters("the_content", get_field("my_extra_content"));

这将输出字段的内容,同时对其应用所有常用过滤器。由于您的
click\u link()
函数已连接到
内容
,因此它将根据您的需要处理自定义字段内容。

我没有答案,但我确实注意到,当您将
$tracking\u link
设置为使用
/go/
时,您没有使用
$go\u page
。抱歉,忽略那些线条显示您使用了@James吗?我没有答案,但我确实注意到,当您将
$tracking\u link
设置为使用
/go/
时,您没有使用
$go\u page
。抱歉,忽略那些线条显示您使用了@James吗?