private static function search($keyword)
 {
     if ($output = self::fetchCache($keyword)) {
         return $output;
     }
     $options = get_option('wp_rakuten_options');
     // 楽天商品検索
     $client = new RakutenRws_Client();
     $client->setApplicationId($options['developer_id']);
     $client->setAffiliateId($options['affiliate_id']);
     $response = $client->execute('IchibaItemSearch', array('keyword' => $keyword, 'availability' => '1', 'sort' => '+affiliateRate', 'hits' => 1));
     $html = '';
     foreach ($response as $item) {
         if ((int) $item['imageFlag'] === 1) {
             $html .= "<p>";
             $html .= "<a href=\"{$item['affiliateUrl']}\">";
             $html .= "<img src=\"{$item['mediumImageUrls'][0]['imageUrl']}\"><br />";
             $html .= "{$item['itemName']}</a>";
             $html .= "</p>";
         }
     }
     $output = '<!-- Rakuten Plugin Start -->';
     $output .= $html;
     $output .= '<!-- Rakuten Plugin End -->';
     self::createCache($keyword, $output);
     return $output;
 }
 private function search_ranking($search_parms)
 {
     $rakuten_client = new RakutenRws_Client();
     $rakuten_client->setApplicationId($this->rakuten_apuri_id);
     $rakuten_client->setAffiliateId($this->afferiate_id);
     $response = $rakuten_client->execute('IchibaItemRanking', $search_parms);
     if ($response->isOk()) {
         //$this->Session['search_item_result'] = $response;
         $this->Session['search_item_result'] = $this->convArr_RakutenApiResponce($response);
         $this->Session['search_item_result_max_page'] = $response['pageCount'];
         $this->Session['search_item_result_now_page'] = $response['page'];
     } else {
         header('Content-Type: application/json');
         echo json_encode(array('error' => 'search_error', 'error_message' => $response->getMessage()));
         exit;
     }
 }
Example #3
0
    header('Location: index.php?keyword=' . urlencode($keyword) . '&page=' . urlencode($page));
    exit;
}
// 現在のリクエストURLを取得します。(リダイレクト用)
$port = ':' . $_SERVER['SERVER_PORT'];
$isSecure = isset($_SERVER['SSL']) && $_SERVER['SSL'] == 'on';
$scheme = 'http';
if ($isSecure) {
    $scheme = 'https';
}
if ($scheme == 'http' && $port == ':80' || $scheme == 'https' && $port == ':443') {
    $port = '';
}
$url = $scheme . '://' . $_SERVER['HTTP_HOST'] . $port . $_SERVER['PHP_SELF'] . '?' . $_SERVER['QUERY_STRING'];
// Clientインスタンスを生成
$rwsclient = new RakutenRws_Client();
// アプリIDをセット
$rwsclient->setApplicationId(RAKUTEN_APP_ID);
// Secretをセット
$rwsclient->setSecret(RAKUTEN_APP_SECRET);
// アフィリエイトIDをセット (任意)
$rwsclient->setAffiliateId(RAKUTEN_APP_AFFILITE_ID);
// 認証時リダイレクトURLをセット
$rwsclient->setRedirectUrl($url);
// リクエストに 'code' があった場合、アクセストークンを取得し
// API を実行します。
// If a request has 'code', get access_token and execute API
if ($_GET['code']) {
    // アクセストークンを取得します。
    if ($rwsclient->fetchAccessTokenFromCode()) {
        // Bookmark追加APIを実行します (http://webservice.rakuten.co.jp/api/favoritebookmarkadd/)
Example #4
0
<?php

require_once dirname(__FILE__) . '/../autoload.php';
require_once dirname(__FILE__) . '/config.php';
require_once dirname(__FILE__) . '/helper.php';
$response = null;
$keyword = "";
$page = 1;
if (isset($_GET['keyword'])) {
    $keyword = $_GET['keyword'];
    $page = isset($_GET['page']) ? $_GET['page'] : 1;
    // Clientインスタンスを生成 Make client instance
    $rwsclient = new RakutenRws_Client();
    // アプリIDをセット Set Application ID
    $rwsclient->setApplicationId(RAKUTEN_APP_ID);
    // アフィリエイトIDをセット (任意) Set Affiliate ID (Optional)
    $rwsclient->setAffiliateId(RAKUTEN_APP_AFFILITE_ID);
    // プロキシの設定が必要な場合は、ここで設定します。
    // If you want to set proxy, please set here.
    // $rwsclient->setProxy('proxy');
    // 楽天市場商品検索API2 で商品を検索します
    // Search by IchibaItemSearch (http://webservice.rakuten.co.jp/api/ichibaitemsearch/)
    $response = $rwsclient->execute('IchibaItemSearch', array('keyword' => $keyword, 'page' => $page, 'hits' => 9));
}
?>
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Rakuten Web Service SDK - Sample</title>
<link rel="stylesheet" href="style.css" type="text/css">