excluir categoría de la función de formulario de WordPress

24 oct 2011, 18:21:23
Vistas: 295
Votos: 1

Tengo esta función y necesito excluir la categoría número 14 de mi formulario de envío. ¿Hay alguna manera de hacerlo dentro de esta función?

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, __('Selecciona una categoría:', '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;
}
0
Todas las respuestas a la pregunta 1
1

¿Qué tal si usas la clave de matriz exclude en tu llamada a get_categories()?

Por ejemplo, cambia esto:

$massive_categories_obj = get_categories('hide_empty=0');

por esto:

$massive_categories_obj = get_categories('hide_empty=0&exclude=14');

Ten en cuenta que exclude espera un string separado por comas como valor.

Para tu segunda función, ¿qué estás pasando como $exclude?

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

¿Estás pasando un string separado por comas, un array, o algo más?

¿Qué obtienes de esta llamada get_categories( $args )? Prueba con un var_dump( $massive_categories_obj ) para ver qué está devolviendo.

24 oct 2011 18:35:48
Comentarios

Funcionó. Es un formulario de envío, cuando se elige la categoría muestra los botones de carga y envío, si no, estos permanecen ocultos.

jimilesku jimilesku
24 oct 2011 18:53:55