• hiroyuki_ishida

    (@hiroyuki_ishida)


    カスタムフィールドにnameとkanaを追加して下記のことを行いたいのですが上手くいかず困っており皆様のお力をお借し下さい。

    1. カスタムフィールドの重複をカウントする。(重複したものは非表示)
    2. カスタムフィールド[kana]をあいうえお順でソートし表示させる。

    【例】
    石田三成(いしだみつなり)(1)
    織田信長(おだのぶなが)(5)
    徳川家康(とくがわいえやす)(3)
    前田慶次(まえだけいじ)(2)

    漢字でのソートは上手くいかないので、ひらがなを登録したカスタムフィールドでソートし表示は漢字の横に読みがなと重複したカスタムフィールドのカウント数を表示させる方法を
    googleで検索して調べていたら上記に使えそうなものを見つけることが出来ましたが、それでも中途半端な状態で困っています。

    カスタムフィールドの値を全て取得

    function get_meta_values( $key = '', $type = 'post', $status = 'publish' ) {
        global $wpdb;
        if( empty( $key ) )
            return;
        $r = $wpdb->get_col( $wpdb->prepare( "
            SELECT pm.meta_value FROM {$wpdb->postmeta} pm
            LEFT JOIN {$wpdb->posts} p ON p.ID = pm.post_id
            WHERE pm.meta_key = '%s'
            AND p.post_status = '%s'
            AND p.post_type = '%s'
        ", $key, $status, $type ) );
        return $r;
    }

    これで、読みかなを登録したカスタムフィールドでソート(あいうえお順)した値を表示させることはできましたが、漢字を登録したカスタムフィールドをどのようにすれば表示させる事ができるのか?カウントを取って表示させる方法はどのようにすれば良いのか、全く見当が付きません。

    どうかよろしくお願い致します。

  • トピック「カスタムフィールドの取得について」には新たに返信することはできません。