您想了解如何在 WordPress 中轻松创建自定义帖子类型吗?
自定义帖子类型允许您超越帖子和页面,并为您的网站创建不同的内容类型。它们将您的 WordPress 网站从博客平台转变为强大的内容管理系统 (CMS)。
在本文中,我们将向您展示如何在 WordPress 中轻松创建自定义帖子类型。
什么是 WordPress 中的自定义帖子类型?
在您的 WordPress 网站上,帖子类型用于帮助区分 WordPress 中的不同内容类型。帖子和页面都是帖子类型,但目的不同。
WordPress 默认提供几种不同的帖子类型:
- 帖子
- 页面
- 附件
- 修订
- 导航菜单
您还可以创建自己的帖子类型,称为自定义帖子类型。当创建与网站格式不同的内容时,这些非常有用标准帖子或页面。
例如,如果您运营一个电影评论网站,那么您可能想要创建一个电影评论帖子类型。您还可以为作品集、推荐和产品创建自定义帖子类型。
在 WPBeginner 上,我们为“交易”和“术语表”部分使用自定义帖子类型,以将它们与我们的每日博客文章分开。它帮助我们更好地组织我们的网站内容。
自定义帖子类型可以具有不同的自定义字段和自己的自定义类别结构。
许多流行的 WordPress 插件使用自定义帖子类型在您的 WordPress 网站上存储数据。以下是一些使用自定义帖子类型的顶级插件:
- WooCommerce 向您的在线商店添加“产品”帖子类型
- WPForms 创建“wpforms”帖子类型来存储您的所有表单
- MemberPress 添加“memberpressproduct” ‘ 自定义帖子类型
视频教程
订阅 WPBeginner
如果你’;更喜欢书面说明,请继续阅读。
我需要创建自定义帖子类型吗?
开始在 WordPress 网站上创建自定义帖子类型之前,评估您的需求非常重要。很多时候,您可以使用普通的帖子或页面获得相同的结果。
如果您不确定您的网站是否需要自定义帖子类型,请参阅我们的指南,了解何时需要在 WordPress 中使用自定义帖子类型或分类法。
话虽如此,让我们看看如何在 WordPress 中轻松创建自定义帖子类型供您自己使用。
我们将向您展示两种方法,并介绍一些在 WordPress 网站上显示自定义帖子类型的方法。
- 使用 WPCode 创建自定义帖子类型(推荐)
- 使用插件创建自定义帖子类型
- 在您的网站上显示自定义帖子类型
创建客户tom 使用 WPCode 手动发布帖子
创建自定义帖子类型需要您将代码添加到主题的functions.php 文件中。通常,除了高级用户之外,我们不建议任何人这样做,因为即使是轻微的错误也可能会破坏您的网站。另外,如果您更新主题,那么代码将被删除。
但是,我们将使用 WPCode,这是任何人向您的 WordPress 网站添加自定义代码的最简单、最安全的方法。
使用 WPCode,您可以添加自定义代码片段,并激活其内置预配置代码库中的许多功能,这些功能可以替换您可能已安装的许多专用或一次性插件。
首先,您需要安装并激活免费的 WPCode 插件。有关详细说明,请查看我们有关如何安装 WordPress 插件的分步指南。
激活后,导航至代码片段 » 在 WordPress 仪表板中添加片段。将鼠标悬停在“添加自定义代码”(新片段宠物),然后点击“使用片段”。
接下来,您将进入“创建自定义片段”屏幕。
现在,您可以为代码片段指定标题并将开关切换到“活动”。
之后,只需将以下代码粘贴到“代码预览”区域即可。此代码创建一个名为“电影”的基本自定义帖子类型,该类型将显示在您的管理侧边栏中,并且适用于任何主题。
// 我们的自定义帖子类型函数
函数create_posttype() {
register_post_type( ‘电影’,
// CPT 选项
大批(
‘标签’ => 数组(
‘名称’ => __( ‘电影’ ),
‘singular_name’ => __( ‘电影’ )
),
‘公共’ => 真实,
‘has_archive’ => 真,
‘重写’ => 数组(‘slug’ => ‘电影’),
‘show_in_rest’ => 真,
)
);
}
// 将我们的函数连接到主题埃图普
add_action( ‘init’, ‘create_posttype’ );
由 WPCode 与 ❤️ 主办
在 WordPress 中一键使用
如果您只想要基本的自定义帖子类型,只需将电影和电影替换为您自己的 CPT 别名和名称,然后单击“更新”按钮即可。
但是,如果您想要为自定义帖子类型提供更多选项,请使用以下代码而不是上面的代码。
下面的代码向“电影”自定义帖子类型添加了更多选项,例如支持修订、特色图像、自定义字段,以及将自定义帖子类型与称为“流派”的自定义分类法相关联。
注意:请勿组合这两个片段,否则 WordPress 会出现错误,因为这两个片段注册相同的自定义帖子类型。我们建议使用 WPCode 为您想要注册的每个附加帖子类型创建一个全新的代码段。
/*
* 创建一个函数来创建我们的 CPT
*/
函数自定义帖子类型(){
// 设置 UI 标签 f或自定义帖子类型
$标签=数组(
‘name’ => _x( ‘电影’, ‘帖子类型通用名称’, ‘twentytwentyone’ ),
‘singular_name’ => _x( ‘电影’, ‘帖子类型单数名称’, ‘twentytwentyone’ ),
‘menu_name’ => __( ‘电影’, ‘twentytwentyone’ ),
‘parent_item_colon’ => __( ‘家长电影’, ‘twentytwentyone’ ),
‘all_items’ => __( ‘所有电影’, ‘twentytwentyone’ ),
‘view_item’ => __( ‘观看电影’, ‘twentytwentyone’ ),
‘add_new_item’ => __( ‘添加新电影’, ‘twentytwentyone’ ),
‘add_new’ => __( ‘添加新’, ‘twentytwentyone’ ),
‘edit_item’ => __( ‘编辑电影’, ‘twentytwentyone’ ),
‘update_item’ => __( ‘更新电影’, ‘twentytwentyone’ ),
‘search_items’ => __( ‘搜索电影’, ‘twentytwentyone’ ),
‘not_found’ => __( ‘未找到’, ‘twentytwentyone’ ),
‘not_found_in_trash’ => __( ‘在垃圾箱中找不到’, ‘twentytwentyone’ ),
);
// 设置自定义帖子类型的其他选项
$args = 数组(
‘标签’ => __( ‘电影’, ‘twentytwentyone’ ),
‘description’ => __( ‘电影新闻和评论’, ‘twentytwentyone’ ),
‘标签’ => $标签,
// 此 CPT 在帖子编辑器中支持的功能
‘支持’ => array( ‘标题’, ‘编辑’, ‘摘录’, ‘作者’, ‘缩略图’, ‘评论’, ‘修订’, ‘自定义字段’, ),
// 您可以将此 CPT 与分类法或自定义分类法相关联。
‘分类法’ => 数组( ‘流派’ ),
/* 分层 CPT 就像页面一样,可以有
* 父母和孩子的物品。无等级的 CPT
* 就像帖子一样。
*/
‘层次结构’ => false,
‘公共’ => 真实,
‘show_ui’ => 真,
‘show_in_menu’ => 真,’show_in_nav_menus’ => 真,
‘show_in_admin_bar’ => true,
‘菜单位置’ => 5,
‘can_export’ => 真,
‘has_archive’ => true,
‘exclude_from_search’ => false,
‘publicly_queryable’ => true,
‘capability_type’ => ‘帖子’,
‘show_in_rest’ => 真,
);
// 注册您的自定义帖子类型
register_post_type( ‘电影’, $args );
}
/* 挂钩“init”操作,以便该函数
* 包含我们的帖子类型注册不是
* 不必要地执行。
*/
add_action( ‘init’, ‘custom_post_type’, 0 );
由 WPCode 与 ❤️ 主办
在 WordPress 中一键使用
您可能还会注意到我们将层次结构值设置为 false 的部分。如果您希望自定义帖子类型的行为类似于页面而不是帖子,则可以将此值设置为 true。
另一件事要注意的是重复使用二十二岁字符串,这称为文本域。如果您的主题已准备好翻译并且您希望翻译自定义帖子类型,那么您将需要提及您的主题使用的文本域。
您可以在主题目录的 style.css 文件中找到主题的文本域,或者通过管理面板中的外观 » 主题文件编辑器找到主题的文本域。文本域将在文件的标题中提及。
只需将二十二岁以下替换为您自己主题的文本域即可。
一旦您对更改感到满意,只需单击“更新”按钮,WPCode 将处理剩下的事情。
使用插件创建自定义帖子类型
在 WordPress 中创建自定义帖子类型的另一种简单方法是使用插件。建议初学者使用此方法,因为它安全且超级简单。
您需要做的第一件事是安装并激活自定义帖子类型 UI 插件。有关更多详细信息,请参阅我们有关如何安装 WordPress 插件的分步指南。
激活后,您需要转到 CPT UI » 添加/编辑帖子类型来创建新的自定义帖子类型。您应该位于“添加新帖子类型”选项卡上。
首先,您需要为自定义帖子类型(例如“电影”)提供一个别名。该 slug 将在 URL 和 WordPress 查询中使用,因此它只能包含字母和数字。下面,您需要为自定义帖子类型提供复数和单数名称。
之后,如果您愿意,可以点击“根据所选标签填充其他标签”的链接。这将自动填写下面的附加标签字段,通常会节省您的时间。
现在您可以向下滚动到“其他标签”部分。如果您没有单击我们提到的链接,您现在需要提供帖子类型的描述并更改 la贝尔斯。
当您管理特定帖子类型的内容时,这些标签将在整个 WordPress 用户界面中使用。
接下来是帖子类型设置。从这里您可以为您的帖子类型设置不同的属性。每个选项都附有简短说明,解释其用途。
例如,您可以选择不使帖子类型像页面一样分层,或者按时间顺序对帖子进行反向排序。
在常规设置下方,您将看到用于选择该帖子类型支持哪些编辑功能的选项。只需选中您想要包含的选项即可。
最后,点击“添加帖子类型”按钮保存并创建您的自定义帖子类型。
仅此而已。您已成功创建自定义帖子类型,可以继续开始添加内容。
在您的网站上显示自定义帖子类型
WordPress内置支持显示您的自定义帖子类型。将一些项目添加到新的自定义帖子类型后,就可以将它们显示在您的网站上。
您可以使用多种方法,每种方法都有自己的优点。
使用默认存档模板显示自定义帖子类型
首先,您只需转到外观»菜单并将自定义链接添加到菜单即可。此自定义链接是指向您的自定义帖子类型的链接。
如果您使用 SEO 友好的永久链接,那么您的自定义帖子类型的 URL 很可能如下所示:
http://example.com/movies
如果您不使用 SEO 友好的永久链接,那么您的自定义帖子类型 URL 将如下所示:
http://example.com/?post_type=movies
不要忘记将“example.com”替换为您自己的域名,将“movies”替换为您的自定义帖子类型名称。
保存您的菜单,然后访问您网站的前端。您将看到添加的新菜单项,当您单击它时,它将使用主题中的 archive.php 模板文件显示自定义帖子类型的存档页面。
创建自定义帖子类型模板
如果您不喜欢自定义帖子类型的存档页面的外观,则可以使用自定义帖子类型存档的专用模板。
您所需要做的就是在主题目录中创建一个新文件并将其命名为 archive-movies.php。确保将“电影”替换为自定义帖子类型的名称。
首先,您可以将主题的 archive.php 文件的内容复制到 archive-movies.php 模板中,然后对其进行修改以满足您的需求。
现在,每当访问自定义帖子类型的存档页面时,都会使用此模板来显示它。
同样,您还可以为您的帖子类型的单个条目显示创建自定义模板。为此,您需要创建 si主题目录中的 ngle-movies.php 。不要忘记将“电影”替换为您的自定义帖子类型的名称。
您可以首先将主题的 single.php 模板的内容复制到 single-movies.php 模板中,然后开始修改它以满足您的需求。
要了解更多信息,请参阅我们有关如何在 WordPress 中创建自定义单篇帖子模板的指南。
在首页显示自定义帖子类型
使用自定义帖子类型的一个优点是,它可以将自定义内容类型与常规帖子分开。但是,如果您愿意,您可以在网站的首页上显示自定义帖子类型。
只需使用免费的 WPCode 插件将此代码添加为新代码段即可。请参阅本文有关手动添加代码的部分以获取详细说明。
add_action( ‘pre_get_posts’, ‘add_my_post_types_to_query’ );
函数 add_my_post_types_to_query( $query ) {
if ( is_home() && $query->is_main_query() )
$query->set( ‘post_type’, array( ‘post’, ‘电影’ ) );
返回$查询;
}
由 WPCode 与 ❤️ 主办
在 WordPress 中一键使用
不要忘记将“电影”替换为您的自定义帖子类型。
查询自定义帖子类型
如果您熟悉编码并希望在模板中运行循环查询,那么这里是如何做到这一点的。通过查询数据库,您可以从自定义帖子类型中检索项目。
您需要将以下代码片段复制到您希望显示自定义帖子类型的模板中。
‘电影’, ‘posts_per_page’ => 10 );
$the_query = new WP_Query( $args );
?>
have_posts() ) : ?>
have_posts() ) : $the_query->the_post(); ?>
;
由 WPCode 与 ❤️ 主办
在 WordPress 中一键使用
此代码在我们新的 WP_Query 类的参数中定义了帖子类型和每页帖子数量。然后它运行查询、检索帖子并在循环内显示它们。
在小部件中显示自定义帖子类型
您会注意到 WordPress 中有一个默认小部件可以显示最近的帖子,但它不允许您选择自定义帖子类型。
如果您想在小部件中显示新创建的帖子类型的最新条目该怎么办?有一个简单的方法可以做到这一点。
您需要做的第一件事是安装并激活自定义帖子类型小部件插件。有关更多详细信息,请参阅我们有关如何安装 WordPress 插件的分步指南。
激活后,只需转到 A外观 » 小部件并将“最近帖子(自定义帖子类型)”小部件拖放到侧边栏。
此小部件允许您显示任何帖子类型的最新帖子。您需要从“帖子类型”下拉列表中选择自定义帖子类型,然后选择所需的选项。
之后,请确保单击屏幕顶部的“更新”按钮,然后访问您的网站以查看正在运行的小部件。
该插件还提供自定义帖子类型小部件,用于显示档案、日历、类别、最近评论、搜索和标签云。
我们希望本教程能帮助您了解如何在 WordPress 中创建自定义帖子类型。您可能还想了解如何增加博客流量,或查看我们的常见 WordPress 错误列表以及如何修复它们。
如果您喜欢这篇文章,请订阅我们的 WordPress 视频教程 YouTube 频道。您还可以在 Twitter 和 Facebook 上找到我们。