2017-06-14 62 views
0

我一直在試圖解決這個問題幾天了。我希望有人能幫助我。高級自定義字段 - 設置另一篇文章的發佈對象

基本上,我想要做的是:

  1. 在創建後(要約)
  2. 創建另一篇文章(回顧)
  3. 當創建審查
  4. 更新要約的評論後對象關係

我目前擁有的代碼是:

add_action('transition_post_status', 'create_review', 10, 3); 
function create_review($new, $old, $post) { 

    if (($new == 'publish') && ($old == 'draft') && ($post->post_type == 'ebs_offer')) { 

     //when new offer is created 
     //create a review post 
     $review_post = array(
     'post_type' => 'ebs_review', 
     'post_title' => get_field('ebs_brand_name', $post->ID), 
     'post_content' => 'Content Goes Here', 
     'post_status' => 'publish', 
     'post_author' => 1, 
     ); 

     // Insert the post into the database 
     wp_insert_post($review_post); 


    } else { 
     return; 
    } 

     if (($new == 'publish') && ($old == 'draft') && ($post->post_type == 'ebs_review')) { 

     //when new review is created 
     //update the offer post object relationship 


    } else { 
     return; 
    } 


} 

這工作正常,我只是無法弄清楚如何更新提供的後對象關係。我曾試過大量不同的鉤子和函數,然後纔有人說我的代碼沒有顯示我試圖自己解決這個問題 - 我有!

我已經剝離了我的代碼,以便有人可能只是能夠指向正確的方向。

謝謝你們!

回答

0

解決!

對於具有相同問題的人,你可以使用:

update_field($ FIELD_NAME,$後,$後你想做某些更新-ID);

要更新。

傳遞整個$ post數組來更新後期對象。

希望這可以幫助別人。

add_action('transition_post_status', 'create_review', 10, 3); 
function create_review($new, $old, $post) { 

    if (($new == 'publish') && ($old == 'draft') && ($post->post_type == 'ebs_offer')) { 

     //when new offer is created 
     //create a review post 

     global $offer_post_id; 
     $offer_post_id = $post->ID; 

     // Create post object 
     $review_post = array(
     'post_type' => 'ebs_review', 
     'post_title' => get_field('ebs_brand_name', $post->ID), 
     'post_content' => 'Content Goes Here', 
     'post_status' => 'publish', 
     'post_author' => 1, 
     ); 

     // Insert the post into the database 
     wp_insert_post($review_post); 


    } 

    if (($new == 'publish') && ($old == 'new') && ($post->post_type == 'ebs_review')) { 

     //when new offer is created 
     //link the review page to the offer 
     global $offer_post_id; 
     update_field('ebs_review_link', $post, $offer_post_id); 

    } else { 
     return; 
    } 


} 
相關問題