高级自定义字段foreach循环方向与WordPress相反
问题描述:
我一直在喋喋不休地关注这一项。高级自定义字段foreach循环方向与WordPress相反
背景:
下面的代码工作,并抓住了相关的WordPress后正确的分类项信息。
问题:
ACF正在输出的术语中的最新的顺序到最旧。 WordPress的$ game-> name;按照从最旧到最新的顺序输出术语。
这基本上意味着工具提示不匹配来自get_field('icon')的图像;
$games = get_the_terms(get_the_ID(), 'games')
foreach ($games as $game) {
$term = array_pop($games);
if (get_field('icon', $term)) {
echo '<img src="' . get_field('icon', $term) . '" alt="' . $game->name . '" data-placement="bottom" data-toggle="tooltip" title="' . $game->name . '" />';
}
}
到目前为止我试过:
更新$游戏
$games = get_the_terms(get_the_ID(), 'games', array('order' => 'DESC'))
(无影响)。使用array_reverse颠倒$ games数组的顺序。
建议将非常感激。
答
您似乎是故意在您的代码中使用array_pop
?
只需使用$game
变量从您的foreach循环:
$games = get_the_terms(get_the_ID(), 'games')
foreach ($games as $game) {
//$term = array_pop($games);
if (get_field('icon', $game)) {
echo '<img src="' . get_field('icon', $game) . '" alt="' . $game->name . '" data-placement="bottom" data-toggle="tooltip" title="' . $game->name . '" />';
}
}
不幸的是array_pop()是需要有这方面的工作,我刚刚删除,并没有在循环返回。 ACF文档在他们的例子中也使用了这个 - https://www.advancedcustomfields.com/resources/get-values-from-a-taxonomy-term/ – Nick
@Nick不,你一定是做错了。 'array_pop'只是简单地从数组中删除最后一个元素并返回它:http://php.net/manual/en/function.array-pop.php你是否确定你为'$ game'改变'$ term' foreach块,如上所述?特别是在if条款 – Steve
中,你是绝对正确的,谢谢你突出了这个错误。这一切都工作得很好,非常感谢建议。 – Nick