2010-07-07 4 views
3

WP에서는 문자열에서 단축 코드를 필터링하고 후크 기능을 do_shortcode($string)과 함께 실행할 수 있습니다.Wordpress/PHP - 단일 단축 코드

등록 된 모든 단축 코드 대신 단일 단축 코드를 필터링 할 수 있습니까?

예를 들어 나는뿐만 아니라 주석 포스터 사용할 수 몇 단축 코드가 필요하지만, 모든 분명한 이유 :)이 그때 최선을 다하는, do_shortcode()를 실행, 글로벌 $shortcode_tags를 필터링하여 작동

답변

2
function do_shortcode_by_tags($content, $tags) 
{ 
    global $shortcode_tags; 
    $_tags = $shortcode_tags; // store temp copy 
    foreach ($_tags as $tag => $callback) { 
     if (!in_array($tag, $tags)) // filter unwanted shortcode 
      unset($shortcode_tags[$tag]); 
    } 

    $shortcoded = do_shortcode($content); 
    $shortcode_tags = $_tags; // put all shortcode back 
    return $shortcoded; 
} 

에 대한 이전과 같았습니다.

예제 사용;

$comment = do_shortcode_by_tags($comment, array('tag_1', 'tag_2')); 

이 코멘트에 단축 코드 tag_1tag_2을 적용합니다.