从帖子的画廊WordPress 3.5获取图像

时间:2012-12-14 06:03:32

标签: wordpress attachment get-childitem

如何从WordPress 3.5中的帖子中的图库中获取图像作为图库不再与3.5中的帖子相关。 get_children()不起作用,因为图库不是附件。任何帮助表示赞赏。

2 个答案:

答案 0 :(得分:7)

您必须解析短代码:

http://codex.wordpress.org/Gallery_Shortcode

使用正则表达式:

$post_content = get_the_content();
preg_match('/\[gallery.*ids=.(.*).\]/', $post_content, $ids);
$array_id = explode(",", $ids[1]);

答案 1 :(得分:0)

`global $post;
    $post_subtitrare = get_post( $post->ID );
    $content = $post_subtitrare->post_content;
    $pattern = get_shortcode_regex();
    preg_match( "/$pattern/s", $content, $match );
    if( isset( $match[2] ) && ( "gallery" == $match[2] ) ) {
        $atts = shortcode_parse_atts( $match[3] );
        $attachments = isset( $atts['ids'] ) ? explode( ',', $atts['ids'] ) : get_children( 'post_type=attachment&post_mime_type=image&post_parent=' . $post->ID .'&order=ASC&orderby=menu_order ID' );
    }`

$attachments将为您提供WordPress 3.5之前的习惯。