функция add_filter в теме (wordpress)

У меня есть функция для шифрования содержимого:

function rewrite_text( $article, $case_sensitive=false ) {

    $workwith=$article;
    *(hide line code for copyright)....(hide line code for copyright)*
    $codul='<script type="text/javascript">
document.write(String.fromCharCode('.$numbers.'));
</script>';
        $workwith=$codul;
        }
    return $workwith;
}
add_filter('the_content', 'rewrite_text', 100);

В моей теме WordPress (тема WordPress deTube) есть функция для показа проигрывателя YouTube (в теме_имя/функции.php):

function dp_video($post_id, $autoplay = false) {    
    $file = get_post_meta($post_id, 'dp_video_file', true);
    $file = !empty($file) ? explode("\n", $file) : array();
    $url = trim(get_post_meta($post_id, 'dp_video_url', true));
    $code = trim(get_post_meta($post_id, 'dp_video_code', true));
    if(!empty($code)) {
        $code = do_shortcode($code);
        if(function_exists('jwplayer_tag_callback'))
            $code = jwplayer_tag_callback($code);
        $code = extend_video_html($code, $autoplay);        
        echo '<div class="video-wrap">'.$code.'</div>';
    } elseif(!empty($url)) {
        $youtube_id = getYouTubeIdFromURL($url);
        $video = "<div class=\"video-wrap\"><embed src=\"http://www.youtube.com/v/".$youtube_id."?modestbranding=1&version=3&hl=vi_VN&rel=0&autoplay=1&showsearch=0&iv_load_policy=3&theme=light\" type=\"application/x-shockwave-flash\" allowFullScreen=\"true\" allowScriptAccess=\"always\" width=\"100%\" height=\"100%\"/></div>";
        echo $video;

Я хочу зашифровать ссылку на YouTube (код проигрывателя YouTube) с помощью функции add_filter dp_video, используя:

add_filter('dp_video', 'rewrite_text', 100);

Но это не работает! Можете ли вы помочь мне добавить фильтр для функции dp_video? Большое спасибо!


person HanSho    schedule 25.10.2012    source источник


Ответы (1)


Если вы делаете add_filter('dp_video'), где-то должно быть apply_filters('dp_video'). Например, если вы хотите отфильтровать $video, вы можете изменить последнюю строку на

echo apply_filters('dp_video', $video);
person offroff    schedule 25.10.2012