我正在使用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');
评论前必须登录!
注册