如何从关系字段中获取帖子数量?

时间:2015-11-18 13:43:33

标签: php wordpress relationship advanced-custom-fields

在WordPress网站上:

- 我有自定义帖子类型 “制作人”

- 我有自定义帖子类型 “电影”

- 我有关系字段 “movies_of_this_producer” 。 在编辑/创建自定义帖子类型“电影”的新帖子的页面上,我有这个关系字段“movies_of_this_producer”。在这个关系领域“movies_of_this_producer”中,我可以选择相应的“制作人”帖子。

因此,我在“制作人”帖子和“电影”帖子之间有正确的关系。

例如,在网站上我发布了“Steven Spielberg”(自定义帖子类型“生产者”的帖子),它通过关系字段“movies_of_this_producer”与5个帖子相关联: “Jaws”“Jurassic Park”“Schindler's List”“The Terminal”“Bridge of间谍“(5篇自定义帖子类型”电影“)。

现在我需要获取每个“制作人”帖子 - 相关“电影”帖子的数量(“电影”帖子,与“制作人”帖子通过关系字段“movies_of_this_producer”相关)。

问题:如何获取每个“制作人”帖子的相关“电影”帖子数量?应该是什么代码?

1 个答案:

答案 0 :(得分:0)

关系字段存储与其关联的行数作为其元值。因此,如果您的转发器被命名为“repeater”并且有2个名为“text”的文本行,其值为“foo”和“bar”,则元结构将如下所示:

  1. repeater =“2”
    1. repeater_0_text =“foo”
    2. repeater_1_text =“bar”
  2. 您可以使用get_post_meta()的默认WordPress Codex功能或ACF特定功能acf_get_metadata()(这将允许您使用字段键而不是名称)。

    // get the number of repeater rows
    $rows = acf_get_metadata( $post_id, 'repeater' );