我有一个简单的功能,我需要通过类别获得所有帖子,
我有两个类别 Uncategorised
id=1
和 bank
id=6
我有三个帖子,bank
类别有2个,uncategorised
有1个帖子。
我有一个PHP文件:
cat_post.php
<?php
global $post;
$myposts = get_posts(array(
'posts_per_page' => $noOfPost,
'offset' => 1,
'category' => $categoryName // set cat here
));
echo '<div class="recent-post">';
if ($myposts)
{
foreach ($myposts as $post) :
setup_postdata($post);
?>
<a class="col-xs-3 col-md-2" href="<?php the_permalink(); ?>">
<?php the_post_thumbnail('thumbnail'); ?>
</a>
<div class="col-xs-3 col-md-10">
<a class="" href="<?php the_permalink(); ?>">
<h2><?php the_title(); ?></h2>
</a>
<?php the_excerpt() ?>
<a href="<?php the_permalink(); ?>">Read Full</a>
<br>
<a class="" href="<?php comments_link(); ?>">
<?php comments_number('0 Comments', '1 Comments', '% Comments'); ?>.
</a>
</div>
<hr/>
<?php
endforeach;
wp_reset_postdata();
}
echo '</div>';
我使用这个PHP文件并将参数设置为:
second_page.php
<div class="tab-content">
<div class="tab-pane active" id="banks">
<?php
$categoryName = 6; // sets category
$noOfPost = 5; // no of post
get_template_part('cat_post', get_post_format()); // gets function from cat_post.php
?>
</div>
<div class="tab-pane" id="morebank">
<h2>more content</h2>
</div>
</div>
它显示了来自不同类别的两个帖子,但它应该显示来自银行类别的帖子。
任何人都知道我做错了什么以及为什么我的代码没有按预期工作?
谢谢。
答案 0 :(得分:1)
尝试使用global
变量,如下所示:
在cat_post.php
<?php
global $post;
global $categoryName; //access it through a global variable.
$myposts = get_posts(array(
'posts_per_page' => $noOfPost,
'offset' => 1,
'category' => $categoryName // set cat here
));
并在global $categoryName
中设置second_page.php
值,如下所示:
...
<?php
global $categoryName;
$categoryName = 6; // sets category
$noOfPost = 5; // no of post
希望这有帮助!