久々に、wp-rakuten-link(WP Rakuten Linkがエラー。楽天アフィリエイトプラグイン「wp-rakuten-link」を楽天APIの更新に対応させた。 | 自宅サーバの整理箱のものに改良済み)を使って楽天の商品リンクの作成をしたら、変換時にエラーが出るようになっていました。
そういえば利用しているコアサーバのPHPのバージョンが最近変わったから?なのでしょうか(PHP 5.6.21)
wp-rakuten-linkのコードを見てみると、
$origin = @file_get_contents($url);
の所でエラーが出ているようです。
なお、blog.macfeeling.comはSSL化しています。
そこで、「PHP 5.6、wp-rakuten-link」でググってみると、どうもセキュリティ関連らしい… :sad_wp:
ふとアマゾンのリンク作成で使っている、amazonjsは問題でていないなぁと…
そこでamazonjs.phpのコードを覗いてみたところ
function amazon_get( $countryCode, $options ) {
の
$response = wp_remote_request( $url, array( 'timeout' => 30, ) ); if ( is_wp_error( $response ) ) { $error = ''; $errors = $response->get_error_messages(); if ( is_array( $errors ) ) { $error = implode( '<br/>', $errors ); } $message = sprintf( __( 'Network Error: %s', $this->text_domain ), $error ); return compact( 'success', 'message' ); } $body = wp_remote_retrieve_body( $response ); if ( empty($body) ) { $message = sprintf( __( 'Empty Response from %s', $this->text_domain ), $url ); return compact( 'success', 'message' ); }
のwp_remote_requestだと大丈夫そうなので、$bodyを$originに変更して、
$origin = @file_get_contents($url); の部分と置き換えて実行したところ、問題なく動作するように :lol_wp:
コメント