Violet

Just another Jekyll blog.

Wordpress Custom Fileds

###简单应用

每一篇文章允许多个 key 和 value,要在 loop 循环里面输出。最简单的输出例子:

    //需要在主循环里面
    <?php the_meta(); ?>

随后输出的源代码为:

    <ul class="post-meta">
        <li><span class="post-meta-key">meta_key:</span>meta_value</li>
        <li><span class="post-meta-key">meta_key:</span>meta_value</li>
    </ul>

###深入理解

the_meta 方法提供的时输出到文章页面,那么我们要将传进来的 meta 值进行一些处理, 应该怎么办?很好,有一个 get_post_meta($post_id, $key, $single) 方法。

  • $post_id 是指这片文章的 ID ,用此可以标志 meta 的唯一性;
  • $key 是指你想要的 meta 值;
  • $single 提供的是布尔值 true 或者 false 。表示的是你的函数是否在文章 single 页面输出。

一般的使用方法:

<?php $key_1_values = get_post_meta(76, 'key_1'); ?>

或者:

<?php $key_1_values = get_post_meta(76, 'key_1', true); ?>

简单的循环应用:

<?php if ( get_post_meta($post->ID, 'thumb', true ) ) : ?>
    <?php echo get_post_meta($post->ID, 'thumb', ture); ?>
<?php endif; ?>

###其他函数 在正确的页面获取 key/value 值:

 
get_post_custom();

获取所有的 key 名称:

 
get_post_custom_keys();