从WordPress表单函数中排除类别

时间:2011-10-24 作者:jimilesku

我有这个功能,我需要从我的提交表单中排除类别编号14。在这个函数中有什么方法可以做到这一点吗?

function retrieve_cat_data($byid = false){
    $massive_categories_obj = get_categories(\'hide_empty=0\');

    if($byid):
        $massive_categories = array();  
        foreach ($massive_categories_obj as $massive_cat) {
            if($massive_cat->cat_ID != 1) $massive_categories[$massive_cat->cat_ID] = $massive_cat->cat_ID;
        }
        $categories_tmp = array_unshift($massive_categories, "0" ); 
    else:
        $massive_categories = array();  
        foreach ($massive_categories_obj as $massive_cat) {
            if($massive_cat->cat_ID != 1) $massive_categories[$massive_cat->cat_ID] = $massive_cat->cat_name;
        }
        $categories_tmp = array_unshift($massive_categories, __(\'Select a category:\', \'bo\') );      
    endif;

    return $massive_categories;
}


function retrieve_cat_data_sp( $exclude ){
    $args = array(
        \'hide_empty\' => \'0\',
        \'exclude\' => $exclude
    );
    $massive_categories_obj = get_categories($args);

    $massive_categories = array();  

    foreach ($massive_categories_obj as $massive_cat) { 
        if($massive_cat->cat_ID != 1) $massive_categories[$massive_cat->cat_ID] = $massive_cat->cat_ID;
    }
    $categories_tmp = array_unshift($massive_categories, "0" ); 

    return $massive_categories;
}

1 个回复
最合适的回答,由SO网友:Chip Bennett 整理而成

使用exclude 您的get_categories() 呼叫

e、 g.更改此项:

$massive_categories_obj = get_categories(\'hide_empty=0\');
对此:

$massive_categories_obj = get_categories(\'hide_empty=0&exclude=14\');
请注意exclude 应使用逗号分隔的字符串作为值。

对于第二个函数,您传递的是什么$exclude?

function retrieve_cat_data_sp( $exclude ){
    $args = array(
        \'hide_empty\' => \'0\',
        \'exclude\' => $exclude
    );
    $massive_categories_obj = get_categories($args);
是否传递逗号分隔的字符串、数组或其他内容?

你从中得到了什么get_categories( $args ) 呼叫尝试var_dump( $massive_categories_obj ) 看看它回来了吗?

结束

相关推荐

GET_CATEGORIES返回具有一个类别的数组

我正在一个自定义插件上运行一个查询,以显示所有类别,并将它们放入下拉列表(所选部分位于循环之外),如下所示:<?php $ember_categories = get_categories(); foreach($ember_categories as $ember_category) { echo \'<option value=\"\' . $ember_category->cat_ID . \'\">\' . $ember_category-&