自定义发布类型-分类下拉菜单?

时间:2010-09-02 作者:NetConstructor.com

我创建了一个自定义帖子类型,并向该自定义帖子类型添加了各种元框/字段。除了一个元素外,其他都工作得很好。。。

我希望有一个下拉菜单供用户选择,而不是使用默认界面来选择分类法。

这里的想法是让管理员能够添加分类法元素,这些元素可以集中管理,但是特定帖子只能与一个分类法关联。

此外,我更愿意将此下拉列表添加到我现有的一个元框中。

是否有人碰巧有任何示例代码可以让我完成此任务?

3 个回复
最合适的回答,由SO网友:NetConstructor.com 整理而成

我在另一篇帖子上回答了这个问题:Saving Taxonomy Terms

SO网友:jaredwilli

我就是这样做的。

<?php $tax = get_object_taxonomies(\'TAXONOMY_NAME\');
    $taxterms = get_terms( $tax, \'orderby=count&offset=1&hide_empty=0&fields=all\' );
?>
<select name=\'tax\' id=\'tax\'>
    <option value=\'\' <?php if (!count( $names )) echo "selected";?>>Select Term</option>
    <?php 
    foreach ( $taxterms as $term ) { 
        echo \'<option value="\' . $term->slug . \'" selected>\' . $term->name . \'</option>\',"\\n"; 
    } ?>
</select>

SO网友:Jan Fabry

我没有这样做的代码,但应该很简单:创建一个名为tax_input[your_taxonomy_name], 其中,如果分类法是分层的(如类别),则值为id,否则为值(如标记)。如果您使用此名称,我认为它会自动保存,无需您提供额外代码。您可以使用wp_dropdown_categories 函数,传递selected 带有应选择的分类术语的选项。创建元框的回调函数获取$post 参数,因此可以从中获取当前分类术语。

要禁用通常添加的元框,可以设置show_ui 在创建分类法时设置为false,或者在绘制元框之前删除它(我认为add_meta_boxes 钩子是个好地方)。它将具有idtagsdiv-your_taxonomy_name 如果不是层次结构,或your_taxonomy_namediv 如果是的话。

结束

相关推荐

我可以将类别Metabox添加到附件吗?

我在用register_taxonomy_for_object_type() 将类别分类字段添加到媒体上载(附件)。我正在使用此代码执行此操作:add_action(\'init\', \'reg_tax\'); function reg_tax() { register_taxonomy_for_object_type(\'category\', \'attachment\'); } 这可以在查看图像时为媒体页面添加一个简单的分类文本字段。我真正想要的是让它显示实