可能您的孩子是空的,如果是空的,默认情况下他们不会出现。您必须设置hide_empty
参数到true
. 另外,我稍微清理了一下数组,首先创建一个,然后在下一行中添加更多参数。保持代码干净。。
$optsetlect = (isset($_REQUEST[\'product_cat\']) && !empty($_REQUEST[\'product_cat\'])) ? $_REQUEST[\'product_cat\'] : 0;
$args = [
\'show_option_all\' => esc_html__( \'All Categories\', \'woocommerce\' ),
\'hierarchical\' => 1,
\'class\' => \'cate-dropdown hidden-xs\',
\'value_field\' => \'slug\',
\'selected\' => $optsetlect,
\'taxonomy\' => \'product_cat\',
\'name\' => \'product_cat\',
\'hide_empty\' => 0,
];
wp_dropdown_categories($args);
echo true
&;
orderby ID
也是默认值,因此无需设置这些。检查
docs 进一步的论证。既然你改变了
value_field
您也可以在此处检查:
selected (整数|字符串)(可选)最初在下拉列表中选择哪个类别ID。值的类型应与“value\\u field”匹配,默认情况下,value\\u field是term\\u id。例如,如果“value\\u field”设置为“slug”,则“selected”将采用slug而不是ID。
也就是说,您的$\\u请求变量包含一个slug,对吗?!