个性化阅读
专注于IT技术分析

我无法调用自定义帖子类型的类别

我正在使用WordPress开发主题, 添加了自定义帖子类型, 但是类别和标签存在问题。我无法将他们称为文件。这是我在functions.php中使用的代码

add_action( 'init', 'register_cpt_video' );
    function register_cpt_video() {
        $labels = array(
            'name'                      => __( 'Videos', 'video' ), 'singular_name'             => __( 'Video', 'video' ), 'add_new'                   => __( 'Añadir nuevo', 'video' ), 'add_new_item'              => __( 'Añadir nuevo video', 'video' ), 'edit_item'                 => __( 'Editar video', 'video' ), 'new_item'                  => __( 'Nuevo video', 'video' ), 'view_item'                 => __( 'Ver video', 'video' ), 'search_items'              => __( 'Buscar videos', 'video' ), 'not_found'                 => __( 'No se encontraron videos', 'video' ), 'not_found_in_trash'        => __( 'No se encontraron videos en la papelera', 'video' ), 'parent_item_colon'         => __( 'Parent Video:', 'video' ), 'menu_name'                 => __( 'Video', 'video' ), );
        $args = array(
            'labels'                    => $labels, 'hierarchical'              => false, 'supports'                  => array( 'title', 'editor', 'thumbnail' ), 'public'                    => true, 'show_ui'                   => true, 'show_in_menu'              => true, 'menu_position'             => 5, 'menu_icon'                 => 'dashicons-format-video', 'show_in_nav_menus'         => true, 'publicly_queryable'        => true, 'exclude_from_search'       => false, 'has_archive'               => true, 'query_var'                 => true, 'can_export'                => true, 'rewrite'                   => true, 'capability_type'           => 'post'
        );
        register_post_type( 'video', $args );

        $labels = array(
            'name'                  => _x( 'Categorías de video', 'Nombre de categoría de proyectos', 'video' ), 'singular_name'         => _x( 'Categoría', 'Nombre de categoría de proyecto', 'video' ), 'search_items'          => __( 'Buscar categorías', 'video' ), 'all_items'             => __( 'Todas las categorías', 'video' ), 'parent_item'           => __( 'Categoría superior', 'video' ), 'parent_item_colon'     => __( 'Categoría superior:', 'video' ), 'edit_item'             => __( 'Editar categoría', 'video' ), 'update_item'           => __( 'Actualizar categoría', 'video' ), 'add_new_item'          => __( 'Añadir nueva categoría', 'video' ), 'new_item_name'         => __( 'Nueva categoría', 'video' ), 'menu_name'             => __( 'Categorías', 'video' ), );
        register_taxonomy(
            'categoria-video', array( 'video' ), array(
                'hierarchical'          => true, 'labels'                => $labels, 'show_ui'               => true, 'show_admin_column'     => true, 'query_var'             => true, )
        );

        $labels = array(
            'name'                  => _x( 'Etiquetas de video', 'Nombre de etiqueta de proyectos', 'video' ), 'singular_name'         => _x( 'Etiqueta', 'Nombre de etiqueta de proyecto', 'video' ), 'search_items'          => __( 'Buscar etiquetas', 'video' ), 'all_items'             => __( 'Todas las etiquetas', 'video' ), 'parent_item'           => __( 'Etiqueta superior', 'video' ), 'parent_item_colon'     => __( 'Etiqueta superior:', 'video' ), 'edit_item'             => __( 'Editar etiqueta', 'video' ), 'update_item'           => __( 'Actualizar etiqueta', 'video' ), 'add_new_item'          => __( 'Añadir nueva etiqueta', 'video' ), 'new_item_name'         => __( 'Nueva etiqueta', 'video' ), 'menu_name'             => __( 'Etiquetas', 'video' ), );
        register_taxonomy( 
            'tag-video', array( 'video' ), array(
                'hierarchical'          => false, 'labels'                => $labels, 'show_ui'               => true, 'show_admin_column'     => true, 'query_var'             => true, )
        );
    }

这是我放在single-video.php中的代码

<?php if ( have_posts() ) : while ( have_posts() ) : the_post();?>
            <article>
                <h1><?php the_title(); ?></h1>
                <?php the_content(); ?>
                <div class="show_video">
                    <iframe src="https://www.youtube.com/embed/<?php echo get_post_meta(get_the_ID(), 'datos_del_video_identificador', true); ?>" frameborder="0" scrolling="no" allowfullscreen></iframe>
                </div>
                <div class="info_video">
                    <div class="date_post">
                        <p><?php echo get_the_date(); ?></p>
                    </div>
                    <div class="category_post">
                        <p>Categoría: <?php get_the_category(); ?></p>

                    </div>
                </div>
                <div class="tag_list_post">
                    <?php get_the_tag_list(); ?>
                </div>
            </article>
            <?php endwhile; endif; ?>

如果你能解决这个问题, 我将不胜感激。谢谢!


#1


get_the_category和get_the_tag_list函数仅适用于默认帖子类型(post)

要获得自定义税, 请使用get_the_terms, 具体情况如下:

$video_cats = get_the_terms(get_the_ID(), 'categoria-video');
$video_tags = get_the_terms(get_the_ID(), 'tag-video');
赞(0)
未经允许不得转载:srcmini » 我无法调用自定义帖子类型的类别

评论 抢沙发

评论前必须登录!