我有一行php来获取我的自定义wordpress小部件中的缩略图:
$footer_recent_thumb = wp_get_attachment_image_src( get_post_thumbnail_id($post->ID), 'footer-recent-thumbnail' );
它产生两个php错误:
NOTICE: customwidgets.php:75 - Undefined variable: post
NOTICE: customwidgets.php:75 - Trying to get property of non-object
我该如何解决这个问题?这是我用来在博客上获取缩略图的相同的php,并没有在那里给出错误。
答案 0 :(得分:7)
我的猜测是这个代码在一个函数中,如下所示:
function doSomething($someparams) {
// ...
$fotoer_recent_thumb = // .....
// ...
}
在这种情况下,$post
在此范围内不存在,必须通过在函数中添加以下行来导入:
global $post;
或者,更干净地将其作为参数传递。
答案 1 :(得分:2)
尝试这种方式:
if (has_post_thumbnail()) {
$footer_recent_thumb = wp_get_attachment_image_src(
get_post_thumbnail_id(get_the_ID()) , 'footer-recent-thumbnail'
);
// Do more stuff
}