質問編集履歴

1

2016/08/20 12:26

投稿

uverworld101nm
uverworld101nm

スコア172

test CHANGED
File without changes
test CHANGED
@@ -4,232 +4,4 @@
4
4
 
5
5
  wordpress独自のページネーションがページングを邪魔しているなら、どういうコードに書き換えればいいでしょうか?
6
6
 
7
- また、パラメータにoffsetがあればページ遷移ができなくなると聞いたのですが、下のコードのoffsetが原因でページ遷移ができなくなったのですか?しかし、offsetをパラメータから削除すれば、ページ遷移ができなくなります
8
-
9
- ```PHP
10
-
11
- <?php
12
-
13
- /**
14
-
15
- * Template Name:hoge
16
-
17
- *
18
-
19
- */
20
-
21
- get_header();
22
-
23
- ?>
24
-
25
- <html>
26
-
27
- <head>
28
-
29
- <title>API_SAMPLE</title>
30
-
31
- </head>
32
-
33
- <body>
34
-
35
- <form action="" method="GET">
36
-
37
- <input type="text" name="freeword">
38
-
39
- <input type="submit">
40
-
41
- </form>
42
-
43
- </body>
44
-
45
- </html>
46
-
47
- <?php
48
-
49
- if (isset($_GET['freeword'])) {
50
-
51
- $apikey='私のキー';
52
-
53
- $format='xml';
54
-
55
- if ( isset( $_GET[ 'my_page' ] ) && is_numeric( $_GET[ 'my_page' ] ) ) {
56
-
57
-
58
-
59
- $my_page = absint( $_GET[ 'my_page' ] );
60
-
61
- } else {
62
-
63
- $my_page = 1;
64
-
65
- }
66
-
67
- $offset =1+($my_page-1)*$hit_per_page;
68
-
69
- $freeword=$_GET ['freeword'];
70
-
71
- $offset_page=$_GET['$offset_page'];
72
-
73
- $hit_per_page='10';
74
-
75
- $pref='PREF13';
76
-
77
- $url ='http://api.gnavi.co.jp/RestSearchAPI/?keyid=' . $apikey . '&format=' . $format . '&offset='.$offset.'&freeword='.$freeword.'&offset_page=' . $offset_page . '&hit_per_page='.$hit_per_page.'&pref=' . $pref;
78
-
79
-
80
-
81
- $xml = simplexml_load_file( $url );
82
-
83
- $total_count= $xml->$total_hit_count;
84
-
85
- $i=1;
86
-
87
- function paging($limit, $page, $disp=5){
88
-
89
- //$dispはページ番号の表示数
90
-
91
- global $freeword;
92
-
93
- $next = $page+1;
94
-
95
- $prev = $page-1;
96
-
97
- //ページ番号リンク用
98
-
99
- $start = ($page-floor($disp/2) > 0) ? ($page-floor($disp/2)) : 1;//始点
100
-
101
- $end = ($start > 1) ? ($page+floor($disp/2)) : $disp;//終点
102
-
103
- $start = ($limit < $end)? $start-($end-$limit):$start;//始点再計算
104
-
105
-
106
-
107
- if($page != 1 ) {
108
-
109
- print '<a href="?my_page='.$prev.'&freeword='.$_GET ['freeword']. '">&laquo; 前へ</a>';
110
-
111
- }
112
-
113
-
114
-
115
- //最初のページへのリンク
116
-
117
- if($start >= floor($disp/2)){
118
-
119
- print '<a href="?my_page=1&freeword='.$_GET ['freeword'].'">1</a>';
120
-
121
- if($start > floor($disp/2)) print "..."; //ドットの表示
122
-
123
- }
124
-
125
-
126
-
127
-
128
-
129
- for($i=$start; $i <= $end ; $i++){//ページリンク表示ループ
130
-
131
-
132
-
133
- $class = ($page == $i) ? ' class="current"':"";//現在地を表すCSSクラス
134
-
135
-
136
-
137
- if($i <= $limit && $i > 0 )//1以上最大ページ数以下の場合
138
-
139
- print '<a href="?my_page='.$i.'&freeword='.$_GET ['freeword'].'"'.$class.'>'.$i.'</a>';//ページ番号リンク表示
140
-
141
-
142
-
143
- }
144
-
145
-
146
-
147
- //最後のページへのリンク
148
-
149
- if($limit > $end){
150
-
151
- if($limit-1 > $end ) print "..."; //ドットの表示
152
-
153
- print '<a href="?my_page='.$limit.'&freeword='.$_GET ['freeword']. '">'.$limit.'</a>';
154
-
155
- }
156
-
157
-
158
-
159
- if($page < $limit){
160
-
161
- print '<a href="?my_page='.$next.'&freeword='.$_GET ['freeword']. '">次へ &raquo;</a>';
162
-
163
- }
164
-
165
-
166
-
167
- /*確認用
168
-
169
- print "<p>current:".$page."<br>";
170
-
171
- print "next:".$next."<br>";
172
-
173
- print "prev:".$prev."<br>";
174
-
175
- print "limit:".$limit."<br>";
176
-
177
- print "start:".$start."<br>";
178
-
179
- print "end:".$end."</p>";*/
180
-
181
-
182
-
183
- }
184
-
185
- $limit =ceil($total_hit_count/$hit_per_page); //最大ページ数
186
-
187
- $page = empty($_GET["my_page"])? 1:$_GET["my_page"];//ページ番号
188
-
189
-
190
-
191
- paging($limit, $page);
192
-
193
-
194
-
195
- if(!$xml->rest){
196
-
197
- echo '見つかりませんでした';
198
-
199
- } else {
200
-
201
- foreach($xml->rest as $r){
202
-
203
- echo '<caption>';
204
-
205
- echo $r->name;
206
-
207
- echo '</caption>';
208
-
209
- echo '<tr>';
210
-
211
- echo '<td colspan="2">';
212
-
213
- echo $r->pr->pr_short;
214
-
215
- echo '</td>';
216
-
217
- echo '<td>';
218
-
219
- echo $r->address;
220
-
221
- echo '</td>';
222
-
223
- echo '</tr>';
224
-
225
- }
226
-
227
- }
228
-
229
- }
230
-
231
- ?>
232
-
233
-
234
-
235
- ```
7
+ また、パラメータにoffsetがあればページ遷移ができなくなると聞いたのですが、下のコードのoffsetが原因でページ遷移ができなくなったのですか?しかし、offsetをパラメータから削除すれば、ページ遷移ができます