0

是的,所以我一直在使用 Facebook API 并且可以确认图像在那里,我正在尝试将其导入 Wordpress 以将其附加到帖子中。

这是我确定问题所在的代码。

if (!empty($image)){
                $fql ="SELECT src_big FROM photo WHERE pid = \"$image\"";
                $fql = urlencode($fql);
                $feedurl = "https://graph.facebook.com/fql?q=$fql&access_token=$page_at";
                $feed=file_get_contents($feedurl);
                $feed = json_decode($feed);
                $image = $feed->data[0]->src_big;

                $tmp = download_url( $image );
                $desc = "SocialHub Facebook Image";
                $file_array['name'] = 'Facebook Image '.$postid;
                $file_array['tmp_name'] = $tmp;
                if ( is_wp_error( $tmp ) ) {
                    @unlink($file_array['tmp_name']);
                    $file_array['tmp_name'] = '';
                    echo $tmp->get_error_message();
                }
                // do the validation and storage stuff
                $id = media_handle_sideload( $file_array, $postid, $desc );
                // If error storing permanently, unlink
                if ( !is_wp_error($id) ) {
                    set_post_thumbnail( $postid, $id );
                }else{
                    echo $id->get_error_message().'<br>';
                }
            }

但是运行时我收到错误消息:

SSL certificate problem, verify that the CA cert is OK. Details: error:14090086:SSL routines:SSL3_GET_SERVER_CERTIFICATE:certificate verify failed

如果有人能想到一种方法来下载没有 SSL 证书错误的 facebook 图像,那将不胜感激。

提前致谢。

4

2 回答 2

1

这是一个更彻底的解决方法。

add_filter( 'https_local_ssl_verify', '__return_false' );
add_filter( 'https_ssl_verify', '__return_false' );

另请参阅: https ://wordpress.stackexchange.com/questions/72529/filter-any-http-request-uri

于 2015-12-12T02:36:46.503 回答
0

没关系,回答我自己的问题;facebook 作为所有有和没有 SSL 的图像,所以必须简单地添加:

$image = str_replace('https://','http://',$image);

使用 download_url() 函数之前

于 2013-01-09T10:55:37.743 回答