我有一个带有某些自定义字段的自定义页面模板。我想在循环外显示这些自定义字段,但是在同一页面内。
这个有效:
<?php echo get_post_meta( '244', 'custom_field_name', true ) ?>
但我想动态工作,而不输入页面的实际ID。
如何在回声中调用页面ID?
答案 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 ) ?>