如何在侧边栏中显示 cpt 类别?
How to display cpt categories in sidebar?
我想在cpt侧边栏显示我的cpt分类,我的代码如下
//add custom menus
function codex_custom_init() {
register_post_type(
'Jobs', array(
'labels' => array('name' => __( 'Jobs' ), 'singular_name' => __( 'Jobs' ) ),
'public' => true,
'has_archive' => true,
'supports' => array('title', 'editor', 'thumbnail'),
'menu_icon' => 'dashicons-calendar-alt',
'show_in_rest' => 'true'
)
);
}
add_action( 'init', 'codex_custom_init' );
function jobs_create_my_taxonomy() {
register_taxonomy(
'jobs-category',
'jobs',
array(
'label' => __( 'Category' ),
'rewrite' => array( 'slug' => 'jobs-category' ),
'hierarchical' => true,
'show_in_rest' => 'true'
)
);
}
add_action( 'init', 'jobs_create_my_taxonomy' );
我需要在带有类别链接的边栏中显示 cpt 类别。
您可以使用 add_shortcode
和 get_terms
。将 show_category
添加到边栏。
function show_category(){
$jobs_category = get_terms( array(
'taxonomy' => 'jobs-category',
'hide_empty' => false
) );
if ( !empty( $jobs_category ) ) {
$output = '<ul>';
foreach( $jobs_category as $category ) {
$output.= '<li><a href="'.get_term_link( $category ).'">'. esc_attr( $category->name ) .'</a></li>';
}
$output.= '</ul>';
echo $output;
}
}
add_shortcode( 'show_category', 'show_category' );
我想在cpt侧边栏显示我的cpt分类,我的代码如下
//add custom menus
function codex_custom_init() {
register_post_type(
'Jobs', array(
'labels' => array('name' => __( 'Jobs' ), 'singular_name' => __( 'Jobs' ) ),
'public' => true,
'has_archive' => true,
'supports' => array('title', 'editor', 'thumbnail'),
'menu_icon' => 'dashicons-calendar-alt',
'show_in_rest' => 'true'
)
);
}
add_action( 'init', 'codex_custom_init' );
function jobs_create_my_taxonomy() {
register_taxonomy(
'jobs-category',
'jobs',
array(
'label' => __( 'Category' ),
'rewrite' => array( 'slug' => 'jobs-category' ),
'hierarchical' => true,
'show_in_rest' => 'true'
)
);
}
add_action( 'init', 'jobs_create_my_taxonomy' );
我需要在带有类别链接的边栏中显示 cpt 类别。
您可以使用 add_shortcode
和 get_terms
。将 show_category
添加到边栏。
function show_category(){
$jobs_category = get_terms( array(
'taxonomy' => 'jobs-category',
'hide_empty' => false
) );
if ( !empty( $jobs_category ) ) {
$output = '<ul>';
foreach( $jobs_category as $category ) {
$output.= '<li><a href="'.get_term_link( $category ).'">'. esc_attr( $category->name ) .'</a></li>';
}
$output.= '</ul>';
echo $output;
}
}
add_shortcode( 'show_category', 'show_category' );