在wordpress中将页面属性添加到自定义帖子类型

时间:2016-09-02 04:50:11

标签: wordpress

我为我的项目创建了自定义帖子类型,我想添加带有页面属性的自定义帖子类型。我用以下代码完成了这个:



function register_pt_boutique()
{
    register_post_type('boutique', array(
        'label'           => 'Boutiques',
        'description'     => 'This post type represents the featured items on the homepage.',
        'public'          => true,
        'show_ui'         => true,
        'show_in_menu'    => true,
        'capability_type' => 'post',
        'map_meta_cap'    => true,
        'hierarchical'    => true,
        // 'rewrite' => array('slug' => 'featured', 'hierarchical' => true, 'with_front' => false),
        'query_var'       => true,
        'has_archive'     => true,
        'menu_position'   => '7',
        'supports'        => array('title', 'page-attributes','thumbnail'),
        // 'taxonomies' => array('page-attributes'),
        'labels'          => array(
            'name'               => 'Boutiques',
            'singular_name'      => 'Boutique',
            'menu_name'          => 'Boutiques',
            'add_new'            => 'Add Boutique',
            'add_new_item'       => 'Add New Boutique',
            'edit'               => 'Edit',
            'edit_item'          => 'Edit Boutique',
            'new_item'           => 'New Boutique',
            'view'               => 'View Boutique',
            'view_item'          => 'View Boutique',
            'search_items'       => 'Search Boutique',
            'not_found'          => 'No Boutique',
            'not_found_in_trash' => 'No Boutique Found in Trash',
            'parent'             => 'Parent Boutique',
        )
    ));
}




使用此代码页属性选项在管理员方面附带两个字段("父级"和"顺序")但没有"模板"现场选择。我希望页面属性为" template"领域。

2 个答案:

答案 0 :(得分:0)

就像您在页面模板文件中指定模板名称一样:

Template Name: <template name>

您可以将自定义帖子类型指定为要显示的 模板帖子类型

Template Post Type: <custom_post_type_1>, <custom_post_type_2>, <custom_post_type_3>

例如: 我想将页面属性添加到自定义帖子类型之一的作品集中:

在页面模板中,我添加了:

Template Name: Portfolio Design
Template Post Type: portfolio

此外,不要忘记在cpt注册期间将“页面属性”添加到“支持”数组:

'supports' => array(
            'custom-fields',
            'page-attributes'
        ), 

如果您想更改标签“页面属性”,则将其分配给“标签”数组中的“属性”,即:

'labels' => array(
    'name' => 'Portfolios',
    'singular_name' => 'Portfolio',
    'attributes' => 'Page Attributes'
),

自定义帖子类型编辑器的仪表板的屏幕截图为: page attribute for custom post type = portfolio

答案 1 :(得分:-2)

从wordpress 4.7你可以包括字段&#34;模板&#34;直接来自de https://make.wordpress.org/core/2016/11/03/post-type-templates-in-4-7/