• 注册
  • 个人说明:TA有点懒了,什么都没有写。
    关注 1 粉丝 0 喜欢 0 内容 256
    河南省·郑州市
    聊天 送礼

    新版界面开发进度

    14%
    其实就是啥也没写,只有想法,哈哈
    • 回帖总排行
    • 采纳总排行

    分享精彩给好友

    全部文章 关注:0 内容:1074

    WordPress函数the_meta输出文章所有自定义字段【转】

  • 查看作者
  • 打赏作者
  • 拉黑名单
    • WordPress中有个自定义字段的功能,这个功能让WordPress自定义程度更高,一般来说我们自定义字段都是知道key再取值,如果我们连key都不知道,该如何得到对应的值呢?WordPress函数the_meta,它能将文章中的所有自定义字段全部输出,有了前几篇文章的学习,与the_date、the_time相同,看它的函数名我们就应该明白,这个函数是用在主循环中的。

      函数描述

      显示一个关于文章自定义字段的列表。

      函数原型

      the_meta函数位于wp-includes/post-template.php文件中。

      function the_meta() {
          if ( $keys = get_post_custom_keys() ) {
              echo "<ul class='post-meta'>\n";
              foreach ( (array) $keys as $key ) {
              $keyt = trim( $key );
              if ( is_protected_meta( $keyt, 'post' ) ) {
                   continue;
               } 
               $values = array_map( 'trim', get_post_custom_values( $key ) );
               $value = implode( $values, ', ' );
               $html = sprintf("<li><span class='post-meta-key'>%s</span> %s</li>\n",/* translators: %s: Post custom field name */
               sprintf( _x( '%s:', 'Post custom field name' ), $key ),
               $value);
                   /**
                   * Filters the HTML output of the li element in the post custom fields list.
                   *
                   * @since 2.2.0
                   *
                   * @param string $html  The HTML output for the li element.
                   * @param string $key   Meta key.
                   * @param string $value Meta value.
                   */
              echo apply_filters( 'the_meta_key', $html, $key, $value );
              }
           echo "</ul>\n";
         }
      }

      用法

      <?php the_meta();?>

      输出自定义字段的 ul/li 列表。效果如下图所示:

      WordPress函数the_meta输出文章所有自定义字段

      注意事项

      the_meta函数只能使用在主循环中,并且会自动忽略下划线开始的自定义字段,如果你需要过滤可以使用 ‘the_meta_key’ 这个 filter 和 列表项目的 HTML 输出。

      你需要登录,才能进行发帖操作