0

the_contentWordPressのデフォルトの「the_content」を使用して、str_replaceを使用して変更しています。

ただし、これは Advanced Custom Fields プラグインを介して送信されたものには影響しないようです。

デフォルトのWordPressエディターで動作する私の元の関数:

function same_youtube_options($content) {
  return str_replace("rel=0&", "rel0&theme=light&autohide=1&showinfo=0&controls=1&", $content);
}
add_filter('the_content', 'same_youtube_options');

そして、これは高度なカスタム フィールド用に調整されています。

function same_youtube_options_controls_acf($field) {
  $field = get_sub_field('iframe_url'); 
    return str_replace("rel=0&", "rel0&&autohide=1&showinfo=0&controls=1&", $field);
}

add_filter('acf/load_field/name=iframe_url', 'same_youtube_options_controls_acf');

ただし、後者は機能しません。ページからフィールドを削除するだけです。これらのフィルターを正しく使用する方法を知っている人はいますか?

4

1 に答える 1

1

これを試して: -

function same_youtube_options_controls_acf($value, $post_id, $field )
{
    // run the_content filter on all textarea values
    $value = apply_filters('the_content',$value);
    return $value;
}
add_filter('acf/load_value/name=iframe_url', 'same_youtube_options_controls_acf', 10, 3);

the_contentこのフックは、カスタム フィールドの値をフィルターに置き換えます。

于 2014-02-06T14:13:16.607 に答える