【问题标题】:Sortable Admin Row From ACF Wordpress - (Alphabetical Sort)ACF Wordpress 中的可排序管理行 - (按字母顺序排序)
【发布时间】:2019-06-08 08:25:47
【问题描述】:

我在我的 Wordpress 管理页面中添加了一个自定义列。 这是一个只有文本的文本字段。

当我尝试按字母顺序对其进行排序时,它仅按创建日期排序。

function get_geoCode($post_ID) {
    $geoCode = get_field('geo_code', $post_ID);
    if ($geoCode) {

        return $geoCode;
    }
}
function geo_row($defaults) {
    $defaults['geo_col'] = 'Geo Code';
    return $defaults;
}

function geo_row_content($column_name, $post_ID) {
    if ($column_name == 'geo_col') {
        $geo_code = get_geoCode($post_ID);
        if ($geo_code) {
            echo  $geo_code;
        }
    }
}


  function geoCol_orderby( $query ) {
    if( ! is_admin() )
        return;

    $orderby = $query->get( 'orderby');

    if( 'Geo Code' == $orderby ) {
        $query->set('meta_key','geo_col');
        $query->set('orderby','meta_value');
    }
}
    add_action( 'pre_get_posts', 'geoCol_orderby' );




// CALL THE ABOVE FUNCTIONS +  FILTERS
add_filter('manage_page_posts_columns', 'campaign_id_row', 10);
add_action('manage_page_posts_custom_column', 'campaign_row_content', 10, 
2);

add_filter('manage_page_posts_columns', 'geo_row', 10);
add_filter('manage_edit-page_sortable_columns', 'geo_columns');

function geo_columns( $columns ) {
    $columns['geo_col'] = 'Geo Code';
    return $columns;
}

add_action('manage_page_posts_custom_column', 'geo_row_content', 10, 2);

这会创建地理代码 Col,但如果我运行 geoCol_orderby() 它会破坏站点。大概是因为 func 没有数据可以访问?

我已尝试按 meta_value 和 meta_value_num 以及字母顺序排序。全部破坏网站。

【问题讨论】:

    标签: php wordpress advanced-custom-fields


    【解决方案1】:

    原来是我的元密钥

    $query->set('meta_key','geo_col');
    

    错了,应该是 ACF 上所述的 geo_code

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-01-30
      • 2019-04-05
      • 2012-04-08
      • 2022-01-06
      • 1970-01-01
      相关资源
      最近更新 更多