カスタムフィールドの名前と値を一覧表示

サイトで使用した全てのカスタムフィールドの名前と値の一覧表示してみたいと思います。
wp-content/themes/twentytwelve/index.php に以下のような記述を書いてみました。

<?php
    // カスタムフィールドの名前を一覧表示
    $arrRet = $wpdb->get_results("select meta_key, meta_value from wp_postmeta where meta_key regexp '^[^_].*$'");
    $arrCustoms = array();
    $arrMetaValues = array();
    foreach($arrRet as $val){
        if(!in_array($val->meta_value, $arrMetaValues)){
            $arrCustoms[$val->meta_key][] = $val->meta_value;
        }
        $arrMetaValues[] = $val->meta_value;
    }
    if(count($arrCustoms) > 0){
        $text .= "<dl>";
    }
    foreach($arrCustoms as $key => $custom){
        $text .= "<dt>" . $key . "</dt>";
        foreach($custom as $custom2){
            $text .= "<dd>" . $custom2 . "</dd>";
        }
    }
    if(count($arrCustoms) > 0){
        $text .= "</dl>";
    }
    echo $text;
?>

これで以下のようなHTMLが出力されるはずです。(以下のフィールド名と値はサンプル)

<dl>
	<dt>version</dt>
	<dd>3.5.2</dd>
	<dt>system_name</dt>
	<dd>WordPress</dd>
	<dd>MovableType</dd>
</dl>

とりあえず、カスタムフィールドの名前と値が表示されましたと思います。
実際のところは、これらの名前&値をクリックすると、その値を持つ記事一覧が出るようにするといいんだろうな。
その辺はまたの機会に考えてみます。

カテゴリー: 未分類   パーマリンク

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です


*

* Copy This Password *

* Type Or Paste Password Here *

次のHTML タグと属性が使えます: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>