在 WordPress 中显示自定义帖子类型的 4 种简单方法

已发表: 2023-01-20

自定义帖子类型在组织和分组 WordPress 内容方面起着重要作用。 然而,并不是每个人都知道如何在花费数小时创建后在 WordPress 中显示自定义帖子类型。

我们进行了研究并积累了可帮助您显示自定义帖子类型的可能方法。 通过阅读本文并挑选出最合适的方法,您可以节省大量时间。 你还在等什么?

  • 什么是 WordPress 自定义帖子类型?
  • 为什么需要 WordPress 自定义帖子类型
  • 如何在 WordPress 中显示自定义帖子类型

什么是 WordPress 自定义帖子类型?

在 WordPress 中,帖子类型指的是各种内容,它们保存在wp_posts表中。 此表中的每一列都将包含一种不同的帖子类型。 这些列称为post_type

用户可以访问和使用 WordPress 提供的默认帖子类型。 最常见的是:

  • 页面('页面')
  • 发布('发布')
  • 修订('修订')
  • 导航菜单('nav_menu_item')
  • 附件('附件')
  • 模板部件('wp_template_part')
  • 块模板('wp_template')

自定义帖子类型是您自己创建的帖子类型。 这些对于不适合现成的帖子/页面格式的材料很有帮助。

例如,如果您打算运营图书馆网站,则必须设置图书类型帖子类型。 您还可以为作者、出版日期、图书数量等生成其他自定义帖子类型。

许多插件可以帮助您在 WordPress 中轻松创建自定义帖子类型,只需点击几下。 最受欢迎的 WordPress 自定义帖子类型插件是 WooCommerce 和 WPForms。

为什么需要 WordPress 自定义帖子类型

在开始创建新的帖子类型之前,您应该仔细考虑您的需求。 在许多情况下,常规页面或帖子可以满足您的所有需求。

以下是应调用自定义帖子类型的一些指示:

  • 您要上传的某些内容不是帖子,例如商店页面。
  • 除了您的内容之外,您还需要额外的字段来插入更多数据。
  • 您要上传的内容需要全新显示,而不仅仅是页面或帖子。

您可以参阅我们关于何时使用 WordPress 自定义帖子类型的文章以获取更多信息。

如何在 WordPress 中显示自定义帖子类型

在我们开始之前,请确保您已经创建了您打算在您的网站上显示的自定义帖子类型。 如果您熟悉编码,则可以在没有插件的情况下创建自定义帖子类型 WordPress。 如果不是这种情况,CPT UI 等插件可以为您提供帮助。

pda-custom-post-type-ui-plugin

#1 默认存档模板

首先,通过转到菜单栏上的Appearance并选择Menus创建一个新的菜单项。 您可以使用下面的特殊 URL 访问您的新帖子类型。

如果您使用 SEO(搜索引擎优化)友好的永久链接,自定义帖子类型的 URL 可能如下所示: “http://example.com/books” 。 相反,您的 URL 将类似于: “http://example.com/?post_type=books”

确保更改“books”和“example.com”以分别反映您的帖子类型名称和域。

pda-display-custom-post-type-wordpress-archive-template

完成以上所有步骤后,记得点击保存菜单按钮并转到前端。 您的自定义帖子类型可在您的网站上找到。

#2 自定义模板

如果存档页面为您的自定义帖子类型带来的外观不满足您的需求,自定义模板将满足您的需求。

  1. 在主题目录中,创建一个archive-books.php文件。 不要忘记将“书籍”更改为您自己的帖子类型。
  2. 将与主题相关的内容从archive.php复制并移动到archive-books.php模板。 从那里,您可以进行调整以按照您想要的方式进行设置。 每当用户访问您的自定义帖子类型的存档页面时,都会显示新设置的模板。

对于您的单个条目,步骤非常相似。 您必须在主题目录中创建single-books.php 。 永远记得将“书籍”更改为您的自定义帖子类型。 将所有主题模板从single.php复制到single-books.php ,您就可以开始定制了。

#3 首页

通过使用自定义帖子类型,您可以使您的独特材料与标准帖子截然不同。 尽管如此,还有其他方式来展示您的自定义帖子类型,首页是您的选择之一。

为此,您必须将代码插入到functions.php文件中。 但是,这是有风险的,因为这种修改会损坏整个站点。 我们建议使用 WPCode 添加您的自定义代码。

  1. 安装并激活后,在Code Snippets 中,单击Add Snippet 。 在“添加您的自定义代码”部分中点击“使用代码段”。

pda-add-自定义代码-wpcode

2. 您将转到创建自定义代码段站点。 复制下面的代码并将其粘贴到“代码预览”框中:

 add_action( 'pre_get_posts', 'add_my_post_types_to_query' );

函数 add_my_post_types_to_query( $query ) {
    如果 (is_home() && $query->is_main_query() )
        $query->set( 'post_type', array( 'post', 'books' ) );
   返回$查询;
}

3. 打开Active开关并点击Save Snippet按钮。 请记住将“书籍”更改为您的自定义帖子类型。

pda-create-custom-snippet-wpcode

#4 WP_查询

如果您熟悉代码,WordPress Loop 可以帮助您显示自定义帖子类型。 要使用自定义帖子类型,只需将以下代码粘贴到您的模板中。

 <?php
$args = array( 'post_type' => 'books', 'posts_per_page' => 10 );
$the_query = new WP_Query( $args );
?>
<?php if ( $the_query->have_posts() ) : ?>
<?php while ( $the_query->have_posts() ) : $the_query->the_post(); ?>
<h2><?php the_title(); ?></h2>
<div class="条目内容">
<?php the_content(); ?>
</div>
<?php 结束;
wp_reset_postdata(); ?>
<?php 其他: ?>
<p><?php _e( '抱歉,没有帖子符合您的条件。' ); ?></p>
<?php 结尾; ?> 

pda-wp-查询

此代码确定页面中的帖子数量和新创建的 WP_Query 类参数中的帖子类型。 在循环中,它处理查询、获取帖子并将它们显示给用户。

充分利用 WordPress 自定义帖子类型

恭喜! 您已经发现了 4 种在 WordPress 中显示自定义帖子类型的简单方法。

如果编码是你的强项,只需在首页或使用 WP_Query 上显示修改后的帖子类型。 如果没有,修改模板可能是更好的选择。 我们希望您已经找到最合适的方法。

如果您需要隐藏 WordPress 自定义帖子类型,保护 WordPress 页面和帖子插件可以帮助您做到这一点。 查看我们的指南了解更多详情。

不要忘记订阅我们的网站以获取更多有用的信息。