wp post后台显示元数据,但不显示前端/相同代码

时间:2017-06-20 07:39:11

标签: wordpress metadata

情况:

使用带有include_once的php文件(table_template.php)来显示元数据。在后端(在元数据框内)使用此模板显示应有的一切 - 使用前端(在帖子内)相同的模板,表元数据不显示(但自定义字段中的其他元数据)。

后端

var dump:

字符串(65)" [["测试值1","测试值2","测试值3"],[&# 34;测试值a","测试值b","测试值c"]]"

前端的var转储:

string(6)" [[""]]"

来自 table_template.php

代码:

<?php

/* TEMPLATE TO RENDER THE TABLE (AS PREVIEW) IN THE BACKEND AND FRONTEND */

global $post;
$table_meta = get_post_meta( $post->ID, 'psg_table_meta', true ) ? 
get_post_meta( $post->ID, 'psg_table_meta', true ) : '[[""]]';
$t = json_decode( $table_meta );
$c_id = get_post_meta( $post->ID );
$c = get_post( $c_id );


?>

<div class="psg_box_table">
    <table class="psg_table ">
        <thead>
            <tr>
                <?php foreach ( $t[ 0 ] as $col ): ?>
                <th>
                    <?php echo $col; ?>
                </th>
                <?php endforeach; ?>
            </tr>
        </thead>

        <tbody>
            <?php foreach ( $t as $idx => $row ): ?>
            <?php if ( $idx == 0 )
               continue; ?>
            <tr>
                <?php foreach ( $row as $col ): ?>
                <td>
                    <div class="psg_table_content">
                        <?php echo str_replace( '"', '&quot;', $col ) ?>
                    </div>
                </td>
                <?php endforeach; ?>
            </tr>
            <?php endforeach; ?>

        </tbody>
    </table>
</div>
<!--END SIZING CHART TABLE -->

我如何加载模板:

include_once( "table_template.php" );

2 个答案:

答案 0 :(得分:0)

如果您使用的是WP_Query循环内的模板,请替换

$post->ID

get_the_ID();

同时检查psg_table_meta键是否正确。

答案 1 :(得分:0)

问题是,我不应该检查postID(表元数据不是直接在帖子中,而是在其中的选定/链接帖子中。所以我不得不替换

@Override
public void dispose() {
    System.out.println("PlayScreen disposed.");
    world.dispose();
    b2dr.dispose();
    ...
}

ERROR: Error during SonarQube Scanner execution
java.lang.IllegalStateException: Line [..] is out of range in the file [..]