📜  显示 WordPress 自定义帖子列表 (1)

📅  最后修改于: 2023-12-03 15:40:10.378000             🧑  作者: Mango

显示 WordPress 自定义帖子列表

如果你想要在 WordPress 中显示一些自定义的帖子类型(例如产品介绍或案例展示),则需要编写一些代码来完成它。本文将介绍如何在 WordPress 中显示自定义帖子类型的列表并对其进行格式化。

第一步:创建自定义帖子类型

首先,需要在 WordPress 中创建一个自定义帖子类型。在此之前,需要确保你已启用 register_post_type() 函数来注册“支持自定义帖子类型”。

接下来,在你的主题或插件中添加以下代码,将创建一个名为“案例”的自定义帖子类型:

function custom_case_post_type() {
    $args = array(
        'labels' => array(
            'name' => __('案例'),
            'singular_name' => __('案例'),
        ),
        'public' => true,
        'has_archive' => true,
        'rewrite' => array('slug' => 'case'),
    );
    register_post_type('case', $args);
}
add_action('init', 'custom_case_post_type');

在此代码中,我们设置了“案例”这个名称来显示在管理界面中,设置了一个公共的自定义帖子类型,使支持归档和重写URL,链接地址默认为/case/。

第二步:创建帖子列表模板

接下来,需要使用一个模板来显示我们的帖子列表。可以使用 WordPress 提供的默认模板,也可以自己编写一个。

默认模板名称是 archive-{post_type}.php,因此一个自定义帖子类型案例的模板应命名为 archive-case.php。这里是一个简单的默认帖子列表模板示例:

<?php if ( have_posts() ) : ?>
    <ul>
        <?php while ( have_posts() ) : the_post(); ?>
            <li>
                <a href="<?php the_permalink(); ?>"><?php the_title(); ?></a>
            </li>
        <?php endwhile; ?>
    </ul>
<?php endif; ?>

改变这个模板来实现自己的想法。

第三步:显示帖子列表

当你完成自定义帖子类型和帖子列表模板后,就可以使用一个简单的查询来显示帖子列表。以下代码使用 WP_Query 类来获取案例自定义帖子类型并将其呈现为列表:

$args = array(
    'post_type' => 'case',
);
$query = new WP_Query( $args );

if ( $query->have_posts() ) {
    while ( $query->have_posts() ) {
        $query->the_post();
        echo '<li><a href="' . get_the_permalink() . '">' . get_the_title() . '</a></li>';
    }
} else {
    echo '没有帖子可以显示!';
}
wp_reset_postdata();

当然,你可以根据需要添加更多参数。

结论

现在你可以在 WordPress 中创建自定义帖子类型并将其显示为列表。这个过程需要一些编码,但是可以提供更多展示你网站信息的机会。

希望这个教程对你有帮助!