动态自定义帖子类型wordpress

时间:2017-07-12 14:57:41

标签: wordpress custom-post-type

我正在尝试学习如何为Wordpress构建动态自定义帖子类型插件,我正在使用这个旧指南:

https://code.tutsplus.com/tutorials/building-a-dynamic-custom-post-type-plugin--wp-26322

但我无法让它正常工作,我能够创建动态自定义帖子类型,但每次我注册一个新的自定义帖子类型支持部分与'标题','编辑','作者'等在之前创建的自定义帖子类型中更改。

(我发现这个插件是使用相同的指南创建的,但它具有相同的不稳定行为。

这是插件:https://wordpress.org/plugins/dynamic-custom-post-type/

要完全解释我每次添加或编辑其他自定义帖子类型时都会收到字段编辑器,作者等或其他字段,即使数据库说明该自定义帖子类型应该关闭它。

任何帮助都将不胜感激。

3 个答案:

答案 0 :(得分:0)

你需要一个好的插件。试试Custom Post Type UI plugin。这个插件也有很多教程。祝你好运!

答案 1 :(得分:0)

自定义帖子类型只创建副本&粘贴到主题 function.php 文件中的代码下面:

add_action('init', 'wfd_team');

function wfd_team() {
    $labels = array(
        'name' => 'Member',
        'singular_name' => 'Member',
        'menu_name' => 'Teams',
        'name_admin_bar' => 'Team',
        'add_new' => 'Add New',
        'add_new_item' => 'Add New Member',
        'new_item' => 'New Member',
        'edit_item' => 'Edit Member',
        'view_item' => 'View Member',
        'all_items' => 'All Members',
        'search_items' => 'Search Members',
        'parent_item_colon' => 'Parent Members:',
        'not_found' => 'No Member found.',
        'not_found_in_trash' => 'No Member found in Trash.'
    );

    $args = array(
        'labels' => $labels,
        'public' => true,
        'rewrite' => array('slug' => 'wfd-team'),
        'has_archive' => true,
        'menu_position' => 20,
        'menu_icon' => 'dashicons-groups',
        'supports' => array('title', 'editor', 'author', 'thumbnail')
    );
    register_post_type('wfd_team', $args);
}

通过短代码在帖子或页面中显示自定义帖子类型,在主题 function.php &短代码 [wfd_team_short] 粘贴您的帖子或页面。

function wfd_team_fun() {
    $query = new WP_Query(
            array('post_type' => 'wfd_team',
        'posts_per_page' => 3, 'post_status' => 'publish',
        'paged' => $paged, 'order' => 'DESC'
    ));

    if ($query->have_posts()) :
        ?>
        <?php while ($query->have_posts()) : $query->the_post(); ?> 
            <div class="col-sm-4">
                <div style="text-align: center;">
                    <?php
                    if (has_post_thumbnail()) {
                        the_post_thumbnail('medium_large');
                    }
                    ?>
                </div>
                <h2 style="text-align: center; font-weight: 700!important;"><?php the_title(); ?></h2>
                <p  style="text-align: justify;">
                    <?php
                    echo wp_trim_words(get_the_content(),30);
                    ?>
<a href="<?php the_permalink(); ?>">Read More</a>
                </p>
            </div>
            <?php
        endwhile;
        wp_reset_postdata();
        ?>
        <!-- show pagination here -->
    <?php else : ?>
        <!-- show 404 error here -->
    <?php endif; ?>


    <?php
}

add_shortcode('wfd_team_short', 'wfd_team_fun');

答案 2 :(得分:0)

我实际上写了一个创建CPT内容的四步过程,该过程不需要太多编码:

1.使用代码或插件创建自定义帖子类型。创建CPT既可以手动完成,也可以使用CPT UI这样的插件完成。

  1. 设置CPT的自定义字段。我们将展示如何使用ACF做到这一点。

  2. 创建演示内容。为了在您的站点上显示CPT内容,您需要向站点添加一些演示内容。

  3. 将CPT内容嵌入到单个模板和存档模板中。使用Elementor的Theme Builder模板添加动态内容。

完成这些步骤后,您的自定义帖子类型内容将可以发布,并且可以在任何选定的CPT上显示。

浏览整个帖子,包括视频,并告诉我您的想法

https://elementor.com/wordpress-custom-post-types/