为什么我的工作自定义分类不在Get_Taxonomies数组中?

时间:2011-09-22 作者:Jeff Sebring

我创建了一个自定义分类法。除了在get_taxonomies 大堆get_terms 函数返回invalid taxonomy 错误

我想使用get_terms 循环浏览双印度淡啤酒,并为选择框打印每个名称。

这是用于注册它的代码。

add_action( \'init\', \'double_ipa_init\' );

function double_ipa_init()  {
    register_taxonomy(
        \'double-ipa\',
        array (
            0 => \'post\',
            1 => \'page\',
        ),
        array(
            \'hierarchical\' => true,
            \'label\' => \'Double IPAs\',
            \'show_ui\' => true,
            \'query_var\' => true,
            \'rewrite\' => array(
                \'slug\' => \'double-ipa\'
            ),
        \'singular_label\' => \'Double IPA\'
        )
    );
}
此代码位于插件中,并且位于多站点上。

提前感谢您的帮助。

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

这个Invalid Taxonomy 函数将引发错误get_terms(). 您正在init 动作钩。因此,您必须致电get_terms() 在相同或更高的挂钩上运行。

请尝试此代码段。它应该显示分类法的所有术语名称,无论术语是否为空。

add_action(\'init\', \'wpse29164_registerTaxonomy\');
function wpse29164_registerTaxonomy() {
    $args = array(
        \'hierarchical\' => true,
        \'label\' => \'Double IPAs\',
        \'show_ui\' => true,
        \'query_var\' => true,
        \'rewrite\' => array(
            \'slug\' => \'double-ipa\'
        ),
        \'singular_label\' => \'Double IPA\'
    );

    register_taxonomy(\'double-ipa\', array(\'post\', \'page\'), $args);

    $terms = get_terms(\'double-ipa\', array(\'hide_empty\' => false));
    foreach ($terms as $term) {
        echo $term->name;
    }
}

SO网友:Janagaran

您希望使用get_terms() 在“Init”操作挂钩之前。

以下是典型请求中运行的挂钩的顺序:

muplugins_loaded
registered_taxonomy
registered_post_type
plugins_loaded
sanitize_comment_cookies
setup_theme
load_textdomain
after_setup_theme
auth_cookie_malformed
auth_cookie_valid
set_current_user
**init**
widgets_init
register_sidebar
wp_register_sidebar_widget
wp_default_scripts
wp_default_stypes
admin_bar_init
add_admin_bar_menus
wp_loaded
parse_request
send_headers
parse_query
pre_get_posts
posts_selection
wp
template_redirect
get_header
wp_head
wp_enqueue_scripts
wp_print_styles
wp_print_scripts

SO网友:Amine Faiz

我以前也遇到过同样的问题,但使用WP_Term_查询帮助我检索到了所需的内容,并尝试了一下,它应该可以工作。更多详细信息请参见:https://developer.wordpress.org/reference/classes/WP_Term_Query/__construct/

结束

相关推荐

List custom taxonomy terms

我正在尝试显示自定义分类法的所有术语(characters), 分类法与自定义帖子类型相关(books).我想做的是显示characters, 比如说我有两个books, 我加了三个characters 致各book, 我想显示所有六个字符。我只想得到名称,而不是链接,或者列表形式,如果我可以得到一组对象或一个更可取的数组。非常感谢。