2016-11-16 14 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 ; ?>任何進一步的建議?謝謝! –