PHP语法打破了图像标记

时间:2016-10-31 19:22:33

标签: php wordpress syntax advanced-custom-fields

我在我的实时网站上遇到问题,该网站在开发网站(在其他主机上)上运行良好。

基本上,它在图像中错误地使用并在最后添加字符...示例:     https://www.idealhomeloans.com/wp-content/uploads/2016/08/refinance-1.jpg/%3E%20%3Cimg%20src=

它应该只是:https://www.idealhomeloans.com/wp-content/uploads/2016/08/refinance-1.jpg

这是我用来将图像带入的PHP代码...

        <?php if( $image ): ?>


            <?php 
            echo '<img class="'. $imagealigned.'"     src="';the_sub_field('image');
        echo '/>';

             ?>

        <?php endif; ?>

  <?php $image  = get_sub_field('image');
//Checking if anything exists for the image field
if ($image) { ?>
<?php echo '<img src="';// display a sub field value
    the_sub_field('image');
    echo '/>';
    ?>
 <?php } //if there is nothing for image then display
else { ?>
<?php } 
?>

知道PHP的人是否可以看一看,看看有没有能够正确呈现图片标签的东西?

非常感谢任何指导!

由于

3 个答案:

答案 0 :(得分:2)

也许如果你实际上看到了你正在生成的html,你会发现你正在生成BAD html:

echo '<img class="'. $imagealigned.'"     src="';the_sub_field('image');
                                              ^---start HTML attribute
echo '/>';
      ^----never end the attribute

所以你正在建设

<img .... src="kittens.jpg>

并在错误merrygoround周围和周围... ...

答案 1 :(得分:2)

尝试将值放入变量。

<?php if ($image): ?>
    <img src="<?= $src; ?>" class="<?= $class; ?>" />
<?php endif; ?>

保持html的格式和标签更容易,您可能会变得更加困惑。另外我认为它更清洁。

答案 2 :(得分:0)

您正在使用分号(;)而不是点(。)来连接the_sub_field