2016-11-16 164 views
0

我坚持一个“警告:无效的参数为foreach()中的215行header.php提供”在我正在建设的网站,并没有丝毫的线索。它必须与我吮吸编码的事实有关。为Wordpress中的foreach()提供的参数无效。没有线索

它的内容如下。 215线是第二个。

<div class="section-background-pagination caroufredsel-pagination"> 
        <?php foreach ($hero_slides as $i => $slide_id) : ?> 
         <a href="#"></a> 
        <?php endforeach; ?> 

感谢所有聪明的家伙在这里

+0

如何设置$ hero_slides?是否有时缺席,有些页面没有旋转木马?如果是这样,你可能需要用类似if(isset($ hero_slides))或if(!empty($ hero_slides))的方式围绕轮播代码: – Mason

+0

[PHP警告:提供给foreach() ](http://stackoverflow.com/questions/6572061/php-warning-invalid-argument-supplied-for-foreach) – Henders

+0

这是header.php。它被放在主页上,如下面的主题http://solopine.com/willow/ –

回答

1

看起来你的$ hero_slides数组是空的,所以的foreach不能“碰”的任何数据。 尝试在开始foreach之前检查你的数组。

<?php if (!empty($hero_slides)) : ?> 
<?php foreach ($hero_slides as $i => $slide_id) : ?> 
<a href="#"></a> 
<?php endforeach; ?> 
<?php endif; ?> 

你可以看看你的阵列里用的print_r:

<?php print_r($hero_slides); ?> 
+0

上部分感谢您的答案。我实在太无能为力了,无法将编码深入到这个层面。这基本上是我安装和定制的WordPress主题中的一个错误。有什么我可以改变的只是使警告熄灭?谢谢 –

+0

那么,你能够看到文件中包含什么代码,对吧?只需将此代码更改为上面我的答案中的代码即可。 – Alex

+0

我做到了,但仍然在第216行添加了<?php endif; ?>如果我把它拿出来它的网站崩溃,我得到一个解析错误:语法错误,意外的文件在350年底。线350似乎并不存在购买最后一个,348,作为相同的<?php endif ; ?>任何进一步的建议?谢谢! –