如何从 WordPress 3.5 中的帖子中的画廊获取图像,因为画廊不再与 3.5 中的帖子相关。get_children() 不起作用,因为画廊不是附件。任何帮助表示赞赏。
问问题
6480 次
2 回答
7
您可能必须解析短代码:
http://codex.wordpress.org/Gallery_Shortcode
使用正则表达式:
$post_content = get_the_content();
preg_match('/\[gallery.*ids=.(.*).\]/', $post_content, $ids);
$array_id = explode(",", $ids[1]);
于 2012-12-19T15:27:12.743 回答
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 之前您所习惯的内容。
于 2012-12-28T07:01:29.437 回答