<?php
/*
Plugin Name: YahooAuctionList
Plugin URI: http://test.com
Description: 自分のYahooオークションリストを個別記事に表示します。Yahoo! JAPAN Webサービスを利用していますので、アプリケーションIDが必要です。取得していない方は<a href="http://e.developer.yahoo
co.jp/webservices/register_application" target="_blank">こちら</a>から取得してください。
Author: kira
Version: 0.1
Author URI: http://test.com
PostTabs is released under the GNU General Public License (GPL)
http://www.gnu.org/licenses/gpl.txt
*/
define('SERVICE_URL', "http://api.auctions.yahoo.co.jp/AuctionWebService/V1/SellingList");
// オプションの取得(DBからとってくる)
if(!get_option("yahooAuctionList")){
$options["yahooAuctionList"] = "";
update_option("yahooAuctionList", $options);
}
//ブログ記事への表示処理
function yahooAuctionList_show($content){
if($_GET["p"] != null){
require_once('HTTP/Request.php');
$options=get_option("yahooAuctionList");
$path = get_settings('siteurl').'/wp-content/plugins/yahooAuctionList';
$request = new HTTP_Request(SERVICE_URL);
$request->addQueryString('appid', $options["appid"]);
$request->addQueryString('sellerID', $options["sellerID"]);
$request->sendRequest();
$result = simplexml_load_string($request->getResponseBody());
$page = (string)$result["totalPage"];
$request->addQueryString('page', rand(1,$page));
$request->sendRequest();
foreach($result->item as $item){
$auction_item["title"] = (string)$item->title;
$auction_item["url"] = (string)$item->url;
$auction_item["img"] = (string)$item->img;
$auction_item["price"] = (string)$item->price;
$auctionList[] = $auction_item;
}
$content .= '<br/>';
$content .= $options["sellerID"] . 'の出品リスト';
$content .= '<div style="text-align:center; border:solid 1px #AAAAAA;width:100%;">';
$content .= '<table>';
for($i = $roop_start; $i < 6; $i += 2){
$content .= '<tr>';
if($auctionList[$i]["title"] != null){
$content .= '<td><a href="'. $auctionList[$i]["url"] . '" target="_blank">';
if($auctionList[$i]["img"] != null){
$content .= '<img src="'. $auctionList[$i]["img"] . '"/><br/>';
}else{
$content .= '<img src="' . $path . '/no_image.png"/><br/>';
}
$content .= mb_substr($auctionList[$i]["title"], 0, 50) . "..." . "</a></td>";
if($auctionList[$i+1]["title"] != null){
$content .= '<td><a href="'. $auctionList[$i+1]["url"] . '" target="_blank">';
if($auctionList[$i+1]["img"]){
$content .= '<img src="'. $auctionList[$i+1]["img"] . '"/><br/>';
}else{
$content .= '<img src="' . $path . '/no_image.png"/><br/>';
}
$content .= mb_substr($auctionList[$i+1]["title"], 0, 50) . "..." . "</a></td>";
}
}
$content .= '</tr>';
}
$content .= '</table>';
$content .= '</div>';
}
return $content;
}
add_filter('the_content','yahooAuctionList_show', 1, 1);
// オプション設定
function yahooAuctionList_admin() {
add_options_page
('yahooAuctionList', 'yahooAuctionList', 10, basename(__FILE__), 'yahooAuctionList_admin_page');
}
}
function yahooAuctionList_admin_page() {
if (isset($_POST['submit_yahooAuctionList'])) {
echo "<div class=\"updated\"><p><strong> yahooAuctionListの設定が完了しました。";
$options["appid"] = $_POST['appid'];
$options["sellerID"] = $_POST['sellerID'];
update_option("yahooAuctionList", $options);
echo "</strong></p></div>";
}
$options=get_option("yahooAuctionList");
?>
<div class=wrap>
<form name="qsoptions" method="post">
<h2>yahooAuctionListの設定</h2>
<p>Yahoo! JAPAN WebサービスのアプリケーションIDが必要です。取得していない方は<a href="http://e.developer.yahoo.co.jp/webservices/register_application" target="_blank">こちら</a>から取得してください
。</p>
アプリケーションID:<input type="text" name="appid" value="<?= $options["appid"] ?>" style="width:100px"><br/>
出品者ID:<input type="text" name="sellerID" value="<?= $options["sellerID"] ?>" style="width:100px">
<div class="submit">
<input type="submit" name="submit_yahooAuctionList" value="<?php _e('設定', '') ?> »">
</form>
</div>
<?php
}
add_action('admin_menu','yahooAuctionList_admin');
?>