没有内置的方法从帖子正文中提取图像/图像src。如果图像是附件,则可以使用get_children
或WP_Query
, 和wp_get_attachment_image_src
.
function get_image_src_from_content_101578($content) {
global $post;
$args = array(
\'post_parent\' => $post->ID,
);
$images = get_children($args);
foreach ($images as $img) {
var_dump(wp_get_attachment_image_src($img->ID));
}
}
add_action(\'the_content\',\'get_image_src_from_content_101578\');
您也可以使用
regex
.
function replace_image_link_101578($content) {
$pattern = \'|<img.*?src="([^"]*)".*?/?>|\';
$content = preg_match($pattern,$content,$matches);
var_dump($matches);
return $content;
}
add_filter(\'the_content\',\'replace_image_link_101578\');
后者可能会减少服务器的工作量,但也可能不太可靠。如果嵌入的图像不是附件,那么这将是您唯一的选择。
仅返回图像的非挂钩示例src
属性(如果找到)。
function replace_image_link_($content) {
$pattern = \'|<img.*?src="([^"]*)".*?/?>|\';
$content = preg_match($pattern,$content,$matches);
return (!empty($matches[1])) ? $matches[1] : \'\';
}