我修改了the_post_navigation $ args,通过将'in_same_term'参数更改为TRUE,在特定的分类术语中导航。它工作得很好。我想要做的是将分类学术语名称添加到'prev_text'和'next_text'参数,以便显示“下一个(分类标准术语)”而不是显示“下一个(分类标准)”的链接:(帖子标题) )”。我认为您需要从页面中获取该术语,将其存储在变量中,就像我在页面顶部显示术语名称一样:
<?php global $post;
$terms = get_the_terms( $post->ID , 'resource_cat' );
foreach ( $terms as $term ) {
echo $term->name;
} ?>
但是,如何在'prev_text'和'next_text'参数中获取该变量?这是我目前的代码:
$args = array(
'prev_text' => '←Previous<span>%title</span>',
'next_text' => 'Next<span>%title</span> →',
'in_same_term' => true,
'taxonomy' => 'resource_cat',
'excluded_terms' => 1,
'screen_reader_text' => 'Post navigation'
);
the_post_navigation($args);
或者这是完全错误的方法吗?
使用以下标准的下一个链接的最终结果示例如下:
CPT=resources (using single-resources.php template)
Taxonomy=resource_cat
Taxonomy Term=Podcasts
期望的结果:下一个播客:“播客名称”
如果有人能用正确的语法帮助我,或者指向一个更好的方向,我们将不胜感激!提前谢谢。
答案 0 :(得分:0)
如果只有一个resource_cat
字词分配给帖子,我认为这样的事情应该有效:
$args = array(
'prev_text' => '← Previous ' . $term->name . ': <span>%title</span>',
'next_text' => 'Next ' . $term->name . ': <span>%title</span> →',
'in_same_term' => true,
'taxonomy' => 'resource_cat',
'excluded_terms' => 1,
'screen_reader_text' => 'Post navigation'
);
the_post_navigation($args);
我在自己的安装上测试了这段代码,它对我有用。
仅供参考:如果为帖子分配了多个术语,导航链接将仅显示页面顶部循环中最后一个术语的名称。