好的,首先,我需要你检查一下这个线框,这样你就可以看到我正在努力实现的目标:
到目前为止,我所做的是:
我为每个地址创建了一个自定义的帖子类型我创建了一个分层自定义分类法,“父类别”是州,“子类别”是城市我使用了以下代码来填充第一个select元素:
<select name="states" id="states" class="etc">
<?php $terms = get_terms(\'area\', \'parent=0\');
$count = count($terms);
if ( $count > 0 ){
foreach ( $terms as $term ) {
echo \'<option value="\' . $term->name . \'">\' . $term->name . \'</option>\';
}
}
?>
</select>
因此,以下是我需要知道的:
如何根据在第一个select元素中选择的父元素填充第二个select元素如何使用这些选择元素筛选自定义帖子
最合适的回答,由SO网友:5t3ph 整理而成
您熟悉jQuery吗?您需要将术语发布到管理ajax,并使用响应填充第二个select。
以下是codex文件:http://codex.wordpress.org/AJAX_in_Plugins
你的情况有一个松散的例子:
$first_term = $(\'#states\');
$name = $first_term.children(\'option:selected\').text();
var data = {
action: \'tag_slug\',
slug: $slug
};
var ajaxurl = \'wp-admin/admin-ajax.php\';
$.post(ajaxurl, data, function(response) {
$(\'#city\').empty().append(response);
});
您将以与AJAX响应回调中显示的类似的方式构建选项,以便返回并附加到城市选择中。
请注意上述codex链接的“面向查看器的Ajax”部分,以确保它适用于非loggedin用户。