2016-05-25 66 views
0

我一直在喋喋不休地關注這一項。高級自定義字段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數組的順序。

建議將非常感激。

回答

1

您似乎是故意在您的代碼中使用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 . '" />'; 
    } 
} 
+0

不幸的是array_pop()是需要有這方面的工作,我剛剛刪除,並沒有在循環返回。 ACF文檔在他們的例子中也使用了這個 - https://www.advancedcustomfields.com/resources/get-values-from-a-taxonomy-term/ – Nick

+0

@Nick不,你一定是做錯了。 'array_pop'只是簡單地從數組中刪除最後一個元素並返回它:http://php.net/manual/en/function.array-pop.php你是否確定你爲'$ game'改變'$ term' foreach塊,如上所述?特別是在if條款 – Steve

+0

中,你是絕對正確的,謝謝你突出了這個錯誤。這一切都工作得很好,非常感謝建議。 – Nick

相關問題