使用自定义帖子类型作为分类

时间:2012-11-13 作者:AgilE

我有两种自定义的帖子类型,书籍和作者。现在,每本书都有相应的作者。我知道如何使用自定义图元将书籍与作者关联。

然而,随着时间的推移,会有很多书和相应的作者。哪种UI控件最适合显示要从中选择的作者列表,最好是以简洁的方式显示?

2 个回复
最合适的回答,由SO网友:fischi 整理而成

我会在books custom post类型中添加一个元框,其中包含一个带有自动完成功能的输入字段,以从现有作者中选择作者。

您也可以使用标准的下拉字段,但如果您有很多作者,它会变得很拥挤。

save_post 操作,将具有作者ID的meta\\u数据字段添加到书本:

update_post_meta($book_id, \'_book_author\', $author_id, $prev_value);
此外,为了有一个良好的概述,我将向作者自定义帖子类型添加一个元框,其中包含分配给该作者的所有书籍。您可以直接查询它们(SELECT \'post_id\' FROM wp_postmeta WHERE meta_value = \'$author_id\' AND meta_key = \'_book_author\'), 并输出一个列表,其中包含指向编辑的链接。php,或者您也可以保存书籍的meta\\u数据(保存书籍时),类似于:

add_post_meta( $author_id, \'_books_by_this_author\', $book_id );
如果选择第二个版本,请确保正确处理冗余数据-如果在删除或更新书籍时不删除post\\u meta,可能会导致大量死链接。

我假设您知道如何将meta\\u框和挂钩添加到save_post 行动如果没有,请查看this article

我并没有在这里详细解释一切,也没有以最好的Wordpress方式编写查询,我只是想向您介绍如何解决问题,而不是从scrath开始解释。如果你需要更多的帮助,请告诉我。

SO网友:Manny Fleurmond

另一种方法是使用scribu的Posts 2 Posts 插件,允许您将不同的帖子类型连接在一起。使用插件创建连接会自动为您提供元框,以将作者连接到书籍,然后您可以自定义主题拉取连接信息。

结束

相关推荐

删除Yoast SEO帖子Metabox

Yoasts SEO插件在后期编辑屏幕中添加了一个元框。我正在尝试为非编辑或更高级别的用户删除此项。我试着把remove_meta_box 在admin\\u init上调用,尝试删除$wpseo\\u metabox上的操作,但没有效果。如何在不需要用户干预的情况下删除此元数据库(用户永远不会知道该元数据库存在,因此单击屏幕选项不是一个选项)