我正在一個Wordpress網站上顯示存儲在自定義帖子類型中的大量項目。每個自定義帖子包括兩個自定義字段(除其他外)「項目名稱」和「項目顏色」。可能會有幾個關於特定「項目名稱」的自定義帖子。Wordpress獲取唯一的自定義字段值
我想創建一個所有項目的圖例(一個關鍵),其中列出了從上面的自定義字段值中獲取的「項目名稱」和「項目顏色」。例如,我有3個項目叫做「香蕉」,顏色是「黃色」,6個叫做「桔子」,顏色是「橙色」,4個叫做「蘋果」,顏色是「綠色」。我的傳奇(鑰匙)應該顯示一個黃色的香蕉,一個橙色的橙色和一個綠色的蘋果。
當然,如果我使用循環它顯示3香蕉,6橙子和4蘋果。如何顯示項目名稱和項目顏色列表?
我看了三種方法,一種是自定義分類法,檢查數組中的重複項並使用GROUP BY
作爲posts_groupby
上的篩選器。
GROUP BY
似乎是正確的方式去,但我不能讓它做任何事情。我得到的最遠是把這個在我的functions.php ...
function sort_legend ($groupby) {
global $wpdb;
$groupby .= "{$wpdb->postmeta}.meta_key = 'Color' ";
return $groupby;
}
...然後把它當成我的周圍Query對象的過濾器...
<?php add_filter('posts_groupby', 'sort_legend'); ?>
<?php if ($myQuery->have_posts()) while ($myQuery->have_posts()) : $myQuery->the_post(); ?>
<?php remove_filter('posts_groupby', 'sort_legend'); ?>
...但我仍然有多個條目。