所以我在s模板页面中有两个字段:
<?php echo get_post_field('post_content', 12345); ?>
<?php the_field('advertisement_one', 12345); ?>
第一个字段呈现为:
<p>
<img src="test.jpg">
</p>
第二个字段呈现为:
<p>
<img src="test2.jpg">
</p>
有没有办法可以从两个字段中的“src”中提取文本内容?
我的目标是写/显示:
test.jpg
or
test2.jpg
答案 0 :(得分:1)
你可以试试这个:
<?php
$str = get_post_field('post_content', 12345);
$str = str_replace("\n", '', $str);
$str = str_replace('<p><img src="', '', $str);
$str = str_replace('"></p>', '', $str);
echo $str;
?>
答案 1 :(得分:1)
$content1 = get_post_field('post_content', 12345);
$content2 = get_field('advertisement_one', 12345);
$src1 = preg_replace('|^.+src=["\'](.*)["\'].+$|s','$1',$conten1);
$src2 = preg_replace('|^.+src=["\'](.*)["\'].+$|s','$1',$conten2);
答案 2 :(得分:1)
您可以使用preg_match检查img标记并获取其src值
请尝试此代码
<?php $value = get_post_field('post_content', 12345);
$value2 = get_field('advertisement_one', 12345);
$src1 = preg_match('/< *img[^>]*src *= *["\']?([^"\']*)/i', $value, $matches);
echo $matches[1];
$src2 = preg_match('/< *img[^>]*src *= *["\']?([^"\']*)/i', $value2, $matches);
echo $matches[1];
?>