2016-07-01 94 views
1

我想顯示單個帖子頁面的「相關帖子」,其中包含名爲「屬性」的自定義帖子類型,該類型使用另一個自定義帖子類型的ACF關係字段。顯示基於ACF關係字段的「相關帖子」

其他帖子類型是「聯繫人」,並且在單一屬性帖子類型中,關係字段正在調出。我一直在試圖理解ACF's documentation here,但我無法真正理解爲什麼我的代碼無法正常工作。

我需要顯示基於經紀人的相關屬性。我不完全理解SQL語句和表連接。

$properties = get_posts(array(
     'post_type'   => 'property', // Page Custom Post Type 
     'posts_per_page' => 6, 
     'meta_query'  => array(
      // 'relation' => 'AND', 
      // array(
       'key'  => 'contact', // Field name with 2nd custom post type, 'contact' 
       'value'  => '"' . get_the_ID() . '"', 
       'compare' => 'LIKE' 
      //) 
     ) 
    )); 
+0

謝謝,更新。 – Ishio

回答

0

原因很簡單,這是因爲ACF存儲數組的緣故。他們的文檔雖然適用於他們的情況,但是由於一系列的問題而關閉了我的文檔。

這是爲我工作。

// This is the start of figuring out the array issue 
$contact = get_field('contact'); 
// This showed me the first array 
$contact_array = $contact[0]; 
// This showed me the ACF array and allowed me to return the ID 
$contact_ID = $contact_array->ID; 

$properties = get_posts(array(
    'post_type'   => 'property', 
    'posts_per_page' => 6, 
    'meta_query'  => array(
     'relation'  => 'AND', 
     array(
     'key'   => 'contact', 
     // Had to call the value like this as the array was nested like 
     // a:2:{i:0;s:3:"123";i:1;s:3:"321";} or something. 
     'value' => '"' . $contact_ID . '"', 
     'compare' => 'LIKE' 
    ) 
    ) 
)); 
相關問題