【问题标题】:What is the right way to present custom post type in WordPress?在 WordPress 中呈现自定义帖子类型的正确方法是什么?
【发布时间】:2021-05-09 03:43:30
【问题描述】:
前提条件:
- 我创建了自定义帖子类型“比较”
- 我创建了“widget.php”并将其注册到“functions.php”中
- 我将小部件添加到“front-page.php”
任务:
在我的首页上,我想在带有分页的单独小部件中列出所有类型为“比较”的帖子
问题:
我不知道“最佳实践”,如何在技术上实施它。如何列出小部件中的所有“比较”?
【问题讨论】:
标签:
php
wordpress
pagination
widget
custom-post-type
【解决方案1】:
这是自定义帖子模板代码,您可以在要显示帖子列表的页面上分配模板。你可以试试下面的模板代码:
<?php
# Template Name: Comparison List
?>
<?php
$paged = (get_query_var('paged')) ? get_query_var('paged') : 1;
$args = array(
'posts_per_page' => 15,
'paged' => $paged,
'post_type' => 'comparison',
'orderby' => 'title',
'order' => 'asc'
);
$wp_query = new WP_Query($args);
?>
<?php get_header(); ?>
<?php if ($wp_query->have_posts()) : ?>
<?php while ($wp_query->have_posts()) : $wp_query->the_post(); ?>
<?php get_template_part( 'template-parts/content', 'comparison-list-item' ); ?>
<?php endwhile; ?>
<?php print_pagination($wp_query); ?>
<?php else: ?>
<?php get_template_part( 'template-parts/content', 'nothing-found' ); ?>
<?php endif; ?>
<?php wp_reset_postdata(); ?>
<?php get_footer(); ?>