web-dev-qa-db-ja.com

カスタムフィールドの値をサイドバー/ウィジットに入れますか?

私はこれが行われたのを見たことはないが、サイドバーのループの外側でカスタムフィールドの値を返したい。

3
Jason

それを達成するためのさまざまな方法がたくさんあります。基本的には、 PHPの実行を許可するウィジェット を使用するか、サイドバーでPHPを実行するようにテーマファイルを変更することができます。あなたが必要とする主な機能は get_post_meta です。投稿/ページ/ CPT IDにもアクセスする必要があります。次のようなコードを使用して、投稿メタを表示させることができます。

global $wp_query;
if(is_object($wp_query->queried_object) && $wp_query->queried_object->ID)
{
    echo get_post_meta($wp_query->queried_object->ID, 'my_post_meta_key', true);
}

明らかに、 "my_post_meta_key"の値を、必要なメタデータに対応するキーに変更する必要があります。また、現在のページ/投稿/ CPT IDにアクセスする方法は他にもありますが、私はあなたの特定のコンテキストを知らないので、これはほとんどの状況で機能します。

5
tollmanz

あなたがIDを持っているならば、IDだけを渡すget_post_meta()への呼び出しはあなたにすべての値の配列を取得するでしょう:

$meta = get_post_meta( $post_id );
0
fantata