Я хотел бы иметь неиерархическую пользовательскую таксономию, отображенную на добавлять/редактировать администраторском экране сообщений для пользовательского типа сообщения. Очевидно, когда пользовательская таксономия является неиерархической, meta поле, это отображено, подобно тегам - это - текстовое поле с автопредложением.
Однако я больше интересуюсь наличием плоского, неиерархического дисплея таксономии как список терминов флажка. В сущности я хотел бы, это - функциональность для совпадения с категориями, за исключением того, что дочерние условия не могли быть добавлены.
Конечно, это - что-то, что сделали другие разработчики, но нормальные поиски Google не возвратились очень для меня. По-видимому, это было поведением по умолчанию, когда пользовательский taxonomies, были первоначально представлены в v2.8.
Я действительно не ищу сменное решение, однако примеры кода от плагинов были бы прекрасны. При разработке сайтов для клиента часто выгодно позволить им видеть список предустановленных терминов для определенного типа сообщения. Клиенту нужно разрешить добавить дополнительные условия, просто не дополнительные дочерние условия.
Я не уверен, если Вы уже нашли решение для этого, но когда я вчера искал подобный, я нашел это учебное руководство на WPtuts очень полезным. Это использует переключатели, но можно легко изменить его для получения его работающий с флажками также. http://wp.tutsplus.com/tutorials/creative-coding/how-to-use-radio-buttons-with-taxonomies/
Я получил решение (на основе tutsplus учебной ссылки выше), который имеет дело с фактическими флажками здесь для работы: http://wordpress.org/support/topic/display-tag-admin-box-like-categories-without-hierarchy это игнорирует "наиболее используемую" вкладку метаполя, что tutsplus адреса канала, но лично я сохраняю это простым.
Я сделал бы это:
$add_action('add_meta_boxes_my_posttype', 'my_add_meta_boxes');
function my_add_meta_boxes ($post) {
$taxoms = array('my_taxonomy', 'my_second_taxonomy');
foreach ( get_object_taxonomies( $post ) as $tax_name ) {
if( !in_array($tax_name, $taxoms) ) continue;
$taxonomy = get_taxonomy($tax_name);
if ( ! $taxonomy->show_ui )
continue;
$label = $taxonomy->labels->name;
if ( !is_taxonomy_hierarchical($tax_name) ) {
add_meta_box($tax_name . 'div', $label, 'post_categories_meta_box', null, 'side', 'core', array( 'taxonomy' => $tax_name ));
remove_meta_box('tagsdiv-' . $tax_name, null, 'side');
}
}
}
После, до Вас для сокрытия родительского избранного поля формы
Простите моему французскому языку, но почему бы не использовать созданный в hierarchial=true и после этого скрыть всего Родителя Dropbox при помощи администраторской CSS?
#newMYTAX_parent, .taxonomy-MYTAX .term-parent-wrap { display:none; }
.
– bonger
18.02.2015, 07:26