Php 为什么这些示例中的一个有$post,而另一个没有';T

Php 为什么这些示例中的一个有$post,而另一个没有';T,php,post,Php,Post,我对wordpress/php非常陌生。我下面有两个例子,请有人向我解释为什么一个例子需要$post,而另一个例子不需要 示例1:在下拉菜单中显示所有帖子:(has$post) 示例2:计算媒体库中jpg、png图像的数量:(没有$post) 为什么示例一包含$post,而示例二不包含?我本以为示例2也需要$post?我认为这是一个php问题,而不是wordpress问题(因此没有在wordpress stackexchange上发布) 多谢各位 在示例1中,代码检索实际的post,这就是它需要

我对wordpress/php非常陌生。我下面有两个例子,请有人向我解释为什么一个例子需要
$post
,而另一个例子不需要

示例1:在下拉菜单中显示所有帖子:(has
$post

示例2:计算媒体库中jpg、png图像的数量:(没有
$post

为什么示例一包含
$post
,而示例二不包含?我本以为示例2也需要
$post
?我认为这是一个php问题,而不是wordpress问题(因此没有在wordpress stackexchange上发布)


多谢各位

在示例1中,代码检索实际的post,这就是它需要
$post
变量的原因


在示例2中,代码检索图像计数,它与
$post
无关,因此不需要
$post

在示例1中,代码检索实际的post,这就是它需要
$post
变量的原因


在示例2中,代码检索图像的计数,它与
$post
不相关,因此它不需要
$post

$post在这两者中都不相关。第一个代码段在foreach循环中立即重新定义了post,而第二个代码段根本不使用它。代码段做了两件不同的事情$post是一个变量read$post在这两方面都不相关。第一个代码段在foreach循环中立即重新定义post,第二个代码段根本不使用它。代码段做两件不同的事情$post是一个变量read Thank you完全有意义现在你已经解释了。Thank-you完全有意义现在你已经解释了。
global $post;
$args = array( 'numberposts' => -1);
$posts = get_posts($args);
foreach( $posts as $post) : setup_postdata($post);
echo $post->ID;
endforeach;
function img_count() {  
$query_img_args = array(
'post_type' => 'attachment',
'post_mime_type' => array(
'jpg|jpeg|jpe' => 'image/jpeg',
'gif' => 'image/gif',
'png' => 'image/png',
),
'post_status' => 'inherit',
'posts_per_page' => -1,
);
$query_img = new WP_Query( $query_img_args );
echo $query_img->post_count;
}