Skip to content

Instantly share code, notes, and snippets.

@mypacecreator
Last active August 29, 2015 13:57
Show Gist options
  • Select an option

  • Save mypacecreator/9405857 to your computer and use it in GitHub Desktop.

Select an option

Save mypacecreator/9405857 to your computer and use it in GitHub Desktop.
WordPressのカスタムフィールド基本スニペット( 3.5 or higher)
※keyname の部分は作成したカスタムフィールドの名前に置き換える
そのまま出力
<?php echo $post->keyname; ?>
または
<?php echo $post->{keyname}; ?>
HTMLをエスケープしたい場合
<?php echo esc_html( $post->keyname ); ?>
HTMLをエスケープして、さらに改行も反映する場合
<?php echo nl2br( esc_html( $post->keyname ) ); ?>
数字のみが入るフィールドで、3桁毎にカンマ区切りする場合
<?php echo number_format( esc_html( $post->keyname ) ); ?>
条件分岐:カスタムフィールドに値が入っている時のみ出力
<?php if ( $post->keyname ): ?>
<p><?php echo nl2br( esc_html( $post->keyname ) ); ?></p>
<?php endif; ?>
条件分岐:カスタムフィールドに特定の値が入っている時のみ出力
<?php if ( $post->keyname ) == 'value': ?>
<p><?php echo nl2br( esc_html( $post->keyname ) ); ?></p>
<?php endif; ?>
カスタムフィールドに入る値がURLを想定している場合
<?php if ( $post->keyname ): ?>
<p><a href="<?php echo esc_url( $post->keyname ); ?>" target="blank">詳しくはこちら</a></p>
<?php else: ?>
画像を出力
<?php if ( $post->keyname ): ?>
<p><?php echo wp_get_attachment_image( ($post->keyname), 'full' ); ?></p>
<?php endif; ?>
第2引数は画像サイズ(thumbnail, medium, large, full, post-thumbnail, add_image_sizeで自作したサイズ)
画像(ポップアップ)
<p><a href="<?php $imgpath = wp_get_attachment_image_src( ($post->keyname), 'full' ); echo $imgpath[0]; ?>"><?php echo wp_get_attachment_image( ($post->keyname),'thumbnail' ); ?></a></p>
画像以外のファイルの場合(パスを出力)
<a href="<?php echo wp_get_attachment_url( $post->keyname ); ?>" target="blank">ファイルを開く</a>
カスタムフィールドをループ外で使う
<?php
global$wp_query;
$postid = $wp_query->post->ID;
echo esc_html( $post->keyname );
?>
カスタムフィールド:配列の場合
<?php
$foo = (array)get_post_meta($post->ID,'key',false);
foreach ($foo as $bar) {
echo '<li>' . $bar . '</li>';
}
?>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment