【问题标题】:How do I create sub-post type for a custom post type如何为自定义帖子类型创建子帖子类型
【发布时间】:2020-06-06 22:24:37
【问题描述】:

image of WordPress dashboard highlighting LearnPress menu

我想知道如何使一个自定义帖子类型成为另一种自定义帖子类型的菜单项。正如您在图片中看到的那样,LearnPress 在其菜单“课程”、“课程”等中的方式。LearnPress 必须是自定义帖子类型,而“课程”、“课程”等必须是自定义帖子类型本身。

但是如何将一个作为另一个菜单项呢?可以用CPT-UI插件来完成吗?

【问题讨论】:

    标签: wordpress custom-post-type learnpress


    【解决方案1】:

    只需在您的 functions.php 文件中添加以下代码即可。

    function my_custom_post_type() {
    
        $labels = array(
            'name'                  => _x( 'My new post', 'Post Type General Name', 'text_domain' ),
            'singular_name'         => _x( 'My new post', 'Post Type Singular Name', 'text_domain' ),
            'menu_name'             => __( 'Post Types', 'text_domain' ),
            'name_admin_bar'        => __( 'Post Type', 'text_domain' ),
            'archives'              => __( 'Item Archives', 'text_domain' ),
            'attributes'            => __( 'Item Attributes', 'text_domain' ),
            'parent_item_colon'     => __( 'Parent Item:', 'text_domain' ),
            'all_items'             => __( 'All Items', 'text_domain' ),
            'add_new_item'          => __( 'Add New Item', 'text_domain' ),
            'add_new'               => __( 'Add New', 'text_domain' ),
            'new_item'              => __( 'New Item', 'text_domain' ),
            'edit_item'             => __( 'Edit Item', 'text_domain' ),
            'update_item'           => __( 'Update Item', 'text_domain' ),
            'view_item'             => __( 'View Item', 'text_domain' ),
            'view_items'            => __( 'View Items', 'text_domain' ),
            'search_items'          => __( 'Search Item', 'text_domain' ),
            'not_found'             => __( 'Not found', 'text_domain' ),
            'not_found_in_trash'    => __( 'Not found in Trash', 'text_domain' ),
            'featured_image'        => __( 'Featured Image', 'text_domain' ),
            'set_featured_image'    => __( 'Set featured image', 'text_domain' ),
            'remove_featured_image' => __( 'Remove featured image', 'text_domain' ),
            'use_featured_image'    => __( 'Use as featured image', 'text_domain' ),
            'insert_into_item'      => __( 'Insert into item', 'text_domain' ),
            'uploaded_to_this_item' => __( 'Uploaded to this item', 'text_domain' ),
            'items_list'            => __( 'Items list', 'text_domain' ),
            'items_list_navigation' => __( 'Items list navigation', 'text_domain' ),
            'filter_items_list'     => __( 'Filter items list', 'text_domain' ),
        );
        $args = array(
            'label'                 => __( 'My new post', 'text_domain' ),
            'description'           => __( 'Post Type Description', 'text_domain' ),
            'labels'                => $labels,
            'supports'              => array( 'title', 'editor' ),
            'taxonomies'            => array( 'category', 'post_tag' ),
            'hierarchical'          => false,
            'public'                => true,
            'show_ui'               => true,
            'show_in_menu'          => true,
            'menu_position'         => 5,
            'show_in_admin_bar'     => true,
            'show_in_nav_menus'     => true,
            'can_export'            => true,
            'has_archive'           => true,
            'exclude_from_search'   => false,
            'publicly_queryable'    => true,
            'capability_type'       => 'page',
        );
        register_post_type( 'post_type', $args );
    
    }
    add_action( 'init', 'my_custom_post_type', 0 );
    

    或者您可以从这里自定义您的新帖子名称标签、名称等:https://generatewp.com/post-type/

    【讨论】:

    • 感谢您的回答:)。但我认为这并不能解决我的问题。这只是创建了一个新的自定义帖子类型。如何将自定义帖子类型列为另一种帖子类型的菜单项?另外,你能解释一下'text-domain'参数的用途吗?
    • 您可以使用自定义帖子类型 UI 来实现 wordpress.org/plugins/custom-post-type-ui 当您使用 CPTUI 转到您的帖子类型设置时,您应该会在选项列表的某处看到一个下拉列表这与将其设置为分层相关。您想从下拉列表中选择“true”,然后保存。完成后,当您在帖子类型中创建新帖子时,您应该会在右侧边栏中看到一个允许您选择父级的下拉菜单。
    • 很抱歉,但我认为这里遗漏了一些东西。先生,您看到附图了吗?如果没有,请考虑查看一次,因为它将帮助您更好地理解问题。我非常感谢您的帮助。谢谢。
    猜你喜欢
    • 1970-01-01
    • 2016-05-13
    • 1970-01-01
    • 2020-01-19
    • 2018-06-24
    • 1970-01-01
    • 1970-01-01
    • 2016-04-27
    • 1970-01-01
    相关资源
    最近更新 更多