Php 在上下文框中显示自定义字段

Php 在上下文框中显示自定义字段,php,wordpress,Php,Wordpress,我正在使用the_meta()来显示自定义字段结果。我的目标是在内容框div中显示值/结果 <div class="content-box"> <?php the_meta(); ?> </div> 这适用于带有自定义字段的帖子,但也会在没有自定义字段的其他页面上显示空白框 如何仅在具有自定义字段的页面上显示这些内容框?您可以使用来检查是否存在元数据: 并在模板中使用以下命令调用它: <?php so16500287_the_meta(); ?&g

我正在使用
the_meta()
来显示自定义字段结果。我的目标是在内容框div中显示值/结果

<div class="content-box">
<?php the_meta(); ?> </div>

这适用于带有自定义字段的帖子,但也会在没有自定义字段的其他页面上显示空白框

如何仅在具有自定义字段的页面上显示这些内容框?

您可以使用来检查是否存在元数据:

并在模板中使用以下命令调用它:

<?php so16500287_the_meta(); ?>


尝试了该代码,但不幸的是,它仍然会在没有自定义字段的页面上返回空白内容框。在某些情况下,存在隐藏的自定义字段,其键以
\uuz
开头,感谢-现在开始变得有点太过技术化了…使用处理隐藏元的解决方案更新了我的答案感谢Diggy的帮助!
function so16500287_the_meta() {
    if ( $keys = get_post_custom_keys() ) {
        $array = array();                   
        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,', ');
            $array[] = apply_filters('the_meta_key', "<li><span class='post-meta-key'>$key:</span> $value</li>\n", $key, $value);
        }
        if( ! empty( $array ) ) {
            echo "<div class='content-box'><ul class='post-meta'>\n";
            foreach( $array as $item )
                echo $item;
            echo "</ul></div>\n";
        }
    }
}
<?php so16500287_the_meta(); ?>