我正在尝试使用链式选择来选择一个州,然后选择一个有该州的城市。(2个字段)。
以下是我得到的:
首先,我的函数使用get\\u categories()创建菜单。
第一个问题:不知道该为$child放什么,才能让它只显示子类别。
function taxonomy_dropdown($dropID, $exclude, $taxonomy, $parent, $child) {
$args = array(
\'type\' => \'post\',
\'child_of\' => $child,
\'parent\' => $parent,
\'orderby\' => \'name\',
\'order\' => \'ASC\',
\'hide_empty\' => 0,
\'hierarchical\' => 1,
\'exclude\' => $exclude,
\'include\' => \'\',
\'number\' => \'\',
\'taxonomy\' => $taxonomy,
\'pad_counts\' => false
);
$categories = get_categories( $args );
$menu = \'<select name="\'.$dropID.\'" id="\'.$dropID.\'" class="postform">\';
foreach($categories as $category) {
$menu .= \'<option class="" value="\'.$category->name.\'">\'.$category->name.\'</option>\';
}
$menu .= \'</select>\';
echo $menu;
}
在我的插件中,函数的调用方式如下:
<?
taxonomy_dropdown(\'state\',\'\',\'states_category\',\'0\');
taxonomy_dropdown(\'city\',\'\',\'states_category\',\'\',\'1\');
?>
“city”的第二个不起作用,因为上面的问题是,我无法只获取子类别。
所以,一旦我做到这一点,我应该有两个选择,一个显示“州”,一个显示“城市”
这就是我迷路的地方。我想用链子。js公司(http://www.appelsiini.net/projects/chained) 将这两个选择菜单转换为链式选择。
我很确定我已经将它正确地放入了我的插件中:
function includeChained() {
wp_enqueue_script(
\'chained\',
plugins_url( \'/js/chained/chained.min.js\' , __FILE__ ),
array( \'jquery\' )
);
}
add_action( \'wp_enqueue_scripts\', \'includeChained\' );
现在,我完全不知道如何使用jQuery和JavaScript,而不仅仅是最基本的。我尝试了文档中显示的使用基于类的用法:
<script>
$("#state").chained("#city");
</script>
但什么都没发生。