【问题标题】:PHP - add class to anchor in loopPHP - 将类添加到循环中的锚点
【发布时间】:2013-04-07 10:41:50
【问题描述】:

我需要在这个页面的每个锚点上添加一个“project-img”类:http://petekingston.com/portfolio/test/

我的 atm 代码(PHP 循环)是:

<div id="container">
<?php foreach (simple_portfolio_media() as $media_item): ?>
    <div class="box lightGrey masonry masonry-brick">
        <?php   
            $class = ('') ? 'class="project-img"' : '';
            switch ($media_item['type']):
                case 'image':
                    $src = wp_get_attachment_image_src($media_item['value'], 'full');
                    echo "<a $class href=\"$src[0]\">" . wp_get_attachment_image($media_item['value']) . "</a>";
                    break;
                case 'youtube':
                    echo "<p>";
                    echo "<object width=\"480\" height=\"385\">";
                    echo "  <param name=\"movie\" value=\"http://www.youtube.com/" . $media_item['value'] . "&amp;hl=en_US&amp;fs=1\"/>";
                    echo "  <param name=\"allowFullScreen\" value=\"true\"/>";
                    echo "  <param name=\"allowscriptaccess\" value=\"always\"/>";
                    echo "  <embed src=\"http://www.youtube.com/v/" . $media_item['value'] . "&amp;hl=en_US&amp;fs=1\" type=\"application/x-shockwave-flash\" allowscriptaccess=\"always\" allowfullscreen=\"true\" width=\"480\" height=\"385\"/>";
                    echo "</object>";
                    echo "</p>";
                    break;
                case 'snippet':
                    echo $media_item['value'];
                    break;
            endswitch;
        ?>
    </div><!-- END box -->
<?php endforeach; ?>
</div><!-- END container -->

但是,它不会将类添加到锚点。任何帮助将不胜感激。

提前谢谢你!

皮特

【问题讨论】:

  • 什么是 $class= ('') ? 'class="project-img"' : ''; ?它正在检查什么空字符串?
  • 不幸的是,我不擅长 PHP,并试图从这里合并代码:stackoverflow.com/questions/2913415/…

标签: php html image wordpress anchor


【解决方案1】:

您在三元测试中的比较运算符错误:使用== 而不是=。

$class = ($class == ('')) ? 'class="project-img"' : '';

顺便说一句,我不确定你所说的('') 是什么意思!

【讨论】:

  • 是的,我已经用@Royal_BG 的代码改变了它。我对 PHP 几乎一无所知,所以这些代码都不是我写的。不过感谢您的快速回复。 (抱歉没有更准确地解释问题)
【解决方案2】:

既然你没有在其他任何地方使用你的标签和同一个类,只有在“图像”的情况下,你为什么需要一个条件来 $class 变量?更重要的是,为什么需要对变量声明 'class="project-img"'?我会用这种方式:

 $class = 'project-img';
 ...
 echo "<a class='$class' href=\"$src[0]\">" ...

【讨论】:

  • 太棒了,这个课程让我可以用fancybox定位它并设置它的样式。非常感谢!
猜你喜欢
  • 2010-10-19
  • 1970-01-01
  • 2011-09-03
  • 2023-04-10
  • 2021-01-29
  • 2015-06-01
  • 2012-11-27
  • 2021-11-18
  • 2019-05-03
相关资源
最近更新 更多