我有一个产品页面, 该页面是自定义帖子类型, 现在我想要该特定页面的类别ID并将其放在帖子循环中。并创建一个光滑的滑块。
【如何获取自定义帖子类型ID】这就是我想出的。
单一产品页面
<
section class="product">
<
div class="productslider">
<
?php
global $post;
$Taxonomy = get_object_taxonomies('producten');
if (count($Taxonomy) >
0) {
foreach ($Taxonomy as $tax) {
$args = array(
'taxonomy' =>
$tax, );
$cats = get_categories($args);
$cats = $cats[0]->
term_id;
}
}$args = array('posts_per_page' =>
5, 'post_type' =>
'producten', 'category' =>
$cats);
$posts = get_posts($args);
if ($posts) :
foreach ($posts as $post) :
setup_postdata($post);
?>
<
div class="productslider__slide">
<
?php echo get_the_post_thumbnail();
?>
<
p>
<
a href="http://www.srcmini.com/<
?php the_permalink();
?>">
<
?php the_title();
?>
<
/a>
<
/p>
<
/div>
<
?php endforeach;
wp_reset_postdata();
endif;
?>
<
/div>
<
/section>
圆滑的
$('.productslider').slick({
slidesToShow: 3, slidesToScroll: 1, autoplay: true, autoplaySpeed: 2000, arrows: false, dots: true, centerMode: true, });
这是一个好的解决方案吗?好像我在每个页面上都得到相同的ID
#1它会向你显示相同的ID, 因为你从循环中获得了相同的ID,
这是你的代码
$ cats = $ cats [0]-> term_id;
上一行仅从循环中获取第一个ID, 并且你在get_posts()上使用此类别ID, 因此每次都将获得相同的ID。
尝试修改此代码:
$cat_array= array();
$cats= get_categories($args);
$cat_array[] = $cats->
term_id;
$args = array('posts_per_page' =>
5, 'post_type' =>
'producten', 'category' =>
$cat_array);
希望对你有帮助。 ??
#2我如何使用Manan Vyas答案解决它
$Taxonomy = get_object_taxonomies('producten');
if (count($Taxonomy) >
0) {
foreach ($Taxonomy as $tax) {
$args = array(
'taxonomy' =>
$tax, );
$cat_array = array();
$cats = get_categories($args);
foreach($cats as $data) {
array_push($cat_array, $data->
term_id);
}
}
}$args = array('posts_per_page' =>
5, 'post_type' =>
'producten', 'category' =>
$cat_array);
推荐阅读
- 大通银行现已完全停止WP8.1应用服务
- 如何在WordPress中获取术语/分类图像()
- 如何从数组的所有索引中获取特定值
- 单击顶部滚动按钮时如何消除页面上的白色效果[关闭]
- 如何摆脱这个元素或改变它的颜色()
- 如何在WordPress functions.php中摆脱”SiteLock-PHP-FILEHACKER-of.UNOFFICIAL”
- 如何在WooCommerce产品页面获取相关产品()
- 如何从WP API中以WordPress中”get_the_date()”的相同格式获取发布日期
- 如何在小部件开发中获取选项值