posts_per_pageがきかない
-
こんにちは。いつもお世話になっております。
PHPはまだまだ初心者で行き詰まってしまったので、ご教授をお願いします。現在お店の紹介とスタッフの出勤情報をのせています。
カスタム投稿とカスタムフィールドで作成し各スタッフの情報をひも付けし、独自DBにて出勤情報を取得しております。
使用しているプラグインはkrc-cast-managerです。独自DBにて出勤情報を取得して表示させている部分がposts_per_pageが効かず困っております。ページャー(PageNavi)は表示されています。
出勤情報は専用の固定ページ(page-attendance.php)を作成し、ショートコードにて表示させています。function.php
//出勤スケジュール function outschedule($day) { //DBから該当の日付のデータを取得 global $wpdb; $table_name = $wpdb->prefix . 'krc_schedules'; $schedules = $wpdb->get_var( $wpdb->prepare("SELECT work FROM $table_name WHERE day = %s AND status = %d", $day, 0) ); $works = unserialize($schedules); return $works; //配列にして返す } function schedulesHtml() { //ショートコードの中身 $day = isset($_GET["works"]) ? $_GET['works'] : date_i18n("Y-m-d"); $works = outschedule($day); $len = 6; //+1 $week = array("日", "月", "火", "水", "木", "金", "土"); $w = date('w', strtotime($day)); echo '<nav class="attendance-calendar clearfix"><ul>'; for ($i = 0; $i <= $len; $i++) { $y = date('D', strtotime('+'.$i.' day')); if ( date_i18n('Y-m-d', strtotime('+'.$i.' day')) == $day ) $y = 'target'; echo '<li class="' . mb_strtolower($y) . '"><a href="' . home_url( '/' ) . '/attendance/?works=' . date_i18n('Y-m-d', strtotime('+'.$i.' day')) . '">' . strtoupper(date('n/j(D)', strtotime('+'.$i.' day'))) . '</a></li>'; } echo '</ul></nav>'; if (!$works) { //予定がない場合 echo '<p class="attendance-message">' . date('n/j', strtotime($day)); echo '(' . $week[$w] . ')'; echo 'の出勤予定はございません。</p>'; } else if ( $works !='rest' ) { echo '<div class="clearfix">'; //postid順に配列に入っているのでs_order順にした配列を作る $works_array = array(); foreach($works as $id => $val){ $works_array[$val["s_order"]] = $id; } ksort($works_array); foreach ($works_array as $rder => $id){ $paged = ( get_query_var('page') ) ? get_query_var('page') : 1; $args=array( 'post_type' => 'krc_cast', 'post__in' => array($id), 'posts_per_page' => 3, //取得記事件数 'paged' => $paged ); $wp_query = new WP_Query($args); while (have_posts()): the_post(); $counter++; if ($counter <= 1){ require("content-cast-first.php"); }else{ require("content-cast.php"); }endwhile; //wp_reset_query(); } echo '</div>'; echo '<div class="pagination">'; // ページングを表示 if (function_exists('wp_pagenavi')) { wp_pagenavi(); } // ループ処理のデータをリセット wp_reset_query(); echo '</div>'; } else { //休み echo '<p class="attendance-message">申し訳ありません。' . date('n/j', strtotime($day)); echo '(' . $week[$w] . ')'; echo 'の出勤予定者はおりません。</P>'; } } add_shortcode('scheduleshtml', 'schedulesHtml'); //
色々試してみたのですが、何が原因でposts_per_pageが効かないのかが分かりません。
ご教授お願い致します。
4件の返信を表示中 - 1 - 4件目 (全4件中)
4件の返信を表示中 - 1 - 4件目 (全4件中)
- トピック「posts_per_pageがきかない」には新たに返信することはできません。