wordpressのカスタムテンプレートで追加したカラムのデータの取得方法

wpdbを利用したデータベースへのアクセス


wordpressがデフォルトで用意しているpostsテーブルのカラムのデータはこちらの記事で取得できる。 しかし、カスタムテンプレートで作成したカラムのデータはpostmetaというテーブルに格納されており、postsのデータのIDに紐付けるされている。

よって、まず上記の方法でまずはpostsテーブルからIDにを取得し、そのIDに紐付いたpostmetaのデータを取ってくる必要がある。

まずは、postsのデータを取得する。


上記の方法と同様のやり方でpostsのデータのIDを取得する。(ループを作成する。)

global $wpdb;
$data = $wpdb->get_results( "SELECT ID FROM $wpdb->posts" );
foreach ($data as $value) {
 echo $value->ID;//ちゃんと取得できているかログを出力。
}

取得したpostsのデータのIDを基に紐付いたpostmetaを取得する。


$hoge = get_post_meta($value->ID , 'カラム名' ,true);

これでカスタムテンプレートで作成したカラムに保存されたデータが取得できた。