在循环外回显自定义页面的自定义字段

时间:2017-01-30 12:55:10

标签: php wordpress custom-fields

我有一个带有某些自定义字段的自定义页面模板。我想在循环外显示这些自定义字段,但是在同一页面内。

这个有效:

<?php echo get_post_meta( '244', 'custom_field_name', true ) ?>

但我想动态工作,而不输入页面的实际ID。

如何在回声中调用页面ID?

2 个答案:

答案 0 :(得分:1)

试试这个:

<?php

    global $wp_query;

    $postid = $wp_query->post->ID;

    echo get_post_meta($postid, 'Your-Custom-Field', true);

    wp_reset_query();

    ?>

答案 1 :(得分:0)

如果此调用在循环中,请将id替换为函数get_the_ID,此函数将检索WordPress循环中当前项的ID。

<?php echo get_post_meta( get_the_ID(), 'custom_field_name', true ) ?>

请参阅:https://developer.wordpress.org/reference/functions/get_the_ID/

如果此调用位于单个页面中,请将id替换为对象项$post->ID

$post = get_post();
<?php echo get_post_meta( $post->ID, 'custom_field_name', true ) ?>

请参阅:https://codex.wordpress.org/Class_Reference/WP_Post

此外,您可以通过全局变量$post获取对帖子的访问权限。

$post = get_post();
<?php echo get_post_meta( $post->ID, 'custom_field_name', true ) ?>

请参阅:https://codex.wordpress.org/Global_Variables