2017-12-18 17 views
0

두 가지 사용자 정의 게시물 유형, 국가 및 해변이 있습니다. 국가의 경우 이름 입력란 만 있습니다.WordPress의 사용자 정의 열에 고급 사용자 정의 필드 값을 추가하십시오.

해변의 경우 조금 다릅니다. 필드 이름이 있고 국가 별 유형으로 추가 한 국가도 있습니다.

효과가 있습니다. |

이름 :

Form to add a new beach connected to a country

지금 나는 내 비치 사용자 정의 유형 내에서 사용자 정의 열을 만들려고 해요 국가 | 날짜

해변 게시물 안에 국가 이름을 얻는 방법? 지금

내 코드 : 나는 고급 사용자 정의 필드를 통해 국가 이름을 검색하는 방법을 찾을 수없는

Custom columns for advanced custom fields

:

function add_custom_column_to_beaches($columns) { 
    return array_merge ($columns, array(
    'country' => 'Country' 
)); 
} 

function country_custom_column ($column, $post_id) { 
    switch ($column) { 
    case 'country': 
     echo get_post_meta($post_id, 'country_name', true); 
     break; 
    } 
} 

add_filter ('manage_beaches_posts_columns', 'add_custom_column_to_beaches'); 
add_action ('manage_beaches_posts_custom_column', 'country_custom_column', 10, 2); 

이 지금의 결과입니다. 항상 숫자를 반환합니다. 그리고 print_r 변수를 보여 주려고했을 때 country_name이 없습니다.

감사합니다.

+1

귀하의 ID는 CPT 항목에 속한 ID와 동일합니까? (예 : 국가의 브라질은 ID가 43입니까?) – HdK

+0

좋은 지적! 그리고 네, 그렇습니다! get_field_object라는 고급 사용자 정의 필드의 메소드를 찾습니다. 그것은 일했다!! –

답변

0

내 고급 사용자 지정 필드 설명서를 살펴보면 필자의 접근 방식과 함께 작동하는 방법을 발견했습니다.

function apply_custom_columns ($column) { 
    global $post; 
    switch ($column) { 
    case 'country': 
     $field = get_field_object('country_name', $post->ID); 
     echo $field['value']->post_title; 
     break; 
    } 
} 

누군가 다른 문제가있는 경우 알려 주시기 바랍니다.