使用Ajax的ACF分类下拉菜单

时间:2018-07-18 10:26:48

标签: ajax dropdown advanced-custom-fields

我有两个使用相同分类法的分类法下拉列表,首先,我正在执行以下操作:

function firstdropdownfilter( $args, $field, $post_id ) {
    $args['parent'] = 0;

    return $args;
}
add_filter( 'acf/fields/taxonomy/query/name=firstdropdwon', 
'firstdropdownfilter', 20, 3 );

第二个下拉列表,它必须受我在第一个下拉列表中选择的形式的“影响”。我正在这样做(来自ACF支持):

JS:

acf.add_filter(
'select2_args',
function( args ) {

    if ( typeof args.ajax.data == 'function' ) {
        var old_data_func = args.ajax.data; // We'll keep this for maximum compatibility, and extend it.

        args.ajax.data = function(term, page) {
            var default_response = old_data_func( term, page ); // Call the old, default function.

            default_response.firstdrpdwn = function() {
                return jQuery('#acf-field_55890984e822f').val();
            };

            return default_response;
        }
    }

    return args;
}
);

PHP:

function seconddropdownfilter( $args, $field, $post_id ) {
    $make = isset($_REQUEST['firstdrpwn']) ? (int) $_REQUEST['firstdrpwn'] : 
    false;

    if ( !$make ) $args['parent'] = -1;
    else $args['parent'] = (int) $make;

    return $args;
}
add_filter( 'acf/fields/taxonomy/query/name=seconddropdown', 
'seconddropdownfilter', 20, 3 );

第一个可以,第二个不起作用.. 我不知道我是否正在使用select2 .. 请帮我 谢谢

0 个答案:

没有答案