【问题标题】:wp_dropdown_categories not changing value_field to slugwp_dropdown_categories 没有将 value_field 更改为 slug
【发布时间】:2026-01-26 10:20:04
【问题描述】:

我正在使用 wp_dropdown_categories() 函数来显示类别下拉列表。我正在传递以下数组参数以在选项值中显示分类 slug。

'value_field'      => 'slug',

但我面临与选项值相关的问题。它显示分类 ID 而不是 slug。

$category_args = array(
   'show_option_none' => 'Category',
   'hide_empty'       => 0,
   'hierarchical'     => TRUE,
   'name'             => 'selected_category',
   'taxonomy'         => 'taxonomy_name',
   'value_field'      => 'slug',
);

                    // Display or retrieve the HTML dropdown list of job category
wp_dropdown_categories( $category_args );

对这个问题有任何想法吗?任何帮助将不胜感激。

谢谢

【问题讨论】:

    标签: php wordpress


    【解决方案1】:

    使用这个代码,我已经检查过了,它正在工作

    <?php
        $args = array(
            'show_option_none' => __( 'Select category' ),
            'show_count'       => 1,
            'orderby'          => 'name',
            'echo'             => 0,
             'value_field'      => 'slug',
        );
        ?>
    
        <?php $select  = wp_dropdown_categories( $args ); ?>
        <?php $replace = "<select$1 onchange='return this.form.submit()'>"; ?>
        <?php $select  = preg_replace( '#<select([^>]*)>#', $replace, $select ); ?>
    
        <?php echo $select; ?>
    

    【讨论】:

      【解决方案2】:

      试试这个代码

       <?php
      $category_args = array(
                              'show_option_none' => 'Category',
                             'value_field'      => 'slug',
                              'hide_empty'       => 0,
                             'hierarchical'     => TRUE,
      
                          );
      
                          // Display or retrieve the HTML dropdown list of job category
      wp_dropdown_categories( $category_args ); ?>
      

      我希望这段代码对你有用。

      【讨论】: