我想更改默认的HTML代码结构,以便插入其他标记
在上运行筛选器img_caption_shortcode
, 你可以在这里的源代码中找到那个钩子。http://core.trac.wordpress.org/browser/tags/3.0.1/wp-includes/media.php#L720
示例
add_filter( \'img_caption_shortcode\', \'my_caption_html\', 10, 3 );
function my_caption_html( $current_html, $attr, $content ) {
extract(shortcode_atts(array(
\'id\' => \'\',
\'align\' => \'alignnone\',
\'width\' => \'\',
\'caption\' => \'\'
), $attr));
if ( 1 > (int) $width || empty($caption) )
return $content;
if ( $id ) $id = \'id="\' . esc_attr($id) . \'" \';
return \'<div \' . $id . \'class="wp-caption \' . esc_attr($align) . \'" style="width: \' . (10 + (int) $width) . \'px">\'
. do_shortcode( $content ) . \'<p class="wp-caption-text">\' . $caption . \'</p></div>\';
}
我基本上借用了原始函数中的大部分代码来在过滤器中使用,但它应该会为您提供一些可以在其上构建的内容。。。
希望有帮助:)