如何在短代码中添加图像

How can I add an image inside a shortcode

我有一张图片显示方式如下:

<img src="<?php bloginfo('template_directory')?>/images/logo/logo.png">

但是,现在我想创建一个具有属性并在其中使用相同图像的短代码。所以我尝试了以下方法:

add_shortcode('scrollTop', function(){
    echo "<a href='#content' class='content'>";
    echo "<img src='bloginfo('"template_directory"')/images/logo/logo.png'">;
    echo "skipping content";
    echo "</a>";
});

我认为这是一个语法错误,但我正在努力寻找解决方法。

如何在短代码中添加图像?

使用 concatenation operator 并更正 bloginfo 函数中的单引号。

add_shortcode('scrollTop', function(){
    echo "<a href='#content' class='content'>";
    echo "<img src='" . bloginfo('template_directory') . "/images/logo/logo.png'>";
    echo "skipping content";
    echo "</a>";
});

还要确保不要在短代码中使用 echo 来显示某些内容。请改用 return。有关详细信息,请参阅 this question

add_shortcode('scrollTop', function(){
    return "<a href='#content' class='content'>
        <img src='" . bloginfo('template_directory') . "/images/logo/logo.png'>
        skipping content
        </a>";
});