有没有办法将标签选择器从文本输入更改为复选标记?

时间:2016-06-17 作者:nipponese

我使用标签(以一种有纪律的方式)作为黑客来管理多个家长的类别。如果能够使用复选标记UI选择标签就好了,就像选择类别一样。

是否有一种简单的方法可以更改标记选择UI以使用复选标记?

1 个回复
SO网友:Martiniboy

我这样做是为了我的产品标签,所以您只需要将引用更改为product_tagproductpost_tagpost. 您基本上是在对post_tag 等级制的

您需要将其添加到functions.php:

//Make Product Tag Hierarchical
function wd_hierarchical_tags_register() {

    // Maintain the built-in rewrite functionality of WordPress tags  
    global $wp_rewrite;

    $rewrite =  array(
        \'hierarchical\' => false, // Maintains tag permalink structure
        \'slug\'         => get_option(\'tag_base\') ? get_option(\'tag_base\') : \'product_tag\',
        \'with_front\'   => ! get_option(\'tag_base\') || $wp_rewrite->using_index_permalinks(),
        \'ep_mask\'      => EP_TAGS,
    );

    // Redefine tag labels (or leave them the same)    
    $labels = array(
        \'name\'                       => _x( \'Tags\', \'Taxonomy General Name\', \'hierarchical_tags\' ),
        \'singular_name\'              => _x( \'Tag\', \'Taxonomy Singular Name\', \'hierarchical_tags\' ),
        \'menu_name\'                  => __( \'Taxonomy\', \'hierarchical_tags\' ),
        \'all_items\'                  => __( \'All Tags\', \'hierarchical_tags\' ),
        \'parent_item\'                => __( \'Parent Tag\', \'hierarchical_tags\' ),
        \'parent_item_colon\'          => __( \'Parent Tag:\', \'hierarchical_tags\' ),
        \'new_item_name\'              => __( \'New Tag Name\', \'hierarchical_tags\' ),
        \'add_new_item\'               => __( \'Add New Tag\', \'hierarchical_tags\' ),
        \'edit_item\'                  => __( \'Edit Tag\', \'hierarchical_tags\' ),
        \'update_item\'                => __( \'Update Tag\', \'hierarchical_tags\' ),
        \'view_item\'                  => __( \'View Tag\', \'hierarchical_tags\' ),
        \'separate_items_with_commas\' => __( \'Separate tags with commas\', \'hierarchical_tags\' ),
        \'add_or_remove_items\'        => __( \'Add or remove tags\', \'hierarchical_tags\' ),
        \'choose_from_most_used\'      => __( \'Choose from the most used\', \'hierarchical_tags\' ),
        \'popular_items\'              => __( \'Popular Tags\', \'hierarchical_tags\' ),
        \'search_items\'               => __( \'Search Tags\', \'hierarchical_tags\' ),
        \'not_found\'                  => __( \'Not Found\', \'hierarchical_tags\' ),
    );

    // Override structure of built-in WordPress tags    
    register_taxonomy( \'product_tag\', \'product\', array(
        \'hierarchical\'      => true, // Was false, now set to true
        \'query_var\'         => \'product_tag\',
        \'labels\'            => $labels,
        \'rewrite\'           => $rewrite,
        \'public\'            => true,
        \'show_ui\'           => true,
        \'show_admin_column\' => true,
        \'_builtin\'          => true,
    ) );  
}
add_action( \'init\', \'wd_hierarchical_tags_register\' );
这就是它的来源,还有更多的解释:How (and Why) to Convert WordPress Tags from ‘Flat’ to ‘Hierarchical’