我是wordpress / php的新手。我在下面有两个例子,请有人向我解释为什么在一个例子中需要$post
&不是另一个?
示例1:显示下拉菜单中的所有帖子:(有$post
)
global $post;
$args = array( 'numberposts' => -1);
$posts = get_posts($args);
foreach( $posts as $post) : setup_postdata($post);
echo $post->ID;
endforeach;
示例2:计算媒体库中jpg,png图像的数量:(没有$post
)
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;
}
为什么示例一包含$post
,而示例二则不包含$post
?我会想到示例2还需要{{1}}?我认为这是一个php问题,&不是wordpress一个(因此不会发布在wordpress stackexchange上)。
感谢,你。
答案 0 :(得分:1)
在示例1中,代码检索实际帖子,这就是它需要$post
变量的原因。
在示例2中,代码检索图像的计数,但与$post
无关,因此不需要$post
。