我想在我的 WordPress 主题中创建一个名为 Books 的自定义帖子类型,并在不依赖第三方插件的情况下显示其存档页面。我在主题的functions.php 文件中注册了自定义帖子类型,它出现在WordPress 管理区域中。但是,我不知道如何创建和自定义此帖子类型的存档页面。
这是我用来注册自定义帖子类型的代码:
register_post_type('books', [
'labels' => [
'name' => 'Books',
'singular_name' => 'Book',
],
'public' => true,
'has_archive' => true,
'rewrite' => ['slug' => 'books'],
]);
}
add_action('init', 'create_custom_post_type');
自定义帖子类型注册成功,但是当我访问 http://example.com/books 时,我看到默认的“找不到页面”错误。
您尝试了什么以及您期待什么? 我希望书籍存档页面能够显示我所有自定义帖子的列表。我试过:
在 WordPress 设置中重新保存永久链接结构。 在我的主题文件夹中创建一个名为 archive-books.php 的模板文件,其中包含基本内容:
get_header();
echo "<h1>Books Archive</h1>";
get_footer();
确保自定义帖子类型设置为 public 并且 has_archive 为 true。 尽管做出了这些努力,存档页面仍然不显示自定义帖子。我错过了什么?
我重新创建了与您相同的设置,但就我而言,使用相同的代码,我的链接工作正常。
您能否提供有关代码位置(是否在
functions.php
中)和启用的插件的更多信息?
我建议尝试另一个 slug 以确保与任何启用的插件不发生冲突。例如,您可以将 slug 从
books
修改为 custom_theme_books
或您偏好的任何其他前缀。