提供无效参数foreach(wp instagram widget)

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了提供无效参数foreach(wp instagram widget)相关的知识,希望对你有一定的参考价值。

我遇到了wp instagram小部件的问题。我收到的错误是

在第203行为foreach()提供的参数无效。

这是第203行:

if (!$insta_array)
            return new WP_Error('bad_json', __('Instagram has returned invalid data.', $this->cassiwdomain));

        $images = $insta_array['entry_data']['UserProfile'][0]['userMedia'];

        $instagram = array();

        foreach ($images as $image) {

            if ($image['user']['username'] == $username) {

                $image['link']                          = preg_replace( "/^http:/i", "", $image['link'] );
                $image['images']['thumbnail']           = preg_replace( "/^http:/i", "", $image['images']['thumbnail'] );
                $image['images']['standard_resolution'] = preg_replace( "/^http:/i", "", $image['images']['standard_resolution'] );

                $instagram[] = array(
                    'description'   => $image['caption']['text'],
                    'link'          => $image['link'],
                    'time'          => $image['created_time'],
                    'comments'      => $image['comments']['count'],
                    'likes'         => $image['likes']['count'],
                    'thumbnail'     => $image['images']['thumbnail'],
                    'large'         => $image['images']['standard_resolution'],
                    'type'          => $image['type']
                );
            }
        }
答案

问题是解析的json在$ insta_array ['entry_data'] ['UserProfile'] [0] ['userMedia']路径中不包含数组;

在线之前没有检查这个

foreach ($images as $image) {

您可以通过将foreach语句包装在诸如的检查中来修复错误

if (is_array($images)){
    //Existing foreach loop
}

但你仍然看不到来自Instagram的图片

可能是因为Instagram帐户没有任何图片。

您能否验证该帐户确实有图片?

如果您可以发布输出,也会有所帮助

var_dump($insta_array);
exit;

您可以在该行上方添加该代码

if (!$insta_array)

以上是关于提供无效参数foreach(wp instagram widget)的主要内容,如果未能解决你的问题,请参考以下文章

为 foreach() 提供的参数无效

为 foreach() 第 48 行提供的参数无效

PHP嵌套foreach()给出警告:为foreach()提供的参数无效

警告:为 foreach() 提供的参数无效

在 laravel 错误中为 foreach() 提供的参数无效(查看:我看不到 $value

获取 RSS 时为 foreach() 提供的 PHP 参数无效