0
我在Wordpress中構建了一個過濾器插件,我用一些html替換了一些插件特定的標籤。Preg_Replace和Capture值? PHP
實例:[VIDEO ID = 12]將通過preg_replaced在此功能
function display_video($text){
$pattern = '/\[VIDEO ID\=\d+\]/';
$text=preg_replace($pattern,get_video_block($id),$text);
return $text;
}
我不完全知道如何確保我提供正確的($ id)的參數去我get_video_block功能所取代爲每個替代事件。
除了preg_replace函數內部沒有真正的循環,所以我將如何提供該值?
想法?
EDIT(get_video_block)功能:
function get_video_block($id){
global $wpdb;
$wpdb->show_errors();
$table_name = $wpdb->prefix . "video_manager";
$query = "SELECT * FROM " . $table_name . " WHERE `index` = '$id'";
$results = $wpdb->get_results($query, ARRAY_A);
$results = $results[0];
$returnString = '<div class="vidBlock">';
$returnString .= $results['embed_code'];
$returnString .= '<div class="voteBar">';
$returnString .= $results['vote_text'];
$returnString .= '<input type="button" value="YES" class="voteButton">';
$returnString .= '<input type="button" value="NO" class="voteButton">';
$returnString .= '</div>';
$returnString .= $results['title'] . '<br>';
$returnString .= $results['description'] . '<br>';
$returnString .= '</div>';
return $returnString;
}
只是好奇,如果它是一個wordpress過濾器與[代碼attrib =「」]模式,爲什麼不使用WordPress的短代碼API? http://codex.wordpress.org/Shortcode_API – azureru 2010-08-25 16:47:57
get_video_block()是做什麼的? – 2010-08-25 16:55:11
我沒有使用它,因爲我之前從未聽說過它;) – 2010-08-25 16:56:14