获取由插件创建的metabox中的项目

时间:2013-12-04 12:42:01

标签: wordpress wordpress-plugin meta-boxes

我有一个插件,可以添加团队成员。它实际上是一些成员的清单。 现在我已经为页面创建了一个元数据箱。在这个元数据箱中,我想在选择框中显示这些成员名称以供选择。这些成员将出现在该页面中。 在元数据代码中,我试图让这些成员像这样:

$post_type2 = 'team';
    $orderby2 = 'menu_order';
    $order2 = 'ASC';
    $posts_per_page2 = 100;
    $query2 = new WP_Query( array ( 
        'post_type'      => $post_type2,
        'posts_per_page' => $posts_per_page2,
        'orderby'        => $orderby2, 
        'order'          => $order2,
        'no_found_rows'  => 1
        ) 
    );
    //Get post type count
    $members = array();
    $members2 = array();
    $post_count2 = $query2->post_count;
    if( $post_count2 > 0) :
        while ($query2->have_posts()) :
            $query2->the_post();
            $members2['mid'] = get_the_id();
            $members2['mname'] = get_the_title();
            $members[] = $members2;
            //echo the_id();
        endwhile;
    endif;

但它弄乱了页面本身。我可以获得成员,但页面的名称更改为成员的名称。我的页面是“主页”,在标题区域中,它显示了jhon doe - 成员名称。任何想法为什么?我想我使用错误的“获取”方法来获取物品。

EDITED

这个想法:
团队插件添加了一些成员。我想在页面中显示这些成员。但并非所有页面都有相同的成员。例如:“john doe”可以出现在“about”页面中,但不能出现在“service”页面中。像这样。这就是为什么我想在页面中创建元框来选择成员。这是正确的方法吗?或任何其他想法??

1 个答案:

答案 0 :(得分:0)

在“编辑帖子”管理页面上使用WP_Query是不安全的,因为它会使事情混乱并导致意外行为。切换到get_posts应该可以解决这个问题。