我想得到下一个和以前的职位的基础上,一个特定的类别鼻涕虫。例如,一些帖子可能包含“体育”类别,而另一个帖子包含“科技”类别。
我希望在get_adjacent_post
但它似乎不起作用。看起来它只是想使用slug“category”或自定义分类法,而不是“category”分类法中的slug。
下面是我想做的一个例子:
$adj = get_adjacent_post(true, \'\', true, \'sports\');
我想得到下一个和以前的职位的基础上,一个特定的类别鼻涕虫。例如,一些帖子可能包含“体育”类别,而另一个帖子包含“科技”类别。
我希望在get_adjacent_post
但它似乎不起作用。看起来它只是想使用slug“category”或自定义分类法,而不是“category”分类法中的slug。
下面是我想做的一个例子:
$adj = get_adjacent_post(true, \'\', true, \'sports\');
这里你所说的“鼻涕虫”更恰当地称为术语。这与本地分类法有点混淆,因为它变成了重言式:单个类别是分类法的术语。
所以sports
和tech
是本机术语category
分类学
函数参数在分类级别上操作,而不是术语级别上操作。这就是您需要提供一个分类slug,例如category
, 该分类法中的所有术语都将被视为匹配项。
从参数的角度来看,这里的一个选项是使用$excluded_terms
参数排除除所需的一个术语之外的所有内容。
除此之外,它是一个非常低级的函数,直接生成许多自定义SQL。有大量的过滤器用于操作流程的这一部分,如get_{$adjacent}_post_join
和get_{$adjacent}_post_where
, 但这并不是一件容易调节的事情。
根据the documentation for get_adjacent_post()
, 参数包括:
$in_same_term
(bool)(可选)post是否应位于同一分类术语中
默认值:false
$excluded_terms
(array | string)(可选)排除的术语ID的数组或逗号分隔列表
默认值:\'\'
$previous
(bool)(可选)是否检索以前的帖子
默认值:true
$taxonomy
(字符串)(可选)分类法,如果$in_same_term
是true
.
默认值:\'category\'
这个$taxonomy
参数用于指定要用于选择相邻帖子的分类法(类别、标记或自定义分类法)。
因此,不,您似乎无法指定分类术语(例如,sports
或tech
在您的问题中)。
我在这里也发过其他帖子,但都没有成功我想我需要从根本上推动这一点,因为我似乎无法将结果输出转换为相邻的标签。在查看分类术语归档页面时,我希望在输出上方显示顶级分类名称。使用下面的代码,如果我有一个分类法“Kitchen Features”,slug“Kitchen Features”-并且我在这个分类法的术语档案中(即洗碗机),那么这个代码将输出“Kitchen Features”。我需要的是“厨房特色”。我想我可以通过添加->标签->名称来实现这一点,但显然没有正确地应用它。因此,下面我将显