Wordpress自定义元变量,加载帖子,页面和所有自定义帖子类型?

时间:2014-01-14 13:32:47

标签: php arrays wordpress custom-post-type meta-boxes

我试图在所有帖子,网页和所有公开的自定义帖子类型上加载自定义字段。

但我不知道如何结合它。

这是我设置为在帖子和页面上加载自定义字段的变量

public function vf_add_meta_box( $post_type ) {

    if (in_array( $post_type, $this->post_types )) {
        add_meta_box( 
            $this->option_name,
            $this->metabox_name,
            array( $this, 'meta_box_display' ),
            $post_type,
            'normal',
            'high'
        );
    }
}

$ post_type在其他函数中定义并插入__construct中,并且设置如下

$post_types = array('post', 'page' );

从wordpress codex说明中获取所有自定义帖子类型,您可以使用此代码。

$args = array(
   'public'   => true,
   '_builtin' => false
);

$output = 'names'; // names or objects, note names is the default
$operator = 'and'; // 'and' or 'or'

$custom_types = get_post_types( $args, $output, $operator ); 

foreach ( $custom_types  as $post_type ) {

   return $post_type ;
}

所以我假设我将$ post_type添加到$ post_types数组

$post_types = array('post', 'page', $post_type );

它会在自定义帖子类型中显示元数据但它不起作用。

1 个答案:

答案 0 :(得分:1)

尝试用此替换你的上一个foreach:

$post_types = array_merge($post_types, $custom_types);

这应该将您的自定义帖子类型数组与默认的$post_types数组相结合。