Wordpress - 将img url的数组打印到各自的标签中

时间:2017-08-01 01:13:30

标签: php wordpress foreach domdocument

我试图以特定方式显示the_content()中包含的图片。我已设法使用DOMDocument()提取图片网址路径,如下所示:

<?php
$content = get_the_content();
$dom = new DOMDocument;
 if ($dom->loadHTML($content)) {
  $imgs = $dom->getElementsByTagName('img');
   if ($imgs->length > 0) {
    foreach ($imgs as $img) {
     $img->getAttribute('src');
    }
   }
 }
?>

回显$img数组表明上面的代码工作正常。我现在需要的是遍历数组并将每个数组元素打印到<img>标记src字段中。以下打印空白链接:

<?php foreach ($imgs as $img) { ?>
                    <a class="fancybox" rel="galeria1" href="<?php echo htmlentities($img); ?>" title="teste">
                        <img class="img-responsive" src="<?php echo htmlentities($img); ?>" alt="" width="474" height="315"></a>
                    <?php } ?>

提前谢谢。

1 个答案:

答案 0 :(得分:1)

不确定我是否会这样做,这是一个非常混乱的实施IMO,但回答你的问题:

要显示图像,您需要获取实际图像中的值:

$img

像这样:

$img->getAttribute('src')

看起来你在第一个例子中已经完成了这个,但不是你的第二个例子?

你的第二个例子应该是这样的:

<?php foreach ($imgs as $img) { ?>
    <a class="fancybox" rel="galeria1" href="<?php echo $img->getAttribute('src'); ?>" title="teste">
    <img class="img-responsive" src="<?php echo $img->getAttribute('src');  ?>" alt="" width="474" height="315"></a>
<?php } ?>