現在
https://kurubusi.net/products/sample/sample_krc-cast-manager/
こちらのサイトの[krc-cast-manager]というプラグインを使用して出勤表を作成しています。
しかしなかなか理想通りに出力できなくて困っています。
理想としては
html
19/19(月) 2A子 3B子 49/20(火) 5A子 6C子 79/21(水) 8B子 9A子
の様に表示出来るのが理想です。
現在はファンクションでショートコードを作成して、表示しています。
php
1function outschedule($day) { //DBから該当の日付のデータを取得 2 global $wpdb; 3 $table_name = $wpdb->prefix . 'krc_schedules'; 4 $schedules = $wpdb->get_var( 5 $wpdb->prepare("SELECT work FROM $table_name WHERE day = %s AND status = %d", $day, 0) 6 ); 7 $works = unserialize($schedules); 8 return $works; //配列にして返す 9} 10 11function schedulesHtml() { //ショートコードの中身 12 $day = isset($_GET["works"]) ? $_GET['works'] : date("Y-m-d"); 13 $works = outschedule($day); 14 $len = 4; //+1 15 16 $week = array("日", "月", "火", "水", "木", "金", "土"); 17 $w = date('w', strtotime($day)); 18 echo '<header class="sub_h_header">'; 19 echo '<p class="en_h">SCHEDULE FOR ' . date('n.j', strtotime($day)) . '</p>'; 20 echo '<h2 class="sub_h">' . date('n/j', strtotime($day)); 21 echo '(' . $week[$w] . ')'; 22 echo 'の出勤スケジュール</h2>'; 23 echo '</header>'; 24 25 echo '<nav class="krc_calendar clearfix"><ul>'; 26 for ($i = 0; $i <= $len; $i++) { echo '<nav class="krc_calendar clearfix"><ul>'; 27 $y = date('D', strtotime('+' . $i . ' day')); 28 if (date('Y-m-d', strtotime('+' . $i . ' day')) == $day) 29 $y = 'target'; 30 echo '<li class="' . mb_strtolower($y) . '"><a href="' . home_url('/') . '/schedule/?works=' . date('Y-m-d', strtotime('+' . $i . ' day')) . '">' . strtoupper(date('n/j(D)', strtotime('+' . $i . ' day'))) . '</a></li>'; 31 } 32 echo '</ul></nav>'; 33 34 if (!$works) { 35 //予定がない場合 36 echo '<br>'; 37 } else if ($works != 'rest') { 38 echo '<div class="clearfix p70">'; 39 //postid順に配列に入っているのでs_order順にした配列を作る 40 $works_array = array(); 41 foreach ($works as $id => $val) { 42 $works_array[$val["s_order"]] = $id; 43 } 44 ksort($works_array); 45 foreach ($works_array as $rder => $id) { 46 $args = array( 47 'post_type' => 'krc_cast', 48 'post__in' => array($id), 49 ); 50 query_posts($args); 51 while (have_posts()) : the_post(); 52 get_template_part('template-parts/content', 'cast'); 53 endwhile; 54 wp_reset_query(); 55 } 56 echo '</div>'; 57 } else { 58 //休み 59 echo '<br>'; 60 } 61} 62 63add_shortcode('scheduleshtml', 'schedulesHtml'); //[scheduleshtml]というショートコードを作成
これを表示すると、
php
1 <article id="post-90" class="post-90 krc_cast type-krc_cast status-publish hentry krc_grade-premium krc_age-9 krc_tall-150cm krc_cups-a"> 2 <header class="entry-header"> 3 <h1 class="entry-title">A子</h1> </header><!-- .entry-header --> 4 <div class="entry-content"> 5 </div><!-- .entry-content --> 6 <footer class="entry-footer"> 7 <span class="edit-link"><a class="post-edit-link" href="http://tokyo.clubs-nagoya.com/wp-admin/post.php?post=90&action=edit"><span class="screen-reader-text">"魂れぼりゅーしょん"を</span>編集</a></span> 8 </footer><!-- .entry-footer --> 9 </article><!-- #post-## --> 10 11 <article id="post-98" class="post-98 krc_cast type-krc_cast status-publish hentry krc_grade-premium krc_age-6 krc_tall-150cm krc_cups-j"> 12 <header class="entry-header"> 13 <h1 class="entry-title">B子</h1> </header><!-- .entry-header --> 14 <div class="entry-content"> 15 </div><!-- .entry-content --> 16 </article><!-- #post-## --> 17
この様に出力してしまいます。
これを冒頭で既述したように表示するにはどうしたら良いでしょうか
乱文で分かりにくいかもしれませんが、ご教授していただけると幸いです。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2016/09/19 13:50