【问题标题】:php variable in a echo string回显字符串中的 php 变量
【发布时间】:2014-01-28 01:47:04
【问题描述】:

我是第一次自定义 wordpress,所以我对 PHP 语言还很陌生,有些东西让我发疯。 我编写了该函数来将我的 HTML5/CSS3/JQUERY 布局转换为 CMS:

<?php $property = simple_fields_values("pillow_front");
  foreach ($property as $value) {
    echo "<div class='solo'>";
      echo "<div class='box coussin'>";
        echo "<div class='outImg'><img src='" . wp_get_attachment_url($value) . "'/></div>";
      echo "</div>";
    echo "</div>";
  }
?>

但是在前端它不起作用,当我查看代码时,似乎 img 标签没有正确关闭:

<div class="solo">
  <div class="box coussin" style="width: 328px; height: 328px;">
    <div class="outImg" style="opacity: 1;">
      <img src="http://localhost:8888/wp-content/uploads/2014/01/021.jpg" style="width: 328px; height: 328px;">
    </div>
  </div>
</div>

如果 . PHP 中的 + 与 javascript 中的 + 完全等价,但我尝试了很多东西,我可以让该标签正确关闭!

谢谢

【问题讨论】:

  • 您是在查看页面源代码还是 Chrome 开发者工具中的元素视图之类的东西?
  • 该样式是如何添加的?也有些不对劲,不能是输出,因为单引号会神奇地变成双引号
  • 你能粘贴浏览器页面源代码的确切代码吗?

标签: php wordpress var


【解决方案1】:

您可以在另一个系统中打印,如下所示:

<?php 
$property = simple_fields_values("pillow_front");
 foreach ($property as $value) {
 ?>
  <div class='solo'>
   <div class='box coussin'>
    <div class='outImg'><img src="<?php print wp_get_attachment_url($value);?>"/></div>
   </div>
  </div>
 <?php
 }
 ?>

请注意,我把函数的echo放在只是因为我不知道它是如何工作的,它可能不是必需的,只有在需要时才使用php。

【讨论】:

    【解决方案2】:

    或者只是更多的 MVC 模式,或者在这种情况下只是 MV? ;) 在没有 Wordpress 的情况下试试这个。

    <?php
    
        //Init
        $property = simple_fields_values("pillow_front");
        $template = '<div class="solo">
           <div class="box coussin">
            <div class="outImg"><img src="{MARKER:FRONT}" /></div>
           </div>
          </div>';
    
        foreach ($property as $value) {
            echo str_replace(array('{MARKER:FRONT}'), array($value), $template);
        }
    ?>
    

    据我所知,您的代码风格并未与 WP-Styleguide 确认。 WP 正在使用 HTML/PHP 模板。在 WP 中,您的视图需要看起来像这样。

    <?php foreach(simple_fields_values("pillow_front") as $value): ?>
    <div class='solo'>
        <div class='box coussin'>
            <div class='outImg'><img src="<?php echo htmlentities(value): ?>"/></div>
        </div>
    </div>
    <?php endforeach; ?>
    

    【讨论】:

    • 实际上问题出在我的代码中的其他地方,php格式化的东西和jquery格式化的东西之间的冲突......但是“你可以做的更少的php”真的帮助了我,所以谢谢你的提示.而且似乎在 HTML5 中,img 标签不再需要关闭了……
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-12-24
    • 2022-11-02
    • 1970-01-01
    • 2021-09-02
    • 2013-03-30
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多