首页 文章

将高级自定义字段值添加到WordPress中的自定义列

提问于
浏览
0

我有两种不同的自定义帖子类型,国家和海滩 . 对于国家,我只有一个名称字段 .

对于海滩,它有点不同,它有一个字段名称,还有我在国家/地区自定义类型中添加的国家/地区的选择 .

它正在发挥作用 .

Form to add a new beach connected to a country

现在我正在尝试在我的海滩自定义类型中创建自定义列:

名称|国家|日期

如何在海滩帖子中获取国名?

我的代码现在:

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);

这是现在的结果:

Custom columns for advanced custom fields

我找不到如何通过高级自定义字段检索国家/地区名称 . 它总是返回一个数字 . 当我尝试使用print_r显示变量时,它没有任何country_name .

谢谢!

1 回答

  • 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;
      }
    }
    

    如果有人有另外的工作,请告诉我!

相关问题