/* 原文URL:https://stackoverflow.com/questions/55797894/why-cant-i-get-the-gallery-block-from-my-post-type-to-show-in-my-wordpress-api/55821820#55821820 google翻译结果 下面的这些函数仅[gallery]适用于经典编辑器中使用的(旧)短代码,因此它们将不返回带有Gallery块(画廊)的任何内容(即...):区域中的内容 */ get_post_gallery() get_post_gallery_images() get_post_galleries() get_post_galleries_images() /* 而且我不知道Gallery块的输出方法。但是,您可以使用此自定义函数获取与get_post_galleries_images()返回的结果类似的内容 使用: (将其添加到主题functions.php文件中) */ //2019/10/26 function get_post_block_galleries_images( $post_id ) { $content = get_post_field( 'post_content', $post_id ); $srcs = []; $i = -1; foreach ( parse_blocks( $content ) as $block ) { if ( 'core/gallery' === $block['blockName'] ) { $i++; $srcs[ $i ] = []; preg_match_all( '#src=([\'"])(.+?)\1#is', $block['innerHTML'], $src, PREG_SET_ORDER ); if ( ! empty( $src ) ) { foreach ( $src as $s ) { $srcs[ $i ][] = $s[2]; } } } } return $srcs; } //使用方法 get_post_block_galleries_images( $ID );