複数のWordPressカスタムポストメタ値
質問
私はPHPでかなり絶望的であるので、少し助けを求めると思いました!
私は音楽代理店のサイトのCMSとしてWordPressを使用しています daviesmusic.com また、カスタムフィールドを介してさまざまなアーティスト向けの追加情報がたくさんあります。これまでのところ、私はカスタムフィールド値を1つずつ取得したばかりです。
<?php
//audio title
$audio_title = get_post_meta($post->ID, 'audio_name', true);
if ($audio_title) :
?>
<p><?php echo $audio_title; ?></p>
これは正常に機能しますが、すべて異なる出力を必要とするカスタムフィールドがたくさんあります。たとえば、アーティストのための写真、オーディオファイル、オーディオファイルのタイトル、オーディオファイルに関するいくつかのメモがあります。
<?php
//profile image
$profile_pic = get_post_meta($post->ID, 'profileimage', true);
if($profile_pic) :
?>
<img class="post-thumb-single" src="<?php bloginfo('template_directory'); ?>/timthumb.php?src=<?php echo $profile_pic; ?>&a=t&h=278&w=278&zc=1" alt="<?php the_title(); ?>" />
<?php
endif;
//photographer
$photographer = get_post_meta($post->ID, 'photographer', true);
if($photographer) :
?>
<p id="photographer">Photographer: <b><?php echo $photographer; ?></b></p>
<?php
endif;
//audio title
$audio_title = get_post_meta($post->ID, 'audio_title', true);
if ($audio_title) :
?>
<h4 class="nsmb">Audio files</h4>
<p><?php echo $audio_title; ?></p>
<?php
//audio file
$audio = get_post_meta($post->ID, 'audiofile', true);
if ($audio) :
?>
<p class="audio" id="audioplayer_1">Sorry, there was a problem loading the file.</p>
<script>AudioPlayer.embed("audioplayer_1", {soundFile: "<?php echo $audio; ?>"});</script>
<?php
$audio_credits_1 = get_post_meta($post->ID, 'audio_credits_1', true);
if ($audio_credits_1) :
?>
<p class="audio_cred"><?php echo $audio_credits_1; ?></p>
<?php
endif; endif; endif;
?>
たくさんのコード。値を取得するためのより効率的な方法がなければならないと確信しています!何か案は?!
乾杯
解決
からこの例を取ります ここ:
$custom_fields = get_post_custom(72);
$my_custom_field = $custom_fields['my_custom_field'];
foreach ( $my_custom_field as $key => $value ){
echo $key . " => " . $value . "<br />";
}
これにより、投稿のすべての指定されたカスタム値をサイクリングします(この例では、ID#72で使用してください。 $post->ID
コードにあるように)。使用できます $key
フィールド名を印刷するには $value
そのフィールドの値を印刷します。あなたは、それらがどのように表示されるかにより多くの粒状を得ることができます if elseif else
声明またはa switch
.
所属していません StackOverflow