kazunoko
フォーラムへの返信
4件の返信を表示中 - 1 - 4件目 (全4件中)
-
フォーラム: プラグイン
返信が含まれるトピック: MWWPFormセレクトボックス選択でテキストボックスを表示shokun0803さん、こんにちは。
記載いただきましたコードで無事、出来るようになりました!
セレクトボックスの場合は「change」になるのですね、大変勉強になりました。フォーラム: 使い方全般
返信が含まれるトピック: 中古車検索apiを利用した固定ページのページネーションgblsm様
ご指摘のとおり、コードを修正した所、無事「Last」のページが表示できました。
私も「$additional_loop」の値をセットしていないのにと思っていましたが、何故か動いたので無視していました。また、PHPコード自体はサンプルを繋ぎあわせ、一部変更等をして作っていましたが、まだまだ知識が乏しい事を痛感しました。
gblsm様、最後までお付き合い頂き有難うございました。
フォーラム: 使い方全般
返信が含まれるトピック: 中古車検索apiを利用した固定ページのページネーションgblsm様
返信有難うございます。
「Last」をクリックすると場合によっては表示されますが、表示される件数が「$xml->results_available」と合っていない状態です。
また、「合計件数中○件~○件表示」という形も追加しましたが、「Last」のページだけ合わないか、合計件数が多いと「0件~1件」という表示になってしまいます。ご教授頂きました以下のコードはどの位置に記述すれば良いのでしょうか?
$numpages = ($xml->results_available + $count - 1) / $count; pagination( $numpages );
現状のコードは以下のとおりです。
function.php
function pagination($pages = '', $range = 2) { $showitems = ($range * 2)+1; global $paged; if(empty($paged)) $paged = 1; if($pages == '') { global $xml; $pages = floor($xml->results_available / $xml->results_returned) ; if(!$pages) { $pages = 1; } } if(1 != $pages) { echo "<div class=\"pagination clearfix\"><span>Page ".$paged." of ".$pages."</span>"; if($paged > 2 && $paged > $range+1 && $showitems < $pages) echo "<a href='".get_pagenum_link(1)."'>« First</a>"; if($paged > 1 && $showitems < $pages) echo "<a href='".get_pagenum_link($paged - 1)."'>‹ Previous</a>"; for ($i=1; $i <= $pages; $i++) { if (1 != $pages &&( !($i >= $paged+$rangey+1 || $i <= $paged-$range-1) || $pages <= $showitems )) { echo ($paged == $i)? "<span class=\"current\">".$i."</span>":"<a href='".get_pagenum_link($i)."' class=\"inactive\">".$i."</a>"; } } if ($paged < $pages && $showitems < $pages) echo "<a href=\"".get_pagenum_link($paged + 1)."\">Next ›</a>"; if ($paged < $pages-1 && $paged+$range-1 < $pages && $showitems < $pages) echo "<a href='".get_pagenum_link($pages)."'>Last »</a>"; echo "</div>\n"; } }
固定ページテンプレート.php
<?php //カーセンサーAPI_START //ベースURL $baseurl = "http://webservice.recruit.co.jp/carsensor/usedcar/v1/"; //リクエストパラメータ $key = '1234567890'; //APIキー $brand = post_custom('brand'); //メーカー $count = 15; $start = 1+($paged-1)*$count; //リクエストパラメータ組み立て $url = "$baseurl?key=$key&pref=22&brand=$brand&count=$count&start=$start&order=5"; //xmlパース $xml = simplexml_load_file( $url ); //カーセンサーAPI_END ?> //ページネーション表示 <?php if (function_exists("pagination")) { pagination($additional_loop->results_available); } ?> <p><?php echo $xml->results_available; ?>件中 <?php echo $xml->results_start; ?>〜<?php echo ($xml->results_start+($count-1)); ?>件表示しています</p> <?php if( $xml->results_returned != 0 ): ?> <?php foreach ( $xml->usedcar as $i ): ?> <div class="craftsman_search_car"> <div class="row spaces"> <div class="col-sm-4"> <a href="<?php echo $i->urls->pc; ?>" target="_blank"><img src="<?php echo $i->photo->main->l; ?>" alt="<?php echo $i->brand->name; ?> <?php echo $i->model; ?> / <?php echo $i->grade; ?>" title="<?php echo $i->photo->main->caption; ?>" class="img-thumbnail"></a><p><small>【画像提供:カーセンサーnet 】</small></p> </div> <!-- col-sm-4 end --> <div class="col-sm-8"> <div class="row"> <div class="col-xs-12"> <h3 id="car_name"><a href="<?php echo $i->urls->pc; ?>" target="_blank"><?php echo $i->brand->name; ?> <?php echo $i->model; ?> / <?php echo $i->grade; ?></a></h3> </div> <!-- col-xs-12 end --> <div class="col-xs-4"> 本体価格 </div> <div class="col-xs-8"> <b class="price "><?php echo number_format( (int)$i->price ); ?>円</b> </div> <div class="col-xs-4"> 初度登録年 </div> <div class="col-xs-8"> <?php echo $i->year; ?>年 </div> <div class="col-xs-4"> 走行距離 </div> <div class="col-xs-8"> <?php echo $i->odd; ?> </div> <div class="col-xs-4"> 整備・保証 </div> <div class="col-xs-8"> <?php echo $i->maintenance; ?> / <?php echo $i->warranty; ?> </div> <div class="col-xs-4"> コメント </div> <div class="col-xs-8"> <?php echo $i->desc; ?> </div> </div> <!-- row end --> </div> <!-- col-sm-8 end --> </div> <!-- row end --> </div> <!-- craftsman_search end --> <?php endforeach; ?> <?php else: ?> <p>ないよ</p> <?php endif; ?> <?php endwhile; ?> <div class="row"> <div class="col-sm-9"> <?php echo $xml->results_available; ?>件中 <?php echo $xml->results_start; ?>〜<?php echo ($xml->results_start+14); ?>件表示中 </div> <div class="col-sm-3"> <a href="http://webservice.recruit.co.jp/"><img src="http://webservice.recruit.co.jp/banner/car-s.gif" alt="カーセンサーnet Webサービス" width="135" height="17" border="0" title="カーセンサーnet Webサービス"></a> </div> </div> //ページネーション表示 <?php if (function_exists("pagination")) { pagination($additional_loop->results_available); } ?>
何卒ご教授のほどよろしくお願いいたします。
フォーラム: 使い方全般
返信が含まれるトピック: 中古車検索apiを利用した固定ページのページネーションgblsm様
返信有難うございます。
早速試した所、無事成功しました。
ご指摘頂きましたとおり、以下のコードで実現出来ました。function.phpに以下を追加
//ページネーションを追加 function pagination($pages = '', $range = 4) { $showitems = ($range * 2)+1; global $paged; if(empty($paged)) $paged = 1; if($pages == '') { global $xml; $pages = ($xml->results_available / $xml->results_returned) ; if(!$pages) { $pages = 1; } } if(1 != $pages) { echo "<div class=\"pagination clearfix\"><span>Page ".$paged." of ".$pages."</span>"; if($paged > 2 && $paged > $range+1 && $showitems < $pages) echo "<a href='".get_pagenum_link(1)."'>« First</a>"; if($paged > 1 && $showitems < $pages) echo "<a href='".get_pagenum_link($paged - 1)."'>‹ Previous</a>"; for ($i=1; $i <= $pages; $i++) { if (1 != $pages &&( !($i >= $paged+$range+1 || $i <= $paged-$range-1) || $pages <= $showitems )) { echo ($paged == $i)? "<span class=\"current\">".$i."</span>":"<a href='".get_pagenum_link($i)."' class=\"inactive\">".$i."</a>"; } } if ($paged < $pages && $showitems < $pages) echo "<a href=\"".get_pagenum_link($paged + 1)."\">Next ›</a>"; if ($paged < $pages-1 && $paged+$range-1 < $pages && $showitems < $pages) echo "<a href='".get_pagenum_link($pages)."'>Last »</a>"; echo "</div>\n"; } }
固定ページテンプレート.phpに以下を追加
$count = 30; //表示件数 $start = 1+($paged-1)*$count; //開始位置 //リクエストパラメータ組み立て $url = "$baseurl?key=$key&pref=22&brand=$brand&count=$count&start=$start&order=5"; ループ後にページネーション追加 <?php if (function_exists("pagination")) { pagination($additional_loop->results_available); } ?>
コードの書き方が雑かもしれませんが、何とか出来て良かったです。
また、上記コードでおかしな点がありましたらご教授いただけると有難いです。
4件の返信を表示中 - 1 - 4件目 (全4件中)