Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/wordpress/11.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Wordpress get_post_meta在functions.php中不工作_Php_Wordpress_Function - Fatal编程技术网

Wordpress get_post_meta在functions.php中不工作

Wordpress get_post_meta在functions.php中不工作,php,wordpress,function,Php,Wordpress,Function,我正在用Wordpress编写一个非常简单的函数,输出位置字段的内容 它在模板文件中工作,但当我将其放入functions.php并从模板调用它时,它停止工作 function check_location() { $location_field = get_post_meta($post->ID, 'location', true); return $location_field; } 我做了一个var_转储,它以字符串形式返回$location_字段(0) 我也尝试过在函数中

我正在用Wordpress编写一个非常简单的函数,输出位置字段的内容

它在模板文件中工作,但当我将其放入functions.php并从模板调用它时,它停止工作

function check_location() { 
$location_field = get_post_meta($post->ID, 'location', true);   
return $location_field;
}
我做了一个var_转储,它以字符串形式返回$location_字段(0)

我也尝试过在函数中声明global$post,但没有任何区别


有人知道可能出了什么问题吗?

您的函数缺少实际的post id,因为get\u post\u meta需要post\u id作为第一个输入

检查以下链接,使用get_the_id()函数获取当前帖子id
是否使用默认自定义字段?或高级自定义字段。 如果您使用的是默认的元字段,那么您可以使用此选项转储所有字段

``


如果您使用的是高级自定义字段插件,只需使用get_field('field_name',$post_id')。

您的意思是在函数声明中,所以检查_location($post_id)?我尝试了这个方法,但没有成功
函数check_location(){$post_id=get_the_id();$location_field=get_post_meta($post_id,'job_location',true);返回$location_字段;}