我现在在wordpress中使用WP Posts to Posts插件。
现在我在帖子和帖子,用户和用户,或帖子和用户之间建立了一些链接。
在上述三种情况中,我想用p2p插件做更多的事情。
例如,我可以先获取p2p_id:
$users = get_users( array(
'connected_type' => 'multiple_authors',
'connected_items' => $post
) );
foreach($users as $user) {
$p2p_id = $user->p2p_id;
// ********** ATTENTION *********
// Here, I got the p2p_id of the p2p object
// In a general purpose, I want to get the
// from and to object from the p2p_id
}
那么,如何通过p2p_id获取from和to对象?我已经找到了文档,但似乎没有有效的方法。
答案 0 :(得分:0)
没有其他答案。所以我终于从源代码中找到了答案:
档案:/wp-content/plugins/posts-to-posts/vender/scribu/lib-posts-to-posts/api.php
请注意,有一个功能:p2p_get_connection($p2p_id)
然后我们用已知的p2p_id
调用该函数,返回一个stdClass对象,如下所示:
object(stdClass)#2509 (4) {
["p2p_id"]=>
string(1) "8"
["p2p_from"]=>
string(2) "84"
["p2p_to"]=>
string(1) "2"
["p2p_type"]=>
string(10) "my_post_to_user"
}
现在我们可以获得p2p_from
ID和p2p_to
ID,我们知道它是帖子或用户。我们可以构造对象。
所以最终解决方案可能如下:
$conn = p2p_get_connection($this->p2p_id);
$from = get_post(intval($conn->p2p_from));
$to = new WP_User(intval($conn->p2p_to));
仍然没有在文档中找到,希望它有所帮助。