【问题标题】:PHP Doing Strange Things with URLs in Embedded HTML TagsPHP 在嵌入式 HTML 标签中使用 URL 做奇怪的事情
【发布时间】:2013-11-19 18:21:06
【问题描述】:

我在 PHP/HTML 页面上的 for 循环的每次迭代开始时生成一些 URL,如下所示:

if ($chart_track->positionchange == 0) {
    $position_change_image = bloginfo('template_directory') . "/images/equal.png";
}
else if ($chart_track->positionchange > 0) {
    $position_change_image = bloginfo('template_directory') . "/images/up.png";
}
else {
    $position_change_image = bloginfo('template_directory') . "/images/down.png";
}

然后我将 $position_change_image 回显到 img 标签的 src 属性中,如下所示:

<img src="<?php echo $position_change_image; ?>" class="position-image">

这会创建一个断开的链接并以纯文本形式输出 URL 的基础(它的 template_directory 部分)。检查 img src 后,它只有最后一部分,即 /images/up.png。我尝试将 $position_change_image 包装在 esc_url 函数中,但这也不起作用。当我在别处回显 $position_change_image 的实际值时,它就是完整的 URL。为什么以上帝的名义,它会像这样被分解和输出?

【问题讨论】:

    标签: php html wordpress


    【解决方案1】:

    那是因为bloginfo 自动回显,所以你调用了两次 echo!

    改为使用get_bloginfo

    Bloginfo Docs:

    显示有关您网站的信息,主要从 您在用户配置文件和常规设置中提供的信息 WordPress 管理屏幕。它可以在一个范围内的任何地方使用 模板文件。这总是将结果打印到浏览器。如果你需要 在 PHP 中使用的值,使用 get_bloginfo()。

    【讨论】:

      猜你喜欢
      • 2020-11-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-06-27
      • 1970-01-01
      • 2019-02-14
      • 1970-01-01
      相关资源
      最近更新 更多