我创建了一个继承默认类别的自定义帖子类型 videoCourse
我正在寻找一种方法来列出我的所有类别,并链接到每个列出特定类别帖子的页面,
例:
分类名为“Sciences”的链接videoCourses/Sciences
答案 0 :(得分:0)
https://codex.wordpress.org/Function_Reference/get_category_link
<?php
// Get the ID of a given category
$category_id = get_cat_ID( 'Category Name' );
// Get the URL of this category
$category_link = get_category_link( $category_id );
?>
<!-- Print a link to this category -->
<a href="<?php echo esc_url( $category_link ); ?>" title="Category Name">Category Name</a>
答案 1 :(得分:0)
我到了谷歌搜索,所以要帮助其他人降落在这里……
使用自定义帖子类型时,您可能必须使用get_terms
或get_the_terms
而不是get_category
等。
在此处查看编解码器:get_terms / get_the_terms(查看那些页面底部的代码片段会有所帮助)。
因此,您可以使用类似的内容(从get_terms
页复制)列出所有带有术语归档链接的术语,并用点号(·)分隔:
<?php
$args = array( 'hide_empty=0' );
$terms = get_terms( 'my_term', $args );
if ( ! empty( $terms ) && ! is_wp_error( $terms ) ) {
$count = count( $terms );
$i = 0;
$term_list = '<p class="my_term-archive">';
foreach ( $terms as $term ) {
$i++;
$term_list .= '<a href="' . esc_url( get_term_link( $term ) ) . '" alt="' . esc_attr( sprintf( __( 'View all post filed under %s', 'my_localization_domain' ), $term->name ) ) . '">' . $term->name . '</a>';
if ( $count != $i ) {
$term_list .= ' · ';
}
else {
$term_list .= '</p>';
}
}
echo $term_list;
}
?>