質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.50%
WordPress

WordPressは、PHPで開発されているオープンソースのブログソフトウェアです。データベース管理システムにはMySQLを用いています。フリーのブログソフトウェアの中では最も人気が高く、PHPとHTMLを使って簡単にテンプレートをカスタマイズすることができます。

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

Q&A

0回答

576閲覧

個人別イベント一覧を制作 WordPressのループで取得したデータを一つの表で表示したいのですが…

退会済みユーザー

退会済みユーザー

総合スコア0

WordPress

WordPressは、PHPで開発されているオープンソースのブログソフトウェアです。データベース管理システムにはMySQLを用いています。フリーのブログソフトウェアの中では最も人気が高く、PHPとHTMLを使って簡単にテンプレートをカスタマイズすることができます。

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

0グッド

0クリップ

投稿2019/08/20 05:07

編集2022/01/12 10:55

WordPressのループで取得したデータを一つの表で表示したいのですが…

制作している内容は
個人別イベント一覧を制作しております。
カスタムフィールドで日付を入力して該当する日付にカスタム投稿のタイトルを表示する
物なのですが各イベントごとでカスタム投稿を分けているため、ループで取得すると各イベント事で表が出来てしまいます。
一つの表で表示することは出来ないのでしょうか?

該当のソースコード

wordpress

1------ 2カスタムフィールド名 3'eva1'= 2019 4'eva2'= 1月~12月 5'eva3'= 1~31日 6がそれぞれ入ります。 7------ 8<?php 9$days = get_post_meta( $post->ID , 'cal'.date("Y").'1' , 'foo', true );//数値を取り出す 10$days_array = explode(',', $days);//arrayに取り出した数値を入れる 11sort($days_array);//取り出した数値を並び替える 12$days_com = array_combine($days_array, $days_array);//配列の値にキー値を入れる 13?> 14<?php 15$searchSlugs = get_the_terms($post->ID, 'manekin_tag'); 16foreach ( $searchSlugs as $searchSlug ); 17echo $searchSlug->slug; 18$args = array( 19 'tax_query' => array( 20 array( 21 'taxonomy' => 'manekin_tag', //タクソノミーを指定 22 'field' => 'slug', //ターム名をスラッグで指定する 23 'terms' => $searchSlug->slug //表示したいタームをスラッグで指定 24 ), 25 ), 26 'post_type' => 'monamiorder', //カスタム投稿名 27 'posts_per_page'=> -1, //表示件数(-1で全ての記事を表示) 28 'order' => 'ASC' //表示順(昇順) 29); 30?> 31<?php query_posts( $args ); ?> 32<?php if(have_posts()) : ?> 33<table> 34<?php while(have_posts()):the_post() ?> 35 <?php 36 $calendar1 = date("Y").'1'; 37 $work_calendar = get_post_meta( $post->ID , 'eva1' , 'foo', true ).get_post_meta( $post->ID , 'eva2' , 'foo', true ); 38 if( $calendar1 == $work_calendar ){ 39 $works = get_post_meta( $post->ID , 'eva3' , 'foo', true );//数値を取り出す 40 } 41 $works_array = explode(',', $works);//arrayに取り出した数値を入れる 42 sort($works_array);//取り出した数値を並び替える 43 $works_com = array_combine($works_array, $works_array);//配列の値にキー値を入れる 44 print_r($works_com); 45 ?> 46 <tr> 47 <th colspan="2"><?php echo date("Y");?>年&thinsp;1月</th> 48 </tr> 49 <?php 50 for($i=1; $i<=31; $i++){ 51 echo '<tr>'; 52 echo '<th>'.$i.'日</th>'; 53 if($i == $days_com[$i]){ 54 echo '<td>休日</td>'; 55 }elseif($i == $works_com[$i]){ 56 echo '<td>'; 57 echo the_title(); 58 echo '</td>'; 59 }else{ 60 echo '<td></td>'; 61 } 62 echo '</tr>'; 63 } 64 ;?> 65<?php endwhile; ?> 66</table> 67<?php else: ?> 68<p>該当する記事はありません。</p> 69<?php endif; ?> 70<table> 71 <?php 72 for($i=1; $i<=31; $i++){ 73 echo '<tr>'; 74 echo '<th>'.$i.'日</th>'; 75 if($i == $days_com[$i]){ 76 echo '<td>休日</td>'; 77 }elseif($i == $works_com[$i]){ 78 echo '<td>'; 79 echo the_title(); 80 echo '</td>'; 81 }else{ 82 echo '<td></td>'; 83 } 84 echo '</tr>'; 85 } 86 ;?> 87</table> 88

試したこと

php並びにwordpressは仕事でかじった程度で2,3か月前にカスタム投稿を知り得た程度です。
ネットで検索しても同じような結果でしか検索されず困っています。
ループ処理後のarray結合や新しいキーに代入する方法で検索し変更したものの上手くいきませんでした。

補足情報(FW/ツールのバージョンなど)

WordPressは最新バージョンにしています。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだ回答がついていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.50%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問